出现 /www/server/mysql/bin/mysqld: Shutdown complete 的解决方法

1. 基本知识

主要补充一些基本知识的拓展

1.1 查找my.cnf目录

查看mysql默认读取my.cnf的目录: mysql --help|grep 'my.cnf'

截图如下:(为了方便查看具体使用的配置文件在哪个路径)

在这里插入图片描述

1.2 配置错误日志

对应还有mysql的日志文件,通过配置在上述路径:/etc/my.cnf

通过配置文件 (my.cnf 或 my.ini),可以指定错误日志文件的位置和文件名,并控制哪些内容会被记录,需在 [mysqld] 部分添加 log-error 选项

[mysqld]
log-error
<think>好的,我现在需要解决用户遇到的MySQL 8.0.26启动错误,具体是MY-010147和MY-013236,提示“too many arguments”以及“data directory unusable”。首先,我要分析可能的原因。 用户提到了错误代码MY-010147和MY-013236,这两个错误通常与MySQL的配置或数据目录有关。根据引用[1],MySQL 8.0可能移除了某些过时的选项,比如--basedir和--datadir,如果用户在启动命令或配置文件中错误地使用了这些选项,可能会导致参数过多的错误。例如,用户可能在my.cnf文件中重复指定了datadir,或者在命令行启动时添加了多余的参数。 接下来,数据目录不可用的问题可能由权限问题引起。MySQL服务需要正确的权限来访问数据目录,特别是在Linux系统下,可能需要检查目录的所有者和权限设置是否正确。此外,数据目录损坏或文件系统错误也可能导致此问题,需要运行fsck等工具检查磁盘。 可能的解决步骤包括:首先检查配置文件my.cnf,确保没有重复或过时的参数;然后验证数据目录的权限和完整性;最后,考虑升级或重新安装MySQL,以修复可能的软件问题。用户还提到引用[2]涉及Linux内核版本,虽然MySQL 8.0应该兼容较新的内核,但可能需要确认系统环境是否符合要求。 需要提醒用户在操作前备份数据,避免数据丢失。如果问题依旧,可能需要查看错误日志获取更多细节,或者尝试初始化新的数据目录进行测试。</think>### MySQL 8.0.26启动错误解决方案 #### 错误背景 当MySQL 8.0.26启动时出现以下错误: - **MY-010147**: `Too many arguments (first extra argument)` - **MY-013236**: `Data directory is unusable` 这些错误通常与**配置参数错误**或**数据目录权限/完整性**问题相关[^1][^2]。 --- ### 逐步解决方案 #### 1. 检查配置文件参数 **问题原因** MySQL 8.0移除了部分过时参数(如`--basedir`、`--datadir`的冗余配置),若在`my.cnf`或启动命令中重复指定参数会触发`MY-010147`错误[^1]。 **操作步骤** - 打开MySQL配置文件(默认路径为`/etc/my.cnf`或`/etc/mysql/my.cnf`)。 - 检查是否有重复的`datadir`或`basedir`参数。 示例正确配置: ```ini [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock ``` - 删除冗余参数后保存文件,重启MySQL: ```bash systemctl restart mysqld ``` --- #### 2. 验证数据目录权限 **问题原因** 数据目录权限错误或所有权问题会导致`MY-013236`错误。 **操作步骤** - 检查数据目录所有者是否为`mysql`用户(默认): ```bash ls -ld /var/lib/mysql ``` 输出应为: ```bash drwxr-x--- 10 mysql mysql 4096 Jul 15 10:00 /var/lib/mysql ``` - 修复权限: ```bash chown -R mysql:mysql /var/lib/mysql chmod 750 /var/lib/mysql ``` --- #### 3. 检查数据目录完整性 **问题原因** 若数据目录损坏或文件系统错误,MySQL无法正常启动。 **操作步骤** - 运行文件系统检查工具: ```bash fsck /dev/[your_mysql_disk_partition] ``` - 尝试修复数据目录(需备份): ```bash mysqld --innodb_force_recovery=1 --datadir=/var/lib/mysql ``` --- #### 4. 升级或重新安装MySQL **问题原因** 若为软件包冲突或版本问题,需更新或重新安装。 **操作步骤** - 卸载旧版本: ```bash apt remove mysql-server ``` - 清除残留配置: ```bash rm -rf /var/lib/mysql ``` - 重新安装MySQL 8.0: ```bash apt install mysql-server-8.0 ``` --- ### 关键注意事项 - **备份数据**:操作前使用`mysqldump`备份数据库。 - **日志分析**:查看错误日志定位具体问题: ```bash tail -n 100 /var/log/mysql/error.log ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农研究僧

你的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值