美文网首页
mac 解决 mysql 启动报错

mac 解决 mysql 启动报错

作者: 闲睡猫 | 来源:发表于2020-07-13 16:44 被阅读0次

    玄幻问题

    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 对于密码强度有一定要求,过于简单的密码是通不过的

    小结

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

    相关文章

      网友评论

          本文标题:mac 解决 mysql 启动报错

          本文链接:https://www.haomeiwen.com/subject/yefzcktx.html