执行5GB Wiktionary SQL文件时Navicat卡顿,求命令行解决方案
用MySQL命令行执行大SQL文件的方法
当然可以用命令行执行,而且命令行比Navicat这类GUI工具更适合处理大SQL文件,资源占用更低,不容易卡顿。给你一步步讲操作:
- 打开终端:Windows用命令提示符/PowerShell,Mac/Linux直接打开终端。
- 登录MySQL:输入命令
mysql -u 你的用户名 -p,回车后输入MySQL密码(默认常用用户名是root)。 - 准备目标数据库:如果还没建数据库,先执行
CREATE DATABASE wiktionary;(数据库名字可自定义,比如用wiktionary),然后切换到这个数据库:USE wiktionary;。 - 执行SQL文件:输入
SOURCE /你的SQL文件完整路径/文件名.sql;(Windows路径格式比如C:\downloads\wiktionary_part1.sql),回车后就开始执行了。
或者更高效的方式,不用进入MySQL交互界面,直接在终端执行:mysql -u 你的用户名 -p 数据库名 < /SQL文件完整路径/文件名.sql
回车后输入密码,就会自动导入数据。
另外给你几个优化建议,避免卡顿:
- 执行前先关闭自动提交:在MySQL交互界面里先输入
SET autocommit=0;,执行完所有SQL后再输入COMMIT;,减少频繁提交事务的开销。 - 调整MySQL配置:找到my.cnf(Linux/Mac)或my.ini(Windows),增大
max_allowed_packet值(比如设为256M),避免因数据包过大报错。 - 分割SQL文件时,确保每个文件的语句是完整的,别把一条INSERT或CREATE语句拆成两半,不然会执行失败。
内容的提问来源于stack exchange,提问作者bobsmith76
相关产品推荐
相关产品推荐

