mysql 如何差异备份_MySQL中完全备份,差异备份,增量备份区别与理解

bc3f9276acf88283a0569b9b9ef9ee92.png

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

1.完全备份

备份所有选定的文件夹,并且不要依靠文件的存档属性来确定要备份的文件。在备份过程中,将清除所有现有标记,并将每个文件标记为已备份。换句话说,清除存档属性。

完整备份是指在特定时间点所有数据或应用程序的完整副本。在实际应用中,磁带用于完全备份整个系统,包括系统和所有数据。这种备份方法的最大优点是,只要使用磁带,就可以恢复丢失的数据。因此,极大地加快了系统或数据的恢复时间。但是,它的缺点是,每个完整备份磁带中的备份数据中有很多重复信息。另外,由于每次需要备份的数据量很大,因此备份需要很长时间。

2,差异备份(差异备份)

备份自上次完整备份以来已更改的数据。在差异备份过程中,仅备份那些已标记的文件和文件夹。它不会清除标记,也就是说,备份后未将其标记为备份文件。换句话说,未清除存档属性。

差异备份是指在完全备份后到差异备份时已添加或修改的文件的备份。还原时,我们只需要还原第一个完整备份和最后一个差异备份。

例如,在星期一,网络管理员通常执行完整的系统备份;在星期二,假设系统中只有一个以上的资产列表,则管理员只需备份此资产列表。下去吧;在星期三,系统中还有另一个产品目录,因此管理

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是MySQL备份脚本的示例,包括完全备份增量备份差异备份完全备份脚本: #!/bin/bash # MySQL full backup script # Set variables BACKUP_DIR="/path/to/backup/dir" DB_USER="your_username" DB_PASS="your_password" DB_NAME="your_database_name" DATE=$(date +"%Y-%m-%d") # Create backup directory if it doesn't exist if [ ! -d "$BACKUP_DIR" ]; then mkdir -p "$BACKUP_DIR" fi # Perform backup mysqldump -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" | gzip > "$BACKUP_DIR/$DB_NAME-$DATE.sql.gz" # Remove backups older than 7 days find "$BACKUP_DIR" -type f -name "*.sql.gz" -mtime +7 -delete 增量备份脚本: #!/bin/bash # MySQL incremental backup script # Set variables BACKUP_DIR="/path/to/backup/dir" DB_USER="your_username" DB_PASS="your_password" DB_NAME="your_database_name" DATE=$(date +"%Y-%m-%d") LAST_BACKUP=$(ls -1t "$BACKUP_DIR"/*.sql.gz 2>/dev/null | head -1) # Create backup directory if it doesn't exist if [ ! -d "$BACKUP_DIR" ]; then mkdir -p "$BACKUP_DIR" fi # Perform backup if [ -z "$LAST_BACKUP" ]; then mysqldump -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" | gzip > "$BACKUP_DIR/$DB_NAME-$DATE.sql.gz" else mysqldump -u "$DB_USER" -p"$DB_PASS" --databases "$DB_NAME" --no-create-info --skip-triggers --single-transaction | gzip > "$BACKUP_DIR/$DB_NAME-$DATE.sql.gz" fi # Remove backups older than 7 days find "$BACKUP_DIR" -type f -name "*.sql.gz" -mtime +7 -delete 差异备份脚本: #!/bin/bash # MySQL differential backup script # Set variables BACKUP_DIR="/path/to/backup/dir" DB_USER="your_username" DB_PASS="your_password" DB_NAME="your_database_name" DATE=$(date +"%Y-%m-%d") LAST_BACKUP=$(ls -1t "$BACKUP_DIR"/*.sql.gz 2>/dev/null | head -1) # Create backup directory if it doesn't exist if [ ! -d "$BACKUP_DIR" ]; then mkdir -p "$BACKUP_DIR" fi # Perform backup if [ -z "$LAST_BACKUP" ]; then mysqldump -u "$DB_USER" -p"$DB_PASS" "$DB_NAME" | gzip > "$BACKUP_DIR/$DB_NAME-$DATE.sql.gz" else mysqldump -u "$DB_USER" -p"$DB_PASS" --databases "$DB_NAME" --no-create-info --skip-triggers --single-transaction --where="update_time >= '$LAST_BACKUP'" | gzip > "$BACKUP_DIR/$DB_NAME-$DATE.sql.gz" fi # Remove backups older than 7 days find "$BACKUP_DIR" -type f -name "*.sql.gz" -mtime +7 -delete 注意:这些脚本仅供参考,您需要根据自己的情况进行修改和测试。建议定期测试备份,并将备份文件存储在安全的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值