【发布时间】:2018-04-21 11:10:18
【问题描述】:
我在 Centos 6 服务器上从 Mysql 5.5 更新到 8.0,没有将数据库转储到 .sql 文件,我只是将 /var/lib/mysql 目录复制到另一个位置。
现在如果我尝试加载 mysqld 服务,它会崩溃。
天真我删除了 /var/lib/mysql 的所有内容并再次安装了该服务,现在它运行但现在我不知道如何手动将数据库文件导入目录(复制和粘贴文件夹不工作),以便检查数据库和/或修复它。
【问题讨论】:
我在 Centos 6 服务器上从 Mysql 5.5 更新到 8.0,没有将数据库转储到 .sql 文件,我只是将 /var/lib/mysql 目录复制到另一个位置。
现在如果我尝试加载 mysqld 服务,它会崩溃。
天真我删除了 /var/lib/mysql 的所有内容并再次安装了该服务,现在它运行但现在我不知道如何手动将数据库文件导入目录(复制和粘贴文件夹不工作),以便检查数据库和/或修复它。
【问题讨论】:
rysnc 应该已经安装了,但如果不是,你会:
sudo yum install rsync
然后
#make sure mysql isn't running
sudo service mysqld stop
#double check that there is no MySQL PID running
sudo ps aux | grep mysql
#move the new MySQL 8.0 data files out of the way
sudo mv /var/lib/mysql /var/lib/mysql.bak
#copy the original data files back to /var/lib/mysql
#note that the trailing / is required for both paths
sudo rsync -av /path/to/original/mysql/db/files/ /var/lib/mysql/
#change user and group ownership to mysql
sudo chown -R mysql:mysql /var/lib/mysql
#start MySQL
sudo service mysqld start
#run mysql_upgrade, replace {usernamehere} with the actual username
sudo mysql_upgrade -u {usernamehere} -p
更新:
您需要将二进制文件降级到 5.5。一旦 MySQL 再次运行,对每个数据库进行备份,然后按以下顺序升级:
您需要在每次升级后运行mysql_upgrade。
【讨论】:
wp_comments"" and Error在重命名 mysql_index_stats.ibd.
mysql_upgrade了吗?