Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Diferença entre `brew services start mysql` e `mysql.server start`


De acordo com a mensagem de ajuda de brew services , quando você corre
brew services start mysql

ele instala e inicia a fórmula de serviço no login (ou na inicialização se você executar o comando com sudo ). Isso significa que você terá agora um arquivo plist em ~/Library/LaunchAgents (ou em /Library/LaunchDaemons se você executar o comando com sudo ). Para mysql, o arquivo plist é o seguinte:
<?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>homebrew.mxcl.mysql</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/opt/mysql/bin/mysqld_safe</string>
    <string>--bind-address=127.0.0.1</string>
    <string>--datadir=/usr/local/var/mysql</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>WorkingDirectory</key>
  <string>/usr/local/var/mysql</string>
</dict>
</plist> 

significa que por padrão mysqld_safe é chamado com o --bind-address=127.0.0.1 e --datadir=/usr/local/var/mysql opções de linha de comando.

quando você corre
mysql.server start

você executa diretamente o script mysql localizado em /usr/local/bin/mysql.server .

A principal diferença é que com os brew services versão, você executa mysqld_safe que, de acordo com seu man página: