代码之家  ›  专栏  ›  技术社区  ›  rtacconi

第244行出现错误1005(HY000):无法创建表“./intranet2/dept.frm”(错误号:150)

  •  5
  • rtacconi  · 技术社区  · 16 年前

    我从生产部门甩了一个数据库:

    mysqldump-u用户名-p intranet2>intranet2.sql

    进入开发服务器:

    mysql-u用户名-p intranet2<intranet2.sql

    我明白了:

    第244行出现错误1005(HY000):无法创建表“./intranet2/dept.frm”(错误号:150)

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

    设置外键检查=0;

    但我还是收到了同样的信息。mysqldump应该能够重新创建一个数据库,否则谁可以信任我的备份?

    1 回复  |  直到 14 年前
        1
  •  3
  •   Pedro Pepê    13 年前

    检查发动机是否为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 */;
    

    祝你好运

    推荐文章