mysql初始化失败Can‘t find error-message file‘/usr/share/mysql/errmsg.sys

errmsg.sys 是 MySQL 数据库的一个错误信息文件。它是一个二进制文件,存储了 MySQL 服务器可能返回的各种错误消息的定义。这个文件通常会在 MySQL 的安装目录中找到。

errmsg.sys 的作用

  1. 错误消息存储

    • MySQL 在运行过程中遇到错误时,会查找 errmsg.sys 文件以获取对应错误码的详细描述。
    • 这些错误消息会以不同语言的形式存储在 errmsg.sys 中,以支持多语言的错误消息显示。
  2. 本地化支持

    • 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/

解决

相关推荐
忍冬行者几秒前
清理三主三从redis集群的过期key和键值超过10M的key
数据库·redis·缓存
TimberWill5 分钟前
使用Redis队列优化内存队列
数据库·redis·缓存
Knight_AL1 小时前
MySQL 中 UPDATE 语句的执行过程全解析
数据库·mysql
yngsqq1 小时前
兰顿蚂蚁——CAD二次开发
数据库
梁萌2 小时前
ShardingSphere分库分表实战
数据库·mysql·实战·shardingsphere·分库分表
川石课堂软件测试3 小时前
Mysql中触发器使用详详详详详解~
数据库·redis·功能测试·mysql·oracle·单元测试·自动化
鹏说大数据3 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
程序员游老板3 小时前
基于SpringBoot3_vue3_MybatisPlus_Mysql_Maven的社区养老系统/养老院管理系统
java·spring boot·mysql·毕业设计·软件工程·信息与通信·毕设
唯余旧忆3 小时前
【数据写入】达梦数据库(dm8)merge into写入时序数据速度慢的问题处理
数据库
小二·3 小时前
MyBatis基础入门《十四》多租户架构实战:基于 MyBatis 实现 SaaS 系统的动态数据隔离
数据库·架构·mybatis