![MySQL привязывается к порту 3307, а не к порту 3306](https://rvso.com/image/1465824/MySQL%20%D0%BF%D1%80%D0%B8%D0%B2%D1%8F%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D1%82%D1%81%D1%8F%20%D0%BA%20%D0%BF%D0%BE%D1%80%D1%82%D1%83%203307%2C%20%D0%B0%20%D0%BD%D0%B5%20%D0%BA%20%D0%BF%D0%BE%D1%80%D1%82%D1%83%203306.png)
Я использую OS X Yosemite 10.10.5 на Mac Mini конца 2014 года. Это мой сервер разработки. Я только что установил MySQL на эту машину: 'mysql --version' сообщает, что версия - 'mysql Ver 14.14 Distrib 5.6.26, for osx10.8 (x86_64) using EditLine wrapper'. Однако я определенно скачал и установил версию "OS X 10.9" (я только что перепроверил файл DMG).
В любом случае, я пытаюсь заставить продукт слушать порт 3306 как обычно, и у меня возникли некоторые трудности с этим. По умолчанию он, похоже, привязан к порту 3307, даже когда my.cnf выглядит так:
[mysqld]
bind-address = 0.0.0.0
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
(последняя строка уже была в строке по умолчанию в /usr/local/mysql/)
Глядя на запущенный процесс, я вижу, что командная строка (ps ax | grep mysql) имеет вид 3307:
40958 ?? Ss 0:00.38 /usr/local/mysql/bin/mysqld \\
--user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data \\
--plugin-dir=/usr/local/mysql/lib/plugin \\
--log-error=/usr/local/mysql/data/mysqld.local.err \\
--pid-file=/usr/local/mysql/data/mysqld.local.pid --port=3307
(В настоящее время я запускаю и останавливаю его с помощью панели системных настроек MySQL, а не напрямую из командной строки)
Чтобы получить к нему доступ с клиента, мне нужно явно указать порт в командной строке.
$ mysql -u smcphee -h 192.168.x.x -P 3307 -p
Ради интереса я отредактировал my.cnf, указав какой-то другой случайный порт. Сервер все еще привязан к порту 3307. Я не могу найти никаких других my.cnf на диске, которые могли бы его переопределить.
Что здесь происходит?
решение1
Можете ли вы попробовать проверить, существует ли следующий файл на вашем компьютере?
/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
Проверьте, определен ли порт на 3307, если это так, измените его на 3306 и перезапустите службу.
решение2
Это должно быть как-то связано с панелью настроек системы MySQL и способом запуска сервера. Я отключил и удалил панель настроек. Когда я запускаю/останавливаю сервер с помощью 'mysqld_safe' в командной строке, он использует порт, указанный в my.cnf.