老实说,我很困惑,如果使用完全默认安装的 mysql,如果我mysqldump
使用默认参数运行,它会生成一个无法导入另一个完全默认安装的 mysql 的 SQL 文件。据我所知,这与设置max_allowed_packet
和/或net_buffer_length
设置有关。我读了很多关于这方面的文章,并尝试在导出和导入方面对其进行了很多调整,但仍然不起作用。我在导入时不断收到数据包太大的错误。从我读到的所有内容来看,这是我最好的猜测:
mysqldump --net_buffer_length=50000 myschema > giant_file.sql
因为我读过这里那mysqldump
指的是max_allowed_packet
因为net_buffer_length
……呃……无论如何。然后导入
mysql --max_allowed_packet=999999 myschema < giant_file.sql
但这仍然不起作用。我该如何导出/导入数据库???
答案1
您可能必须为 mysqldumps 做出最大的牺牲:绕过扩展的 INSERT。
这使得每一行都出现在其自己的 INSERT 中。
它还增加了 mysqldump 输出的大小。
mysqldump --skip-extended-insert --net_buffer_length=50000 myschema > gigantic_file.sql
试一试 !!!