0 votos

MySQL no se inicia después de la actualización

Estoy en Yosemite 10.10.5 y ahora mismo he actualizado mi MySQL anticuado a la última versión. Hice una copia de mis bases de datos existentes /usr/local/mysql/data/ en algún lugar seguro.

He tratado de configurar MySQL tanto a través de brew y a través de la instalador de paquetes pero parece que me las arreglé para meter la pata con ambas formas.

Hay un nuevo icono en el panel de preferencias que fue creado a través del instalador de paquetes, pero no parece iniciar MySQL.

Intenté correr mysql.server start en la terminal, pero he recibido el siguiente error:

Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/myname.local.pid).

He intentado brew services start mysql y me sale:

==> Successfully started `mysql` (label: homebrew.mxcl.mysql)

Pero no puedo acceder a ella a través de Sequel Pro ni a través de Terminal. Como brew services inicia mysql, intento mysql pero lo entiendo:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Tengo los siguientes registros en /usr/local/var/mysql/myname.local.err

2016-03-30T21:58:53.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
2016-03-30T21:58:53.791807Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2016-03-30T21:58:53.792478Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2016-03-30T21:58:53.792493Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.
2016-03-30T21:58:53.792573Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
2016-03-30T21:58:53.793639Z 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.7.11) starting as process 5922 ...
2016-03-30T21:58:53.807159Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
2016-03-30T21:58:53.829847Z 0 [ERROR] Plugin keyring_file reported: 'keyring_file initialization failure. Please check if the keyring_file_data points to readable keyring file or keyring file can be created in the specified location. The keyring_file will stay unusable until correct path to the keyring file gets provided'
2016-03-30T21:58:53.834848Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
...
2016-03-30T21:58:54.063594Z 0 [Note] InnoDB: Loading buffer pool(s) from /usr/local/mysql-5.7.11-osx10.9-x86_64/data/ib_buffer_pool
2016-03-30T21:58:54.065139Z 0 [Note] Plugin 'FEDERATED' is disabled.
2016-03-30T21:58:54.066443Z 0 [Note] InnoDB: Buffer pool(s) load completed at 160331  0:58:54
2016-03-30T21:58:54.073134Z 0 [Warning] System table 'plugin' is expected to be transactional.
2016-03-30T21:58:54.081061Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2016-03-30T21:58:54.083246Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
2016-03-30T21:58:54.090221Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2016-03-30T21:58:54.090273Z 0 [Note] IPv6 is available.
2016-03-30T21:58:54.090299Z 0 [Note]   - '::' resolves to '::';
2016-03-30T21:58:54.090310Z 0 [Note] Server socket created on IP: '::'.
2016-03-30T21:58:54.091554Z 0 [Warning] Failed to open optimizer cost constant tables

2016-03-30T21:58:54.099383Z 0 [ERROR] Fatal error: mysql.user table is damaged. Please run mysql_upgrade.
2016-03-30T21:58:54.099725Z 0 [ERROR] Aborting

2016-03-30T21:58:54.099763Z 0 [Note] Binlog end
2016-03-30T21:58:54.100531Z 0 [Note] Shutting down plugin 'ngram'
...
2016-03-30T21:58:55.476257Z 0 [Note] Shutting down plugin 'binlog'
2016-03-30T21:58:55.476370Z 0 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete

2016-03-30T21:58:55.6NZ mysqld_safe mysqld from pid file /usr/local/mysql/data/myuser.local.pid ended

1voto

Swards Puntos 3017

Me he dado cuenta de que todo este lío se ha creado porque mysql se ha instalado a través de brew y a través de un paquete del sitio de mysql.

La solución para mí fue eliminar mysql por completo y volver a instalarlo a través de brew.

Los nuevos datos de la base de datos que he creado se encuentran en /usr/local/var/mysql/

Ejecutando donde mysql devuelve /usr/local/bin/mysql

La ejecución de mysql.server start|stop|restart parece funcionar bien. También el acceso a la base de datos a través de sequel pro funciona bien, pero cuando intenté configurar mis proyectos de rails ejecuté rake db:create pero recibí

¡rake abortado! LoadError: dlopen(/Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle, 9): Biblioteca no cargada: / usr/local/Cellar/mysql/5.5.19/lib/libmysqlclient.18.dylib Referente de: /Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle Razón: imagen no encontrada - /Users/myuser/.rvm/gems/ruby-2.2.4/extensions/x86_64-darwin-14/2.2.0/mysql2-0.4.3/mysql2/mysql2.bundle

  • libmysqlclient.18.dylib no existe en mi configuración, ni el directorio ..Cellar/mysql/5.5.19/..
  • Hay usr/local/Cellar/mysql/5.7.11/lib/
  • Y hay libmysqlclient.dylib -> libmysqlclient.20.dylib pero no hay ../libmysqlclient.18.dylib en mi sistema.

En ~/.bash_profile hay que exportar PATH=/usr/local/bin:$PATH

En ~/.bash_rc hay

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

y en ~/.zshrc hay

export PATH="/usr/local/sbin:$PATH"

Parece que me he confundido con las rutas de mis sistemas.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X