ERROR 1005(HY000)第244行:无法创建表'./intranet2 / dept.frm'(错误号:150)

时间:2009-11-23 16:36:55

标签: mysql mysqldump mysql-error-1005

我从制作中转出了一个数据库:

mysqldump -u user_name -p intranet2> intranet2.sql

进入开发服务器:

mysql -u user_name -p intranet2< intranet2.sql

我得到了这个:

ERROR 1005(HY000)第244行:无法创建表'./intranet2/dept.frm'(错误号:150)

我试着把它放在sql文件的开头:

SET FOREIGN_KEY_CHECKS = 0;

但我仍然收到相同的消息。 mysqldump应该能够重新创建一个数据库,否则谁能相信我的备份?

1 个答案:

答案 0 :(得分:3)

检查引擎是否是InnoDB。

在这种情况下,您可以尝试将这些行放在转储的开头

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;

并且这些结束

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
祝你好运