8

Я использую OS X Yosemite 10.10.5 на Mac Mini, выпущенном в конце 2014 года. Это мой сервер разработки. Я только что установил MySQL на эту машину: «mysql --version» сообщает, что версия «mysql Ver 14.14 Distrib 5.6.26, для osx10.8 (x86_64) с использованием оболочки EditLine». Однако я определенно скачал и установил версию "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 на диске, который мог бы переопределить его.

Что здесь происходит?

2 ответа2

10

Можете ли вы попробовать проверить, существует ли следующий файл на вашем компьютере?

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

Проверьте, определен ли порт на 3307, если это правда, измените на 3306 и перезапустите службу.

1

Это должно быть как-то связано с панелью системных настроек MySQL и тем, как она запускает сервер. Я отключил и удалил панель настроек. Когда я запускаю / останавливаю сервер, используя 'mysqld_safe' в командной строке, он использует порт, указанный в my.cnf.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .