O servidor Mysql 5.6 via MacPorts não será iniciado

4

Estou feliz em usar o MacPorts ' mysql5 e mysql5-server . Agora é hora de atualizar. Eu segui o procedimento padrão, mas o servidor não inicia.

sudo port unload mysql5
sudo port install mysql56 mysql56-server mysql_select
sudo port select -set mysql mysql56
sudo port load mysql56-server

Sem erros. Quando executo o ps aux | grep sql , vejo que não está em execução. Eu tentei definir o soquete no my.conf e executando mysql5_install_db (mas isso parece específico para o pacote mais antigo). Permissões de arquivo parecem corretas. Ainda não há log de erro no mysql. Como obtenho este servidor iniciado?

    
por Matt S 09.08.2013 / 20:45

1 resposta

5

Descobri isso. Arquivo aberto do LaunchDaemon plist para ver o comando exato que seria executado. Correu isso manualmente para ver a saída de inicialização e, eventualmente, veio com a solução:

sudo mysql_install_db5 --datadir=/opt/local/var/db/mysql56
sudo chown -R _mysql:_mysql /opt/local/var/db/mysql56/
sudo mysql_upgrade

Se você precisar de ajuda para rastrear erros de inicialização, abra Console e mensagens contendo "mysql". No meu caso, o processo estava se fechando rapidamente, causando um loop infinito de novas tentativas. Para aprofundar, abra este arquivo para ver como ele é lançado:

/Library/LaunchDaemons/org.macports.mysql56-server.plist

De lá, podemos ver que basicamente é executado

/opt/local/bin/daemondo --label=mysql56-server --start-cmd /opt/local/lib/mysql56/bin/mysqld --user=_mysql

Então, na linha de comando, tente

sudo -u _mysql /opt/local/lib/mysql56/bin/mysqld

e observe a saída de inicialização.

    
por 09.08.2013 / 21:30