Para mim, a solução foi substituir / corrigir o diretório de dados em / etc / my / cnf.
Eu construí o MySQL 5.5.27 a partir da fonte com as instruções fornecidas no arquivo leia-me:
# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> cmake .
shell> make
shell> make install
# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
# Next command is optional
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server
mysqld_safe terminou automaticamente sem explicação. A execução /etc/init.d/mysql.server start
resultou no erro:
"O servidor saiu sem atualizar o arquivo PID"
Notei algo estranho nas instruções de instalação. A propriedade foi alterada para mysql no diretório "data", mas não para "var"; isso é incomum, porque durante anos tive que garantir que o diretório var fosse gravável no mysql. Então eu corri manualmente chown -R mysql /usr/local/mysql/var
e tentei iniciá-lo novamente. Ainda sem sorte. Mas pior, nenhum arquivo .err no diretório var - estava no diretório "dados"! então scripts / mysql_install_db configura o acampamento em / usr / local / mysql / var, mas o restante do aplicativo parece querer fazer seu trabalho em / usr / local / mysql / data!
Então, eu apenas editei o /etc/my.cnf e, na seção [mysqld], adicionei uma diretiva para apontar explicitamente o diretório de dados do mysql para var (como normalmente espero que seja assim) e, depois disso, o mysqld inicia apenas bem. A diretiva a adicionar tem a seguinte aparência:
datadir = / usr / local / mysql / var
Trabalhou para mim. Espero que ajude para você.