Error al iniciar mariadb: no existe tal proceso

3 minutos de lectura

Instalé mariadb a través de homebrew para configurar un entorno de wordpress. Está destinado a trabajar con laravel valet. Actualmente estoy usando el shell zsh.

Lo instalé sin problema (10.3.12), pero cuando ejecuto mysql.server start me sale el siguiente error:

mysql.server start
Starting MariaDB
.190206 11:26:18 mysqld_safe Logging to '/usr/local/var/mysql/chriss-mbp.lan.err'.
190206 11:26:18 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
/usr/local/bin/mysql.server: line 260: kill: (55179) - No such process
 ERROR!

¿Alguien puede ayudarme a reducir por qué recibo este error? Soy nuevo en la terminal y mariadb, así que espero que sea solo un error tonto del que no estaba al tanto.

  • ¿Cómo se relaciona esto con Laravel, WordPress o Valet? Por favor, no use etiquetas irrelevantes

    –Nico Haase

    27 de agosto de 2020 a las 20:49

Brew tiene su propio administrador de servicios incluido. A través de brew services list obtiene todos los servicios instalados en la lista. MariaDB debería estar allí.

Para empezar llama brew services start mariadb.

  • brew info mariadb enumera ambas opciones: ambas mysql.server start y brew services start mariadb. Comenzar como un servicio no está relacionado con un error al iniciar manualmente, de hecho: lo más probable es que iniciar el servicio tenga el mismo efecto… mariadb no se inicia.

    – wivku

    3 de mayo de 2019 a las 8:44

avatar de usuario
David Moles

Mirando la línea ofensiva en el script de inicio, este error indica:

  1. el script de inicio agotó el tiempo de espera a que apareciera el servidor, y
  2. el proceso del servidor no se está ejecutando.

El nombre del comando kill es un poco engañoso; se usa más comúnmente para matar un proceso, pero también se puede usar para enviar una señal arbitraria, o incluso (con -0) solo para comprobar si sería posible enviar una señalque es lo que está pasando aquí.

Descubrir por qué el servidor no apareció, debe verificar el registro de errores, que en una instalación macOS / Homebrew de MySQL o MariaDB estará en:

/usr/local/var/mysql/<hostname>.err

Si usted tail ese archivo, debería ver el motivo de la falla, por ejemplo

2019-11-01 11:29:14 0 [ERROR] Can't start server: Bind on TCP/IP port.
  Got error: 48: Address already in use
2019-11-01 11:29:14 0 [ERROR] Do you already have another mysqld server
  running on port: 3306 ?
2019-11-01 11:29:14 0 [ERROR] Aborting

(En mi caso, tenía otra instancia de MariaDB ejecutándose en un contenedor Docker y en cuclillas en el puerto 3306).

Intente buscar el error dentro del archivo de registro. /var/log/mariadb/mariadb.log. Mi zona horaria estaba configurada como inexistente, mejor dicho, aún no importada/configurada.

sudo tail -f /usr/local/var/mysql/[your computer host name].err

2021-01-22 13:16:17 4581617088 [Note] InnoDB:  Percona XtraDB (http://www.percona.com) 5.6.42-84.2 started; log sequence number 149299467171
2021-01-22 13:16:17 123145364480000 [Note] InnoDB: Dumping buffer pool(s) not yet started
2021-01-22 13:16:17 4581617088 [Note] Plugin 'FEEDBACK' is disabled.
2021-01-22 13:16:17 4581617088 [Note] Recovering after a crash using tc.log
2021-01-22 13:16:17 4581617088 [ERROR] Bad magic header in tc log
2021-01-22 13:16:17 4581617088 [ERROR] Crash recovery failed. Either correct the problem (if it's, for example, out of memory error) and restart, or delete tc log and start mysqld with --tc-heuristic-recover={commit|rollback}
2021-01-22 13:16:17 4581617088 [ERROR] Can't init tc log
2021-01-22 13:16:17 4581617088 [ERROR] Aborting

Estaba ejecutando MariaDB 10.1 localmente y encendí un MariaDB 10.5, de alguna manera mi /usr/local/var/mysql/tc.log se vio afectado y tengo que cambiarle el nombre para iniciar mi local 10.1 nuevamente.

sudo mv /usr/local/var/mysql/tc.log  /usr/local/var/mysql/tc.log_ 
sudo mysql.server start

Starting MariaDB
.210122 14:30:56 mysqld_safe Logging to '/usr/local/var/mysql/[your computer host name].err'.
210122 14:30:56 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
 SUCCESS! 

¿Ha sido útil esta solución?