
Я с удовольствием пользовался MacPorts mysql5
и mysql5-server
. Теперь пришло время обновиться. Я выполнил стандартную процедуру, но сервер не запускается.
sudo port unload mysql5
sudo port install mysql56 mysql56-server mysql_select
sudo port select -set mysql mysql56
sudo port load mysql56-server
Ошибок нет. Когда я запускаю, ps aux | grep sql
я вижу, что он не запущен. Я пробовал установить сокет в my.conf и запустить mysql5_install_db (но это, похоже, относится к старому пакету). Права доступа к файлам выглядят правильными. Журнала ошибок mysql пока нет. Как мне запустить этот сервер?
решение1
Разобрался. Открыл файл LaunchDaemon plist, чтобы увидеть точную команду, которая будет запущена. Запустил его вручную, чтобы увидеть вывод запуска, и в итоге нашел решение:
sudo mysql_install_db5 --datadir=/opt/local/var/db/mysql56
sudo chown -R _mysql:_mysql /opt/local/var/db/mysql56/
sudo mysql_upgrade
Если вам нужна помощь в отслеживании ошибок запуска, откройте Console
и сообщения, содержащие "mysql". В моем случае процесс быстро закрывался, вызывая бесконечный цикл повторных попыток. Чтобы копнуть глубже, откройте этот файл, чтобы увидеть, как он запускается:
/Library/LaunchDaemons/org.macports.mysql56-server.plist
Отсюда мы можем видеть, что это в основном работает
/opt/local/bin/daemondo --label=mysql56-server --start-cmd /opt/local/lib/mysql56/bin/mysqld --user=_mysql
Итак, в командной строке попробуйте
sudo -u _mysql /opt/local/lib/mysql56/bin/mysqld
и посмотрите результат запуска.