温馨提示×

Debian MySQL数据如何备份恢复

小樊
60
2025-08-11 22:46:41
栏目: 云计算

备份

  1. 使用mysqldump命令

    mysqldump -u [用户名] -p[密码] [数据库名] > [备份文件名].sql  # 备份指定数据库
    mysqldump -u root -p --all-databases > all_backup.sql  # 备份所有数据库
    

    可选压缩:gzip [备份文件名].sql

  2. 自动化备份(可选)
    通过crontab -e设置定时任务,例如每天凌晨备份:
    0 1 * * * mysqldump -u root -p mydb > /path/backup_$(date +\%F).sql

恢复

  1. 使用备份文件恢复

    sudo systemctl stop mysql  # 停止服务
    mysql -u [用户名] -p[密码] [数据库名] < [备份文件名].sql  # 导入数据
    sudo systemctl start mysql  # 启动服务
    

    若文件压缩,需先解压:gunzip < backup.sql.gz | mysql -u root -p db_name

  2. 使用二进制日志恢复(精确到某时间点)

    # 确认binlog开启:SHOW VARIABLES LIKE 'log_bin';
    mysqlbinlog /var/lib/mysql/mysql-bin.000001 > recovery.sql  # 解析日志
    mysql -u root -p [数据库名] < recovery.sql  # 执行恢复
    ```。  
    
    

注意事项

  • 恢复前建议先备份当前数据。
  • 定期测试备份有效性,确保数据可恢复。
  • 大数据量备份可考虑--single-transaction参数(仅适用于InnoDB)。

0