代码之家  ›  专栏  ›  技术社区  ›  ibocon

MacOS High Sierra MySQL错误:设置值时出错

  •  0
  • ibocon  · 技术社区  · 6 年前

    我将OS X升级到High Sierra。

    升级后,我发现一些服务工作不正常,使用MySQL。

    我试着通过

    mysql-u根-p

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

    所以我尝试重启mysql服务

    BREW服务启动MySQL

    Could not find domain for
    Error: Failure while executing; `/bin/launchctl enable gui/503/homebrew.mxcl.mysql` exited with 112.
    

    mysql.server启动

    ERROR! The server quit without updating PID file (/usr/local/var/mysql/mangoui-Mac-mini.local.pid).
    

    /usr/local/var/mysql/mangoui-mac-mini.local.err

    2018-07-27T05:32:37.570411Z 0 [ERROR] [MY-011071] [Server] /usr/local/opt/mysql/bin/mysqld: Error while setting value 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' to 'sql_mode'
    

    有趣的是

    sudo brew服务启动mysql

    指挥工作。

    所以我尝试

    sudo mysql-u根-p

    错误2002(hy000):无法通过socket'/tmp/mysql.sock'(2)连接到本地mysql服务器
    

    仍然会出现同样的错误。

    1 回复  |  直到 5 年前
        1
  •  1
  •   Søren Falch    5 年前

    请注意,BREW最近将MySQL升级到了8.0,这会导致一些东西由于不赞成而中断(在我的例子中是“SQL_模式”)。

    如果您想继续使用8.0,可以查看:

    https://dev.mysql.com/doc/refman/8.0/en/upgrading.html 这将引导你度过难关。

    如果您(例如出于兼容性原因)决定继续使用,例如5.7,您可以这样做,例如:

    > brew services stop mysql
    > brew switch mysql 5.7.21
    > brew services start mysql
    > brew pin mysql # Tell brew to stay on this version 
    

    要查看已安装的版本,可以键入:

    > brew list --versions mysql
    

    祝你好运!希望这有帮助:—)