Ubuntu MariaDB如何进行故障恢复
Ubuntu MariaDB故障恢复可按以下步骤操作,优先从备份恢复,无备份时尝试物理文件恢复或配置修复:
一、有备份时的恢复
-
停止MariaDB服务
sudo systemctl stop mariadb
-
恢复SQL格式备份
mysql -u 用户名 -p 数据库名 < 备份文件.sql
-
恢复.dump格式备份
mysqlimport -u 用户名 -p --local 数据库名 备份文件.dump # 或 mariadb-restore -u 用户名 -p --databases 数据库名 备份文件.dump
-
启动服务并验证
sudo systemctl start mariadb mysql -u 用户名 -p 数据库名 # 检查数据是否恢复
二、无备份时的恢复(谨慎操作)
-
物理文件恢复(需提前备份数据目录)
- 停止服务并备份当前数据目录:
sudo systemctl stop mariadb sudo cp -r /var/lib/mysql /var/lib/mysql_backup
- 用物理备份文件替换损坏文件(如.ibd文件):
sudo cp /path/to/backup/文件名.ibd /var/lib/mysql/ sudo chown mysql:mysql /var/lib/mysql/文件名.ibd sudo chmod 660 /var/lib/mysql/文件名.ibd
- 启动服务并验证:
sudo systemctl start mariadb
- 停止服务并备份当前数据目录:
-
配置文件修复
- 检查
/etc/mysql/my.cnf
权限和路径是否正确,修复后重启服务:sudo chown root:root /etc/mysql/my.cnf sudo systemctl restart mariadb
- 检查
三、其他场景
- 权限问题:确保数据目录属主为
mysql
用户:sudo chown -R mysql:mysql /var/lib/mysql
- 服务启动失败:查看日志
/var/log/mysql/error.log
,根据错误提示修复(如跳过权限检查启动):sudo mysqld_safe --skip-grant-tables &
注意:物理恢复可能导致数据不一致,建议优先通过备份恢复,操作前务必备份当前数据。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!