Greetings向那些准备线程的人表示感谢,感谢您花时间回答这个问题。
我在将MySQL 5.7备份数据库上载到Percona 5.7集群时遇到了问题。
恢复由mysqlfrm命令执行,格式如下。
mysqlfrm -q --user=root '--server=root:password@localhost:3306' --port=3310 /location/of/backup/directory --diagnostic | mysql -B -u username -p'password'
命令的Basic解释:
该命令将.frm文件连接起来,然后将它们输送到要执行的MySQL外壳。
现在..。在上传.frm文件和执行"CREATE“语句时,我注意到查询包含"ROW_FORMAT = 5”。当将备份上载到mysql5.7时,成功地恢复了所有数据,但是当对Percona xtradb 5.7集群执行备份时,出现了语法错误“错误1064”。
This是查询的一个示例:
CREATE TABLE example.test (node_id INT PRIMARY KEY, node_name VARCHAR(30))ENGINE=InnoDB DEFAULT CHARSET=utf8, ROW_FORMAT = 5, COMMENT 'test';
当将ROW_FORMAT =5更改为CompactCompact时,一切都正常工作,并且恢复成功。
现在,对于主要的问题,MySQL 5.7和Percona 5.7在语法之间是否有区别?在执行备份时,.frm文件将ROW_FORMAT变量的值捕获到ROW_FORMAT变量而不是Compact5,这完全正常吗?
发布于 2022-11-16 08:52:03
所以我找到了答案。
看起来,从centos7的yum存储库下载的centos7实用程序包的版本有点问题。
在从官方的MySQL存储库重新下载它之后,我成功地恢复了.frm表。
工作版本是"MySQL实用程序mysqlfrmVersion1.6.5“。
https://dba.stackexchange.com/questions/319707
复制相似问题