老实说,它让我感到困惑的是,如果我使用默认参数运行mysqldump ,它会生成一个SQL文件,无法导入到另一个完全默认安装的mysql的完全默认安装。 从我能收集到的信息来看,这和max_allowed_packet设置和/或net_buffer_length设置有关。 我已经阅读了一大堆关于这一点,并试图调整它在出口和import方面的一堆方式,但它仍然无法正常工作。 我不断收到数据包太大导入错误。 从我读过的一切,这是我最好的猜测:
mysqldump --net_buffer_length=50000 myschema > giant_file.sql
因为我在这里读到mysqldump指的是max_allowed_packet as net_buffer_length因为…呃…无论如何。 然后导入
mysql --max_allowed_packet=999999 myschema < giant_file.sql
但是,这仍然行不通。 我如何导出/导入数据库?
您可能必须为mysqldumps做出至高无上的牺牲:绕过扩展插入。
这使得每一行都发生在它自己的INSERT中。
它也增加了mysqldump输出的大小。
mysqldump --skip-extended-insert --net_buffer_length=50000 myschema > gigantic_file.sql
试一试 !!!