专栏首页codingmac 解决 mysql 启动报错

mac 解决 mysql 启动报错

玄幻问题

mac 中用 brew 安装 mysql,理想中是这样的:执行一行命令,就可以愉快地使用 mysql

现实却是这样的:当系统曾经安装过 mysql, 用 brew 卸载后再安装新版 mysql 时,可能就会遇到以下的莫名其妙的坑

启动服务

$ brew services start mysql

连接 mysql, 报错如下:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

改用以下命令启动:

$ mysql.server start
Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/long-MacBook-Pro.local.pid).

进入 /usr/local/var/mysql 目录,查看报错,依然不知所云...

百度、谷歌无数,各种方案尝试,看遍无数吐槽,最后解决了,但依然不知其所以然,只能说:这是一个玄学

如果你也遇到此问题,不妨尝试用以下方式:

彻底删除 mysql

kill所有mysql进程

ps -ax | grep mysql 找出相关进程并kill

brew删除mysql

$ brew uninstall -f mysql
$ brew cleanup

删除相关文件

# 将 Cellar 目录下相关的 mysql 目录都删除
$ rm -rf /usr/local/Cellar/mysql
$ sudo rm /usr/local/mysql
$ sudo rm -rf /usr/local/var/mysql
$ sudo rm -rf /usr/local/mysql*
$ sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
$ sudo rm -rf /Library/StartupItems/MySQLCOM
$ sudo rm -rf /Library/PreferencePanes/My*

解除上版本的mysql自动登录

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

删除上个版本的配置

$ rm -rf ~/Library/PreferencePanes/My*
$ sudo rm -rf /Library/Receipts/mysql*
$ sudo rm -rf /Library/Receipts/MySQL*
$ sudo rm -rf /private/var/db/receipts/*mysql*
$ sudo rm -f /etc/my.cnf

如果存在此文件 /etc/hostconfigMYSQLCOM=-YES- 这一行删除

重启电脑,确保所有mysql相关的进程文件都被清除干净

重新安装 mysql

$ brew install mysql

一键轻松安装。默认情况下,root用户不需要密码即可登录

为mysql设置root密码:

$ mysql_secure_installation

按提示输入 root 密码,mysql8 对于密码强度有一定要求,过于简单的密码是通不过的

小结

如果经过以上操作还解决不了,只能祝福你了,大兄弟,努力吧...

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • centos7修改mysql数据存储目录

    随着数据量的增长,mysql数据所占的空间会越来越大,而默认情况下mysql数据盘空间可能不够,这时候,就需要修改存储路径

    章鱼喵
  • 使用sqltools让sublime text成为数据库的客户端

    章鱼喵
  • mycli--让你惊艳的mysql客户端

    章鱼喵
  • MySQL5.7 关于在Windows安装的相关笔记

    Eller
  • centos下完全卸载mysql

    yum方式安装的mysql 1、yum remove mysql mysql-server mysql-libs compat-mysql51 2...

    似水的流年
  • ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    使用如下方法即可解决,本人已验证可行。 #1.停止mysql数据库 /etc/init.d/mysqld stop #2.执行如下命令 mysqld_safe...

    用户1148881
  • 【防止被脱裤】如何在服务器上设置一个安全的 MySQL

    在进行真正的 mysql 部署之前,我们不妨先来大致了解下,在实际入侵过程中,仅仅利用mysql,我们到底能干些什么,了解了这些最基本的点之后,我们再进行针对性...

    HACK学习
  • centos下完全卸载mysql

    1、yum remove mysql mysql-server mysql-libs compat-mysql51

    似水的流年
  • linux下安装mysql5.7步骤

    链接:https://pan.baidu.com/s/1HyVFBJLlQPKGMOyXpao0cw 提取码:q2a6 下载完成之后通过 winscp 工具...

    萌萌哒的瓤瓤
  • MySQL安装

    石的三次方

扫码关注云+社区

领取腾讯云代金券