mac os Mojave中brew安装的mysql因升级导致无法启动问题的解决

本文分享了一次从MySQL5.7升级到8.0.15后无法启动的问题及解决过程。通过查找错误日志,发现mysql.component表不存在的错误,并在MySQL官方Bug库中找到了解决方案,最终通过停止服务、替换二进制文件、以特定参数启动、执行mysql_upgrade命令等步骤成功解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

估计是手欠,一不小心把mysql5.7升到8.0.15,版本高看着就爽啊。
结果是mysql起不起来了。。。

于是想了各种办法:

  • 办法1:把版本降回去。结果还是不能启动,说的是用到了高版本的文件,需要删除所有的数据重装,这是万万不能接受的。
  • 办法2:看错误日志一个问题一个问题解。结果花了一下午,仍然没有搞定。直到。。。找到这个错误
[ERROR] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we're sending the information to the error-log instead: MY-001146 - Table 'mysql.component' doesn't exist

然后在google上搜“[ERROR] [MY-013129] [Server]”,原来已经有人遇到同样的问题了:

https://bugs.mysql.com/bug.php?id=89267

1. stop 5.7.21
2. swap binaries for 8.0.4
3. start mysql with skip-networking and skip-grant-tables etc.
4. sudo mysql_upgrade --no-defaults $(sudo my_print_defaults client | egrep '^--socket' | head -1)
5. restart mysql

依样画葫芦:

1.brew services stop mysql
2.mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
3.sudo mysql_upgrade --no-defaults $(sudo my_print_defaults client | egrep '^--socket' | head -1)
4.brew services start mysql

问题解决

转载于:https://blog.51cto.com/ustb80/2384166

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值