errmsg.sys
是 MySQL 数据库的一个错误信息文件。它是一个二进制文件,存储了 MySQL 服务器可能返回的各种错误消息的定义。这个文件通常会在 MySQL 的安装目录中找到。
errmsg.sys
的作用
-
错误消息存储:
- MySQL 在运行过程中遇到错误时,会查找
errmsg.sys
文件以获取对应错误码的详细描述。 - 这些错误消息会以不同语言的形式存储在
errmsg.sys
中,以支持多语言的错误消息显示。
- MySQL 在运行过程中遇到错误时,会查找
-
本地化支持:
errmsg.sys
文件支持多语言环境,根据 MySQL 的配置,错误消息可以以用户所需的语言显示。
errmsg.sys
文件位置
errmsg
.sys
文件通常位于 MySQL 安装目录下的 share
子目录中。例如:
- Linux:
/usr/share/mysql/<language>/errmsg.sys
- Windows:
C:\Program Files\MySQL\MySQL Server <version>\share\<language>\errmsg.sys
其中 <language>
是错误消息文件的语言版本,比如 english
或其他语言。
如果 errmsg.sys
文件丢失,MySQL 可能无法正常显示错误消息
解决办法
检查 lc-messages-dir
是否指向正确路径
从 MySQL 的安装包中重新提取缺失的 errmsg.sys
文件。
在安装路径下查找errmsg.sys文件
find /data/ -name errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/bulgarian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/czech/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/danish/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/dutch/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/english/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/estonian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/french/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/german/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/greek/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/hungarian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/italian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/japanese/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/korean/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/norwegian-ny/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/norwegian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/polish/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/portuguese/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/romanian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/russian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/serbian/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/slovak/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/spanish/errmsg.sys
/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/swedish/errmsg.sys
选择英语版本
根据上面的查找到的errmsg.sys信息,可在my.cnf中配置:
lc-messages-dir=lc-messages-dir=/data/mysql/13306/mysql-5.7.29-linux-glibc2.12-x86_64/share/english/
解决