solucionar - XAMPP-Error: apagado de MySQL inesperadamente
xampp mysql not found (16)
He reinstalado XAMPP por alguna razón y MySQL no funciona, dando el siguiente error en la consola:
01:56:03 [mysql] Error: MySQL shutdown unexpectedly.
01:56:03 [mysql] This may be due to a blocked port, missing dependencies,
01:56:03 [mysql] improper privileges, a crash, or a shutdown by another method.
01:56:03 [mysql] Check the "/xampp/mysql/data/mysql_error.log" file
01:56:03 [mysql] and the Windows Event Viewer for more clues
Al consultar el archivo "/xampp/mysql/data/mysql_error.log" obtengo:
130302 1:48:06 InnoDB: Waiting for the background threads to start
130302 1:48:07 InnoDB: 1.1.8 started; log sequence number 1600324627
130302 1:48:07 [Note] Server hostname (bind-address): ''0.0.0.0''; port: 3306
130302 1:48:07 [Note] - ''0.0.0.0'' resolves to ''0.0.0.0'';
130302 1:48:07 [Note] Server socket created on IP: ''0.0.0.0''.
130302 1:51:12 [Note] Plugin ''FEDERATED'' is disabled.
130302 1:51:12 InnoDB: The InnoDB memory heap is disabled
130302 1:51:12 InnoDB: Mutexes and rw_locks use Windows interlocked functions
130302 1:51:12 InnoDB: Compressed tables use zlib 1.2.3
130302 1:51:12 InnoDB: Initializing buffer pool, size = 16.0M
130302 1:51:12 InnoDB: Completed initialization of buffer pool
130302 1:51:12 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
130302 1:51:12 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
130302 1:51:13 InnoDB: Waiting for the background threads to start
130302 1:51:14 InnoDB: 1.1.8 started; log sequence number 1600324627
130302 1:51:14 [Note] Server hostname (bind-address): ''0.0.0.0''; port: 3306
130302 1:51:14 [Note] - ''0.0.0.0'' resolves to ''0.0.0.0'';
130302 1:51:14 [Note] Server socket created on IP: ''0.0.0.0''.
130302 1:56:01 [Note] Plugin ''FEDERATED'' is disabled.
130302 1:56:01 InnoDB: The InnoDB memory heap is disabled
130302 1:56:01 InnoDB: Mutexes and rw_locks use Windows interlocked functions
130302 1:56:01 InnoDB: Compressed tables use zlib 1.2.3
130302 1:56:01 InnoDB: Initializing buffer pool, size = 16.0M
130302 1:56:01 InnoDB: Completed initialization of buffer pool
130302 1:56:01 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
130302 1:56:01 InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
130302 1:56:02 InnoDB: Waiting for the background threads to start
130302 1:56:03 InnoDB: 1.1.8 started; log sequence number 1600324627
130302 1:56:03 [Note] Server hostname (bind-address): ''0.0.0.0''; port: 3306
130302 1:56:03 [Note] - ''0.0.0.0'' resolves to ''0.0.0.0'';
130302 1:56:03 [Note] Server socket created on IP: ''0.0.0.0''.
Eso es solo una parte del registro, el completo es un poco demasiado grande.
¿Ayuda?
Una razón que encontré (y no se menciona además de otras respuestas dadas en este sitio sobre el problema similar) fue ir al administrador de tareas en Windows y detener el mysqld que ya se estaba ejecutando e impedir el inicio del servidor mysql.
Simplemente intentaría reinstalar XAMPP.
Es posible que haya un servidor MySQL instalado previamente en su computadora, intente desinstalarlo e inicie MySQL en el XAMPP. Esta mina resuelta
Debes:
- Cierre el xampp
- Vaya a la carpeta donde lo instaló, si en (c :) puede ser algo así como C: / xampp /, acceda a la carpeta C: / xampp / mysql / data
- Eliminar el archivo ibdata1
- Inicia XAMPP nuevamente.
Salga de su skype y pruebe, si skype es opne
o
Vaya a su xampp / wamp instalado, busque httpd.conf. Abra ese archivo usando el teclado / bloc de notas, busque Escuchar u 80, actualice el puerto de escucha a 8081 y guarde el archivo. Reinicie xampp / wamp, inicie los servidores.
o
siga los pasos a continuación en skype
La mejor solución para este problema es abrir su archivo de directivas de configuración mysql my.ini presente dentro de la carpeta C: / xampp / mysql / bin y cambiar la información relacionada con los puertos, generalmente algunos programas ocupan el puerto no. 3306 como resultado de que deja de funcionar, ahora sigue dos pasos para hacerlo funcionar.
enter code here
Step-1. Search for [''client''], you can see some thing like this
[client]
# password = your_password
port = 3306
socket = "C:/xampp/mysql/mysql.sock"
Now in the port section remove 3306 and add port = 3306 > 3307 as shown below.
[client]
# password = your_password
port = 3306 > 3307
socket = "C:/xampp/mysql/mysql.sock"
Step -2. Similarly Search for [''mysqld''], you can see something like this
[mysqld]
port= 3306
socket = "C:/xampp/mysql/mysql.sock"
basedir = "C:/xampp/mysql"
tmpdir = "C:/xampp/tmp"
datadir = "C:/xampp/mysql/data"
pid_file = "mysql.pid"
# enable-named-pipe
key_buffer = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log_error = "mysql_error.log"
Now here change the port number 3306 to 3307 and add a line "innodb_force_recovery = 1" exactly as shown below.
[mysqld]
port= 3307
socket = "C:/xampp/mysql/mysql.sock"
basedir = "C:/xampp/mysql"
tmpdir = "C:/xampp/tmp"
datadir = "C:/xampp/mysql/data"
pid_file = "mysql.pid"
# enable-named-pipe
key_buffer = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
log_error = "mysql_error.log"
innodb_force_recovery = 1
Eso es todo, reinicia tu servicio mysql, funcionará con seguridad.
simplemente ejecute su xammp como administrador, funciona
Para cualquiera que haya buscado y presionado en este enlace, lo resolví simplemente buscando mysql notifier y dejo de ejecutar mysql allí, luego ejecuto mysql en xampp nuevamente y se ejecuta. ¿Por qué esto funciona? iam no soy experto, pero creo que es fácil: el puerto ya fue tomado por el notificador mysql, así que tuve que detenerlo allí y ejecutarlo aquí.
Soy nuevo en XAMPP, pero creo que una combinación de estas sugerencias funciona mejor (al menos en Windows 8.1 con la última versión de XAMPP. Tenga en cuenta que la computadora en la que probé esto también tenía Skype).
Primero inicie sesión en Skype y navegue a "Herramientas <Opciones <Avanzadas <Conexión". Luego marque la casilla que dice "Usar el puerto 80 y 443 para conexiones entrantes adicionales". Guarde, cierre y salga de skype.
A continuación, en el panel de control de XAMPP, haga clic en "config <my.ini" y cambie las líneas 19 y 27 (debe tener el puerto = 3306) de "3306" a "3307".
Además, deberá navegar a xampp <phpMyAdmin <config.inc y cambiar la línea 27, que debería tener un aspecto similar a este:
$ cfg [''Servers''] [$ i] [''host''] = ''127.0.0.1'';
Deberá agregar "3307" de la siguiente manera:
$ cfg [''Servers''] [$ i] [''host''] = ''127.0.0.1:3307'';
Ahora, abra su navegador y debería ver la página xampp cuando escriba "localhost". Además, si esta es la primera vez que usa xampp, es posible que aparezca una advertencia sobre su falta de contraseña (resaltada en rosa) en su servidor local / phpmyadmin / página. Esto se soluciona fácilmente yendo a la pestaña "cuentas de usuario" en phpmyadmin, haciendo clic en "editar privilegios" y escribiendo la contraseña. Recuerde guardar la versión hash de todas y cada una de las contraseñas que cree, ya que la usaremos a continuación. - Abrí una libreta y la guardé (y numerado). Tenga en cuenta que phpMyadmin le notificará cuándo está cambiando la contraseña de su sesión actual (esto se mostrará en la parte superior de su página phpMyadmin y es muy importante, ya que necesitará ESA versión hash específica de su contraseña).
A continuación, deberá navegar a la siguiente ubicación "xampp <phpMyAdmin <config.inc" en su computadora y abrir y editar el archivo con un editor de texto. Deberá ingresar la versión hash de su contraseña entre las comillas simples para la contraseña y cambiar "AllowNoPassword" de verdadero a falso.
Y, eso debería hacerlo.
En mi caso: acabo de reemplazar
....xampp/mysql/backup files
dentro
**xampp/mysql/data**
Funcionó para mí
Si Apache se está ejecutando sin ningún problema y encuentra algún bloqueo por la configuración de seguridad del sistema, simplemente déjelo en lugar de bloquear o cerrar el cuadro de diálogo. Y cambie el número de puerto de MySQL a 3607 como lo era antes de 3606. Funcionó para mí
En mi caso, hice dos cosas:
- movió
xampp/mysql/backup
archivosxampp/mysql/backup
axampp/mysql/data
- EJECUTAR XAMPP como administrador
Funcionó para mí :)
si instálase mysql de forma independiente, puede detener el servicio de MySQL si no funciona ninguna de estas respuestas para mí, este trabajo para mí
Esto funcionó para mí,
- salir del XAMPP
- cortar todos los archivos en C: / xampp / mysql / backup
- pegar y reemplazar archivos en C: / xampp / mysql / data
- ejecutar como administrador el XAMPP
Bueno, lo primero, sé que es tarde, así que no sé si alguien lo votará pero bueno, está bien. En segundo lugar, desinstalar xampp podría no ser útil porque el proceso que utiliza el puerto 3306 (puerto predeterminado de Mysql) seguirá siendo corriendo en algún lugar de tu sistema. podría ser skype, pero podría no ser skype.
así que la mejor manera sería averiguar qué proceso está usando el puerto 3306 y luego finalizar el proceso.
para saber qué proceso está usando el puerto 3306, abrir el símbolo del sistema y escribir
netstat -n -o -a
obtendrás una pantalla como esta.
Luego busque la dirección con el número de puerto 3306 y descubra el PID correspondiente a eso.
Luego, simplemente abra un símbolo del sistema como administrador y escriba
taskkill /F /PID 1234
reemplaza 1234 con tu PID respectivo. Entonces puedes intentar iniciar mysql y funcionará.
Y ahora si eres perezoso para hacer este paso una vez más cuando reinicias la computadora ,,,
simplemente puede usar la siguiente secuencia de comandos por lotes para terminar el proceso automáticamente y disfrutar :)
@echo off
setlocal enableextensions
set "port=3306"
for /f "tokens=1,4,5" %%a in (
''netstat -aon ^| findstr /r /c:"[TU][CD]P[^[]*/[::/]:%port%"''
) do if "%%a"=="UDP" (taskkill /F /PID %%b) else (taskkill /f /PID %%c)
endlocal
pause
guárdelo como anything.bat y ejecútelo cada vez que quiera usar mysql. :)
la verdadera manera es RECONFIGURA tu aplicación. Con la configuración de MYSQL. puedes volver a abrir tu configuración y cambiar el puerto de 3306 a 3307 .