2015-06-26 4 views
1

Я установил MySQL с помощью homebrew (brew install mysql) для работы с моим Rails-приложением. По завершении я получил довольно подробное руководство по настройке для настройки сервера MySQL, однако в нем отсутствовала информация о том, как настроить MySQL для запуска после загрузки.Auto-Start MySQL на OSX 10.10 Yosemite

Чтобы использовать MySQL, я должен вручную выполнить следующие действия на OSX Terminal:

  • cd . ; /usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe &

Использование инструкции из этого StackOverflow answer, я создал почти идентичный файл, заменив путь установки с моим, но это не сработало, поскольку MySQL не запускался после перезагрузки. Я также заметил, что мне не хватает файла mysqld_safe, как видно из этих инструкций. Я предположил, что эти инструкции не будут работать для меня, поскольку OP там был обновлен, когда я был на новой установке машины/ОС.

Часть инструкции, которые я получил после установки заявил:

Для запуска туздЫ во время загрузки вы должны скопировать Опорно-файлы/mysql.server в нужное место для вашей системы.

Я нашел mysql.server в /usr/local/Cellar/mysql/5.6.25/support-files и я также могу использовать, чтобы запускать, останавливать и проверять состояние MySQL, выполнив /path/to/file/mysql.server с требуемой функцией. Однако я не знаю, где «правильное место» находится в моей системе, как указано в инструкциях.

- Как я могу автоматически запускать MySQL на моем Mac, работающем 10.10 после установки MySQL с помощью варева? Есть ли файл, похожий на rc.local (на Linux), где я могу поставить команду запуска? Любая помощь с этим?

- UPDATE - я нашел mysqld_safe в /usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe и после создания нового .plist файла, как описано в руководстве MySQL Launch Daemon с --user установить в качестве mysql, а также опробованы _mysql, он все еще Безразлично» t начать MySQL после загрузки.

/Library/LaunchDaemons/com.mysql.mysql.plist

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 
"http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
    <dict> 
    <key>KeepAlive</key> 
    <true/> 
    <key>Label</key> 
    <string>com.mysql.mysqld</string> 
    <key>ProgramArguments</key> 
    <array> 
    <string>/usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe</string> 
    <string>--user=mysql</string> 
    </array> 
    </dict> 
</plist> 

Я хотел бы отметить, что любой из следующих команд запуска MySQL следующей загрузки:

  • /usr/local/Cellar/mysql/5.6.25/bin/mysqld_safe &
  • /usr/local/Cellar/mysql/5.6.25/support-files/mysql.server start

ответ

4

Когда я это сделал - заварить Информация MySQL, он отметил, что я могу использовать следующую команду для автоматического запуска MySQL при загрузке -

пер -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents

Я сделал, и mysql автоматически запускался при загрузке на моей OS X 10.10.3 Yosemite

+0

Я пробовал, и это не сработало. Я также вручную обновил файл 'homebrew.mxcl.mysql.plist' с правильным расположением в' mysqld_safe', оставив WorkDirectory & datadir как '/ usr/local/var/mysql' (где хранятся файлы базы данных). - Можете ли вы поделиться информацией о своей настройке, местонахождении MySQL (mysqld_safe) и содержимом вашего файла запуска MySQL в ~/Library/LaunchAgents? – n3rve

+0

@ n3rve Вот соответствующий материал (mysqld, datadir и рабочий каталог) из моего /usr/local/opt/mysql/homebrew.mxcl.mysql.plist '/usr/local/opt/mysql/bin/mysqld_safe '' --datadir =/USR/местные/вар/MySQL '' WorkingDirectory /USR/местные/вар/MySQL '. Файл запуска Mysql в '~/Library/LaunchAgents homebrew.mxcl.mysql.plist' является символической ссылкой на'/usr/local/opt/mysql/homebrew.mxcl.mysql.plist'. Pl. обратите внимание, что я не обновил настройки/файлы после 'brew install mysql'. Просто делал, как упоминалось выше, и предлагал эту информацию. – NRJ

+0

Я уверен, что '~/Library/LaunchAgents' запускаются только при входе в систему, а не в загрузке. – BM5k

0

С, brew info mysql документации, он говорит:

Чтобы запуск программ запуска MySQL сейчас и перезапустить при входе в систему:

brew services start mysql 
0

Если вы когда-либо читали инструкцию заваривания, вы бы вероятно, это знаю. Нажмите «brew services», вы увидите «Интегрирует формулы Homebrew с менеджером запуска OS X. Сервисы могут быть добавлены в/Library/LaunchDaemons или ~/Library/LaunchAgents. В основном, элементы в/Library/LaunchDaemons запускаются при загрузке, а те, ~/Library/LaunchAgent запускаются при входе в систему. При запуске с sudo он работает на /Library/LaunchDaemons, в противном случае он работает с ~/Library/LaunchAgents ". Надеюсь, это поможет.