首页主机资讯MariaDB在Ubuntu上如何恢复数据

MariaDB在Ubuntu上如何恢复数据

时间2025-11-07 16:07:04发布访客分类主机资讯浏览1057
导读:1. 通过备份文件恢复(推荐,最安全有效) 若你有MariaDB的备份文件(常见格式为.sql或.dump),可通过以下步骤恢复: SQL格式备份恢复:使用mysql命令直接导入备份文件。例如恢复名为my_database的数据库,命令...

1. 通过备份文件恢复(推荐,最安全有效)
若你有MariaDB的备份文件(常见格式为.sql.dump),可通过以下步骤恢复:

  • SQL格式备份恢复:使用mysql命令直接导入备份文件。例如恢复名为my_database的数据库,命令为:

    mysql -u 用户名 -p 数据库名 <
         备份文件.sql
    

    示例(恢复到my_database,备份文件位于/home/user/my_backup.sql):

    mysql -u root -p my_database <
         /home/user/my_backup.sql
    

    输入密码后,系统会自动执行SQL语句恢复数据。

  • .dump格式备份恢复:需使用mysqlimportmariadb-restore工具。

    • mysqlimport命令(需提前安装mariadb-client):
      mysqlimport -u 用户名 -p --local 数据库名 备份文件.dump
      
      示例:
      mysqlimport -u root -p --local my_database /home/user/my_backup.dump
      
    • mariadb-restore命令(更直观):
      mariadb-restore -u 用户名 -p --databases 数据库名 备份文件.dump
      
      示例:
      mariadb-restore -u root -p --databases my_database /home/user/my_backup.dump
      

    两种工具均会自动解析.dump文件并导入数据。

2. 使用mariabackup工具恢复(官方推荐,支持物理备份)
若你使用mariabackup(MariaDB官方开源备份工具)创建了物理备份,恢复步骤如下:

  • 安装mariabackup(若未安装):
    sudo apt install mariadb-backup
    
  • 准备备份数据:进入备份目录,执行--prepare命令使备份数据可导入:
    mariabackup --prepare --target-dir=/path/to/full_backup
    
  • 停止MariaDB服务
    sudo systemctl stop mariadb
    
  • 恢复数据到数据目录:将准备好的备份数据复制到MariaDB默认数据目录(通常为/var/lib/mysql):
    sudo rsync -aP /path/to/full_backup/ /var/lib/mysql/
    
  • 修正权限:确保数据目录属主为mysql用户:
    sudo chown -R mysql:mysql /var/lib/mysql
    
  • 启动MariaDB服务
    sudo systemctl start mariadb
    
    若需恢复增量备份,需先准备全量备份,再依次准备并合并增量备份。

3. 无备份时的数据恢复(使用extundelete工具,成功率有限)
若未备份且数据文件被误删除,可尝试使用extundelete工具恢复(仅适用于ext3/ext4文件系统):

  • 停止相关服务:立即停止MariaDB及所有可能访问数据文件的服务(如Apache、Nginx),防止新数据覆盖被删除文件。
  • 安装extundelete
    sudo apt install extundelete
    
  • 恢复指定文件:执行以下命令恢复被删除的MariaDB数据文件(如表文件.ibd或数据库目录)。例如恢复/var/lib/mysql/my_database目录下的所有文件:
    sudo extundelete /dev/sdXY --restore-directory /var/lib/mysql/my_database
    
    其中/dev/sdXY是包含MariaDB数据文件的分区(可通过df -h /var/lib/mysql查看)。
  • 恢复后操作:恢复的文件会保存在当前目录的RECOVERED_FILES文件夹中,需将其移回原数据目录并修正权限,再重启MariaDB服务。

注意事项

  • 恢复前务必停止MariaDB服务,避免数据冲突或覆盖;
  • 优先使用备份文件恢复,无备份时尝试数据恢复工具的成功率较低;
  • 定期备份数据(建议使用mariabackup创建物理备份+mysqldump创建逻辑备份),并验证备份完整性;
  • 恢复后检查数据库连接及数据完整性(如登录MySQL执行SHOW DATABASES; SHOW TABLES; )。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: MariaDB在Ubuntu上如何恢复数据
本文地址: https://pptw.com/jishu/745207.html
MariaDB如何在Ubuntu上升级 MariaDB在Ubuntu上如何配置

游客 回复需填写必要信息