我需要使用 myisam 表复制一个大型 mysql 数据库。对我来说最快的方法是复制 mysql/data 目录。.MYI 和 .MYD 文件可以顺利复制。但是,复制 .frm 文件会导致 mysql 在我查询数据库时显示错误。:
#1033 - Incorrect information in file: 'mytable.frm'
当我完成复制时,我停止了 mysql 服务器。另外,我确保所有者和权限设置正确。由于上述相同的错误,该repair table
命令也不起作用。我在这里做错了什么?
(一种可能的解决方案是只对数据结构进行 mysqldump,这将是一个快速的过程,然后我只需要复制 .MYI 和 .MYD 文件。但是,我想知道我做错了什么在我走更复杂的路线之前带上副本)
更新
跟进@RickJames 的评论——这里是我在做什么的更详细的解释:
我在 Linux 服务器上使用 cp 命令将文件从一个数据库复制到同一服务器上的另一个数据库。我使用的版本 mysql Ver 14.12 Distrib 5.0.77
不起作用。受@RickJames 评论的启发,我尝试在不同的服务器上执行相同的操作,mysql Ver 14.14 Distrib 5.6.29
并且效果很好。话虽如此,我仍然对为什么它不适用于旧版本很感兴趣