项目场景:
在使用Navicat时遇到的问题:
- 用Navicat运行一个比较大的.sql文件时报错:[Err] 2006 - MySQL server has gone away
- Navicat运行sql文件出现 [ERR] 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘ 错误原因
- Navicat提示Access violation at address “xxxxxxxxx” in module ‘navicat.exe’Read of address "xxxxxxxxx"
一、用Navicat运行一个比较大的.sql文件时报错:[Err] 2006 - MySQL server has gone away
用Navicat 在本地运行一个比较大的 .sql 文件时报错::
[Err] 2006 - MySQL server has gone away
原因分析:
因为navica本身做了限制 所以导致报错。(可能)
解决方案:
工具--> 服务器监控-->mysql
出现下面页面:选择 变量 ,找到 max_allowed_packect ,修改它的值即可。
二、Navicat运行sql文件出现 [ERR] 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘ 错误原因
报错信息:
[ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'
原因分析
生成转储文件的数据库版本为8.0.22,要导入sql文件的数据库版本为5.6.5,总之就是高版本导入到低版本,引起1273错误
解决方法
打开sql文件,将文件中的所有
utf8mb4_0900_ai_ci替换为utf8_general_ci
utf8mb4替换为utf8
保存后再次运行sql文件,运行成功
三、Navicat提示Access violation at address “xxxxxxxxx” in module ‘navicat.exe’Read of address "xxxxxxxxx"
打开Navicat无论点哪里就开始弹窗,提示错误
原因分析
可能是内存越界,需要重新注册windows的动态链接库。
解决方法
1. 首先“开始”—“cmd”,在打开的dos窗口中运行 (采用这种方法,已解决)
for %1 in (%windir%\system32\*.dll)do regsvr32.exe /s %1
回车运行后,可能需要等待一两分钟,然后,重新在navicat连接数据库,这样就可以了。
拓展:system32是Windows 操作系统的系统文件夹,是操作系统的中枢。system32在计算机C盘Windows文件夹中,其中包含了大量的用于 Windows 的文件。 这里主要用于存储 DLL 文件, 控制面板小程序(.CPL),设备驱动 (.drv),帮助文件 (.hlp 和 .cnt),MS-DOS 工具 (.com),语言支持文件 (.nls),屏幕保护 (.scr),安装信息文件 (.inf)以及其它用于支持, 配置或操作的文件。