mysql导入sql文件过大或连接超时的解决办法,mysqlsql
前段时间出差在现场开发的时候,导入数据库老是出问题。最后发现了一个神奇sql语句交给实施,只要导入出错就把如下语句执行就可以了。至今屡试不爽。
set global max_allowed_packet=100 000 000; set global net_buffer_length=100000; SET GLOBAL interactive_timeout=28800 000; SET GLOBAL wait_timeout=28800000
以上语句的解释:
–max_allowed_packet=XXX 客户端/服务器之间通信的缓存区的最大大小;
–net_buffer_length=XXX TCP/IP和套接字通信缓冲区大小,创建长度达net_buffer_length的行
interactive_timeout = 10; 对后续起的交互链接有效;
wait_timeout 对当前交互链接有效;
=============================================
以上语句主要解决:连接超时,导入的sql文件过大。
sql本质就是文本的sql指令,就是使用数据库引擎来执行逐条导入的,没什么好的办法,一般在50w条数据在2小时内可以导完,看你的机器了,建议在至强机器上跑。
多大?我导入过1G多的,只要操作系统支持,我认为多大文件导入都是一样的,我用的方法的是:
mysql -uroot -p
mysql>use 数据库
mysql>source SQL文件
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。