【问题标题】:Install of MySQL on OSX runs on port 3307在 OSX 上安装 MySQL 在端口 3307 上运行
【发布时间】:2015-11-10 12:41:40
【问题描述】:

我刚刚从最新的 DMG 文件下载了 OSX 10.10.4 (Yosemite) 上已安装的 MySQL。

看起来它在端口 3307 上运行,而不是标准的 3306。 (例如 3306 上的 telnet 到 localhost 超时,3307 上的 telnet 到 localhost 给了我预期的 mysql 提示)

在经历了无数次谷歌搜索之后,尝试用 my.cnf 文件(端口=3306)覆盖它,我有一个解决方法,只是不确定它是否正常。

在 MySQL 下的 System Preferences 中,单击“Automaticall Start MySQl Server on Startup”框。

这会强制它在 /Library/launchDaemons 中生成一个 launchDaemon。

然后我编辑了那个文件并将端口更改为 3306 并重新启动。

现在工作正常。

但是:

  1. 为什么从 3307 开始? (一位技术人员建议 Yosemite 已经安装了 mysql,因此它增加了端口号)
  2. 这对我有什么影响?

【问题讨论】:

  • 我遇到了同样的问题,谢谢! (如果您使用首选项按钮,我也相信这是唯一的方法)
  • 你试过this解决方案吗?
  • 我一直使用Homebrew 打包的那个,而不是官方安装程序。据我所知,它默认为 3306。升级也容易得多,您只需 brew upgrade mysql 而不必下载并运行安装程序。

标签: mysql macos osx-yosemite


【解决方案1】:

默认情况下,mysql 在尝试连接本地主机时选择套接字流。 要更改此行为,您必须更改个人 my.cnf 添加到字符串

protocol=tcp

示例: 1)我看到你的问题:

$ mysql -h localhost -P 33306 -uyyyyyy -pzzzzz ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

2) 我使用以下命令创建 ~/.my.cnf:

[client]
protocol=tcp

并尝试:

$ mysql -h localhost -P 33306 -uyyyyyy -pzzzzz
Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 566582
Server version: 5.5.44-0ubuntu0.14.04.1 (Ubuntu)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

一切正常

【讨论】:

    猜你喜欢
    • 2017-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    • 2020-10-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多