Ubuntu 17.10 升级到 18.04 将我的 MariaDB 数据库移至文件夹 /var/lib/mysql-10.2 并将 MariaDB 从 10.2 降级到 10.1

Ubuntu 17.10 升级到 18.04 将我的 MariaDB 数据库移至文件夹 /var/lib/mysql-10.2 并将 MariaDB 从 10.2 降级到 10.1

[这更像是一篇操作指南]

Ubuntu 升级到 18.04 的过程中有一个窗口询问我想要对 MariaDB 安装做什么 -- 安装Debian 中的 MariaDB或保留我的安装(工作MariaDB 10.2安装。)我必须选择安装 Debian,这在当时对我来说是有意义的。不幸的是,这会将我的 10.2 数据库锁定(移动)到新位置/var/lib/mysql-10.2。并将我的 MariaDB 安装降级为MariaDB 10.1在 Debian 中就位。不幸的是,只有在这个升级过程之后,我才意识到我必须进行转储/导入才能重新获得对我所有数据的访问权限。如果我得到的只是数据库文件/文件夹结构的副本,那么这并不容易/var/lib/mysql-10.2

现在我的服务器版本(升级到 Ubuntu 18.04 之后)是:10.1.29-MariaDB-6-Ubuntu 18.04

我最终卸载了 10.1 以及与之相关的所有内容

sudo apt-get purge mysql-server* mariadb*
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql
sudo rm -rf /var/log/mysql

重新安装MariaDB 10.2

sudo apt install mariadb-server-10.2

停止 mysql 服务器

sudo systemctl stop mysql

下列的这些方向我将丢失的数据库从/var/lib/mysql-10.2复制回/var/lib/mysql仅缺少数据库文件夹和内容。并将这些文件:、、和替换为ib_buffer_pool来自的原始文件ibdata1ib_logfile0ib_logfile1/var/lib/mysql-10.2

重置文件夹和内容的权限

sudo chown -R mysql:mysql /var/lib/mysql 

一切似乎都按计划进行,但不知何故我无法访问数据。最终让它成功的是以 root 身份运行此命令:

mysqlcheck --all-databases -p

如果你恢复运行,请确保删除innodb_force_recovery = 5

我希望这能帮助陷入同样境地的人。

答案1

如上所述... [这更像是一篇 How-To-Post]

相关内容