mysql8导入数据慢解决
前提是mysql使用innodb引擎
先优化配置文件 :
innodb_buffer_pool_size = 12G
innodb_log_file_size = 1G #只能修改配置文件 生效
innodb_flush_log_at_trx_commit=2
sync_binlog=100000
max_allowed_packet = 1G
net_buffer_length = 1048576wait_timeout = 500
interactive_timeout = 500
max_connections = 1500mysqlx=0
skip-log-bin
skip-name-resolve
重启服务后使用以下命令导入
mysql -u root -p$pwd --max_allowed_packet=1073741824 --net_buffer_length=1048576 dbname < data.sql
此时对比先前两小时导入2G,现在每秒2M到10M,提升很多
如果不能重启,可以偿试在线修改参数
set global max_allowed_packet = 1073741824 ;
show global variables like '%pack%';
set global net_buffer_length = 16384000;
show global variables like '%net%';
set GLOBAL innodb_flush_log_at_trx_commit = 0;
set GLOBAL sync_binlog = 0;
show global variables like '%innodb_log_file_size%'; #只能修改配置文件生效
本文来自博客园,作者:走戏园,转载请注明原文链接:https://www.cnblogs.com/zou-xiyuan/p/16902830.html

浙公网安备 33010602011771号