You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL 8.0.30重启失败求助:缺失errmsg.sys及无效数据目录

MySQL 8.0.30启动失败:errmsg.sys丢失/数据目录无效问题解决步骤

1. 检查并修复errmsg.sys文件问题

  • 先验证文件是否存在:
    ls -l /usr/share/mysql-8.0/errmsg.sys
    
    • 如果文件不存在:说明MySQL安装包不完整,重新安装对应版本的mysql-server包(例如apt install mysql-server-8.0.30或yum install mysql-community-server-8.0.30,根据系统选择)
    • 如果文件存在:检查MySQL运行用户(默认是mysql)的读取权限:
      ls -ld /usr/share/mysql-8.0/
      ls -l /usr/share/mysql-8.0/errmsg.sys
      
      若权限不足,执行以下命令修正:
      chmod +r /usr/share/mysql-8.0/errmsg.sys
      chown -R mysql:mysql /usr/share/mysql-8.0/
      

2. 重置数据目录并重新初始化

因为原/var/lib/mysql/目录存在无效残留,需清理后重新初始化:

  • 停止MySQL相关进程(若服务处于异常状态):
    systemctl stop mysql
    killall mysqld
    
  • 备份现有数据目录(重要,防止数据丢失):
    mv /var/lib/mysql/ /var/lib/mysql_backup/
    
  • 创建新的空数据目录并设置权限:
    mkdir /var/lib/mysql/
    chown -R mysql:mysql /var/lib/mysql/
    chmod 700 /var/lib/mysql/
    
  • 执行初始化命令(指定运行用户):
    mysqld --initialize --console --user=mysql
    
    注意记录控制台输出的临时root密码
  • 启动MySQL服务并重置root密码:
    systemctl start mysql
    mysql -uroot -p
    
    输入临时密码后执行:
    ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
    

3. 验证my.cnf配置正确性

打开MySQL配置文件(通常是/etc/my.cnf或/etc/mysql/my.cnf),确认以下配置项存在且路径正确:

datadir=/var/lib/mysql
lc-messages-dir=/usr/share/mysql-8.0

若缺失则添加,保存后重启MySQL服务。

内容的提问来源于stack exchange,提问作者Rajaram P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 06:25:11