如何将SQL文本文件转为SQL脚本?解决MySQL Workbench导入异常
解决旧版MySQL Workbench导出SQL文件导入新版的编码/空库问题
看起来你遇到的问题大概率是旧版Workbench导出时额外写入了二进制空字节(就是你在Notepad++里看到的[NULL]字符),导致新版Workbench读取文件时解析出错——要么识别不了编码,要么直接跳过了实际的数据内容。下面给你几个实操性强的解决办法:
方法1:用Notepad++清理空字节并重新保存
- 把你的SQL文件打开到Notepad++里
- 按下
Ctrl+H打开替换窗口 - 在「查找目标」框里输入
\x00(这是匹配空字节的正则表达式) - 「替换为」框留空,点击「全部替换」
- 替换完成后,选择顶部菜单栏的「编码」→「UTF-8」(如果你的数据库用的是其他编码,选对应项即可)重新保存文件
- 再用新版MySQL Workbench尝试导入
方法2:用命令行mysql客户端导入(绕过图形界面的解析bug)
如果Workbench的图形界面还是抽风,试试更稳定的命令行方式:
mysql -u 你的用户名 -p 目标数据库名 < 清理后的SQL文件完整路径
输入命令后按提示输入数据库密码就行,命令行的解析逻辑通常比图形界面更容错,能避开Workbench的编码识别问题。
方法3:调整旧版Workbench的导出设置(避免后续再踩坑)
如果之后还要从旧版Workbench导出数据,记得调整这两个设置:
- 导出SQL脚本时,在编码选项里明确选择
UTF-8(别选带BOM的或者系统默认编码) - 如果不需要导出二进制数据,取消勾选「包含二进制数据」这类选项,减少冗余内容
你已经确认文件没损坏,清理掉开头的空字节后,应该就能看到正常的SQL语句了,导入自然也能成功。
内容的提问来源于stack exchange,提问作者Astitva S.
相关产品推荐
相关产品推荐

