更新失败后如何恢复 MariaDB 数据库?

更新失败后如何恢复 MariaDB 数据库?

由于更新失败,我的 VPS 系统现在坏了。我只能使用救援模式访问我的文件。那么,MariaDB 将其 .sql 文件存储在哪里?这样我就可以进行备份。

更新是由我的 vps 提供商进行的。他们没有告诉我他们会更新我的系统。我上次备份是在几天前。我的 VPS 上的网站仍在开发中,所以我每天都会进行更改。

答案1

谷歌不知何故已经知道了这一点第一个结果搜索mariadb file location

数据目录位置由变量控制datadir。查看/etc/mysql/my.cnf文件以查看 MariaDB 安装配置为存储数据的位置。默认是,/var/lib/mysql但它经常更改,例如,如果您使用 RAID 阵列。

答案2

世界上没有哪个数据库的数据是以.sql文件形式存在的。它们使用高度优化的二进制格式。大多数情况下是/var/lib/mysql,但这很大程度上取决于您的实际分布,甚至取决于您的服务器环境。

通过使用数据库进程命令询问其列表,您可以轻松找出实际数据库的位置。您可以通过或命令lsof -p <pid>找出其 pid 。topps uxa

但这对你的情况没有帮助。你需要恢复数据库:

  1. 以救援模式启动数据库,
  2. mysqldump -A
  3. 停止数据库,
  4. 删除(或保存以供以后更深入的分析/恢复)损坏的数据库文件,
  5. 重新初始化您的数据库,并将所有内容导回。

此后,您的数据库将正常工作,但部分数据可能会丢失。将实际但已恢复且部分损坏的数据与您的备份合并是一件“有趣”的事情 :-) 祝您好运 :-)

相关内容