mysql - 移动二进制数据库文件夹会导致 innodb 表出现问题

标签 mysql innodb myisam

所以我在数据库上混合了 myisam 和 innodb 表。 (它是一个相当大的db 30gb) 我将数据库的文件夹从一台服务器复制到下一台服务器 /var/lib/mysql/databasename 好吧,myisam 表正在打开,列出了 innodb 表,但是当我单击左侧选项卡(phpmyadmin)上的任何表时,我收到此错误:#1146 - 表“databasename.users”不存在 这将用于用户表。其他 innodb 表也有同样的问题。 我想知道如何解决这个问题。 我直接通过 ssh 以 root 身份登录 mysql,当我这样做时: SHOW TABLES; 表users和其他innodb表都被列出。当我执行SHOW COLUMNS FROM users; 我得到:

mysql> show columns from article;
ERROR 1146 (42S02): Table 'sitecontent.article' doesn't exist

请问有什么想法吗? (问题仅存在于 innodb 表中!)

最佳答案

当MySQL返回表'sitecontent.article'不存在时,意味着InnoDB在字典中找不到表sitecontent.article的任何记录。这意味着 ibdata1 (存储 InnoDB 字典的位置)对于您的数据库来说是外部的。它一定是在通往新服务器的途中丢失的。

关于mysql - 移动二进制数据库文件夹会导致 innodb 表出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26786527/

相关文章:

mysql - 将另一个表导入 MySQL 数据库中的列。获取错误 `TABLE IS FULL`

javascript - 使用链接 onClick() 切换传递给函数的值以对数据库结果顺序 ASC 或 DESC 进行排序

mysql - 如何使用MYSQL查询将客户分为4个等级

MySQL 自动增量 InnoDB 类似 MyISAM

mysql - 在 MySQL 中更改表引擎

mysql - 在子查询中使用同一张表的 UPDATE 语句

mysql - 带有主元的 SUM 来计算总分

php - 带有日期和天数的查询之间的 SQL 日期

python - Mysql 不再使用 peewee 作为 Django 中的第二个数据库

mysql - MySQL InnoDB 数据库可以有外列唯一性约束吗?