分类: Navicat for MySQL 12
-
Navicat 激活失败,提示达到激活次数上限。由于原系统已重装无法取消激活,尝试查看 Navicat 16 for MySQL 许可证密钥,但在 Navicat 12 for MySQL 中注册时显示密钥有误。卸载 Navicat 12 后新安装 Navicat 16 for MySQL,最终软件成功激活。
-
在修改表字段类型的 PHP 实现中,发现在 Navicat for MySQL 中查看 DDL 未显示变化。即使关闭连接或数据库后重新打开,结果依然不变。最终关闭并重新启动 Navicat for MySQL 后,DDL 才更新并显示出变更。
-
在 MySQL 5.7 中清空包含 300 多万条记录的表时,当剩余记录达到 200 多万时系统提示 1206 错误,表明锁数量超过了锁表大小。文章参考相关资料,通过编辑 Windows 系统下的 my.ini 配置文件,将 innodb_buffer_pool_size 变量设置为较高值。由于重启服务时遇到错误 1053,最终选择重启计算机。再次执行清空表操作后,问题解决,操作成功完成。
-
在 Navicat for MySQL 中将表从 5.7 版本数据库复制至 8.0 版本时,因包含默认时间为 0000-00-00 00:00:00 的数据而报错 1292。尝试在 Homestead 配置中禁用 MySQL 8 无果后,对比两个版本的 sql_mode 发现 8.0 默认启用了 NO_ZERO_IN_DATE 和 NO_ZERO_DATE。通过修改目标数据库的 sql_mode,移除上述两项配置并重新连接,再次执行复制操作成功解决了该问题。
-
在 MySQL 5.7 中使用 LIKE 语句搜索包含反斜杠的数据时,直接使用单反斜杠无法匹配目标结果,需要使用双反斜杠进行转义。这是因为 MySQL 字符串解析器和模式匹配过程会先后各剥离一次转义字符,导致最终只剩下一个反斜杠进行匹配,因此必须在 SQL 语句中写入四个反斜杠才能成功查到以 layouts 开头且包含反斜杠的记录。
-
在 Navicat for MySQL 中导入约 35MB 的 SQL 文件时,执行报错 2006 – MySQL server has gone away。经排查,该问题源于 MySQL 配置文件中 max_allowed_packet 的默认设置过低。通过在 my.ini 配置文件中将该参数的值修改为 40M,并重启 MySQL 服务,再次尝试导入文件后,导入成功且不再报错。
-
本文记录了在 Yii 2.0 中使用 like 操作符查找反斜杠时结果为空的问题。经排查,在 MySQL 5.7.19 版本下,当字段排序规则为 utf8mb4_unicode_ci 时,需在 SQL 中多增加一根反斜杠才能查出数据。对比测试 utf8mb4_general_ci 排序规则则无此现象。查阅官方文档得知这是特定版本下 utf8mb4_unicode_ci 的已知 Bug,该问题在 MySQL 8.0.18 中已修复。
-
针对Navicat连接阿里云RDS MySQL实例失败的问题,文章记录了申请外网地址后遇到的连接超时与访问权限错误处理过程。通过搜索获取当前公网网段并在RDS管理控制台数据安全性中设置白名单分组,解决了连接超时问题;随后将用户名从root修改为其他有效账户,最终成功建立连接并提示外网连接存在安全风险。
-
本文针对产品部署时初始化数据的场景,介绍了如何在 MySQL 的 SQL 文件中定义与使用变量。由于多条 SQL 语句的执行依赖于前序语句生成的主键 ID,文章演示了通过变量传递参数的具体 SQL 写法,并记录了脚本运行前后的数据库表状态。最终验证显示脚本运行成功,各表中的记录 ID 值均符合预期,实现了数据的正确初始化。
-
Navicat for MySQL 不支持直接编辑数据库名,文章通过先创建新数据库,再将原数据库的结构与数据导出为 SQL 文件并导入至新数据库,最后删除旧数据库的方式,实现了数据库重命名的操作,完成了新旧数据库结构与数据的迁移。
