mysql系统级文件损坏修复

今天生成上的mysql突然报ERROR Can't find messagefile '/usr/share/errmsg.sys' 可能系统文件有损坏,进行排查后文件内容正常、权限正常、配置正常,最终使用重装mysql-community-common进行恢复

详细说明:

sudo yum reinstall mysql-community-common 只是重新安装 MySQL 的公共文件包,不会影响您的 MySQL 数据库数据。

哪些文件会被覆盖:

bash 复制代码
# mysql-community-common 包包含的主要是共享文件:
- /usr/share/mysql/*                  # 共享文件
- /usr/share/errmsg.sys               # 错误消息文件
- /usr/share/mysql/charsets/          # 字符集文件
- /usr/share/mysql/english/           # 英语错误消息
- 配置文件模板
- 系统服务文件

哪些文件不会被影响:

bash 复制代码
# 不会被覆盖的文件:
- /var/lib/mysql/*                     # 数据文件(最重要!)
- /etc/my.cnf                          # 主配置文件
- /etc/my.cnf.d/*                      # 配置片段
- 现有的数据库文件
- 用户账户和权限
- 日志文件(除了可能的重置权限)

安全操作建议:

1. 先备份以防万一(良好习惯)

bash 复制代码
# 备份MySQL配置
sudo cp -r /etc/my.cnf /etc/my.cnf.backup
sudo cp -r /etc/my.cnf.d/ /etc/my.cnf.d.backup/

# 检查数据目录位置
mysql -e "SHOW VARIABLES LIKE 'datadir';"
# 数据通常在 /var/lib/mysql

2. 重新安装命令

bash 复制代码
# 重新安装common包
sudo yum reinstall mysql-community-common

# 如果需要,也可以重新安装客户端和服务器(如果需要修复其他问题)
# sudo yum reinstall mysql-community-server mysql-community-client

3. 重新安装后的操作

bash 复制代码
# 重启MySQL服务
sudo systemctl restart mysqld

# 检查服务状态
sudo systemctl status mysqld

# 验证数据是否还在
mysql -e "SHOW DATABASES;"

您的具体情况判断:

您的错误是找不到 errmsg.sys 文件,重新安装 mysql-community-common 是最合适的解决方案,因为:

  1. 这个包专门包含这个文件
  2. 不会影响数据库数据
  3. 会保留现有配置
  4. 是最官方的修复方式

建议操作步骤:

bash 复制代码
# 1. 停止MySQL服务(可选,但建议)
sudo systemctl stop mysqld

# 2. 重新安装common包
sudo yum reinstall mysql-community-common

# 3. 启动MySQL服务
sudo systemctl start mysqld

# 4. 验证问题是否解决
sudo tail -f /var/log/mysqld.log

注意: 如果您的MySQL是通过其他方式安装的(如源码编译、docker等),重新安装yum包可能不会解决问题。请先确认安装方式:

bash 复制代码
# 查看MySQL安装来源
rpm -qa | grep mysql
# 或
which mysqld

总的来说,可以放心执行 sudo yum reinstall mysql-community-common,您的数据是安全的。

相关推荐
心梦缘-雪雁11 小时前
SQL Server 查询数据存在哪个表里
数据库
lusklusklusk12 小时前
Python 巡检脚本:进程运行状态、数据库写入时效检查及邮件通知与告警
数据库·python·oracle
GeW12 小时前
产业新优势基础软件的人才底盘,从Linux与数据库开始
linux·数据库
SelectDB12 小时前
Doris Arrow Flight SQL 高速读取协议实战:与 Snowflake 客户端取数链路对照
大数据·数据库·数据分析
曼岛_12 小时前
[图解密码学]第4章 古典密码
java·数据库·密码学
瀚高PG实验室13 小时前
HGDB V9.0.5 .pgpass 免密登录提示 IsEncryptNon-base64 encoding 警告处理
数据库·postgresql·瀚高数据库
龙腾AI白云13 小时前
大模型检索增强生成(RAG)的技术原理与架构设计
数据库·python·机器学习·知识图谱
KaiwuDB14 小时前
KaiwuDB 运维实战06:数据库备份与恢复:从理论到实战
运维·数据库·时序数据库·kaiwudb
数字新视界14 小时前
空调控制器AIRC800的智能化管理与应用实践
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
学IT的周星星15 小时前
LangGraph:用「流程图」的方式编排 Agent
数据库·人工智能·大模型·llm·流程图·agent