>데이터 베이스 >MySQL 튜토리얼 >Mysqldump导入数据库很慢的解决办法

Mysqldump导入数据库很慢的解决办法

WBOY
WBOY원래의
2016-06-07 14:53:061402검색

1、MySQLdump导出的SQL语句在导入到其他数据库的时候会相当慢,甚至几十秒才处理一条SQL;在反复测试后,发现有两个参数会影响导入的速度; --max_allowed_packet=***** 客户端/服务器之间通信的缓存区的最大大小; --net_buffer_length=**** TCP/IP和套接字

1、MySQLdump导出的SQL语句在导入到其他数据库的时候会相当慢,甚至几十秒才处理一条SQL;在反复测试后,发现有两个参数会影响导入的速度;

                --max_allowed_packet=*****           客户端/服务器之间通信的缓存区的最大大小;
                --net_buffer_length=****                 TCP/IP和套接字通信缓冲区大小,创建长度达net_buffer_length的行。


    在导出的时候,使用-e选项设定上面两个值,需要注意的是max_allowed_packet 和 net_buffer_length的导出值不能比目标数据库的值大;

    参看数据库的参数值,使用如下命令;

mysql> show variables like 'max_allowed_packet';

wKioL1QjtUrxL8TxAACw7mOJ6Rs849.jpg

mysql> show variables like 'net_buffer_length';

wKioL1QjtVrCLTQdAACTdJGs7lw271.jpg


参照查询到的目标数据参数,导出数据;

# mysqldump -uroot -p*** 原数据库 -e --max_allowed_packet=4194304 --net_buffer_length=16384 > file.sql

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.