mysql导入大sql(比如10GB的sql文件)
首先改一下配置文件
在你的安装mysql目录下找到my.ini文件,加上下面的配置,优化速度
max_allowed_packet = 1024M
autocommit = 0
innodb_flush_log_at_trx_commit = 2
# 以下可选,优化性能
innodb_buffer_pool_size=4G
max_connections=100
wait_timeout = 86400
interactive_timeout = 86400
net_read_timeout = 7200
net_write_timeout = 7200
明确sql文件编码
首先你要知道自己的sql文件是什么编码,比如utf-8或者GBK
文件太大使用记事本或者编辑器打开的话,可能会打不开,使用命令查看
如果你是windows,希望你用git bash这个命令行否则会报错
file -i 你的sql文件(因为我在sql文件打开的git bash所以不需要指定路径,如果你不是的话需要指定路径比如E:/A.sql),使用左斜杠
$ file -i A.sql
shiqu.sql: text/plain; charset=utf-8
开始导入
找到你的mysql安装路径的bin下打开cmd
-P后面跟你的mysql启动的端口 ,一定要指定你的编码,上面使用命令查看了,不然可能会报错
–force 你的数据库名
后面会要求你输入密码,然后等着就可以了
mysql -u root -p -P 3307 --default-character-set=utf8 --force qiheyehua < E:/zhiqu/A.sql