以下是我使用mysqldump备份数据库的开关:
/usr/bin/mysqldump -u **** --password=**** --single-transaction --database **** > /filepath/filename.sql
我使用windows(服务器是linux)导入我的本地数据库:
mysql -u root
use databasename
source c:/filepath/filename.sql
当我比较服务器数据库和本地,innodb表缺失时,下面是'show engines;'的结果在本地数据库:
答案 0 :(得分:0)
可能是--single-transaction
选项。你在转储时是否有可能改变表格?如果是这样,alter table
将在交易之外完成。它将创建一个临时表,删除原始表并重命名临时表。由于原始表“已消失”,因此不会将其放入转储文件中。
您可以尝试使用--lock-tables,看看是否有效。
答案 1 :(得分:0)
我最后通过完全擦除本地数据库然后从备份重新加载数据库来解决这个问题,不知道为什么本地数据库没有显示innodb表但是它已经修复了