在OSX上安装MySQL在端口3307上运行

时间:2015-08-17 19:04:21

标签: mysql macos osx-yosemite

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

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

经历了这种无聊的谷歌搜索,试图用my.cnf文件覆盖它(端口= 3306),我有一个解决方法,只是不确定它是否理智。

在MySQL下的“系统偏好设置”中,单击“启动时自动启动MySQl服务器”框。

这迫使它在/ Library / launchDaemons中生成launchDaemon。

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

现在工作正常。

可是:

  1. 为什么从3307开始呢? (一个技术人员建议Yosemite已经安装了mysql,因此它增加了端口号)
  2. 将来怎么会咬我?

1 个答案:

答案 0 :(得分:0)

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

protocol=tcp

实施例: 1)我看到你的问题:

$ mysql -h localhost -P 33306 -uyyyyyy -pzzzzz ERROR 2002(HY000):无法通过socket' /var/run/mysqld/mysqld.sock'连接到本地MySQL服务器; (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> 

一切正常