vistas tablas rendimiento query para optimizar optimizacion lento grandes eficientes datos consultas cantidades mysql ubuntu-12.04

rendimiento - optimizar tablas grandes mysql



MySQL Job no se pudo iniciar (12)

Estoy en Kubuntu 12.04, y después de instalar mysql a través de un apt-get (mysql ver: 5.5.35), estoy intentando iniciar el servicio mysql, pero recibí este error:

sudo service mysql start

inicio: el trabajo no se pudo iniciar

Así que busqué en Google este problema, dice que tengo que ir a /var/log/mysql/error.log

Pero mi archivo error.log está vacío :(

Luego revisé los permisos:

drwxr-s --- 2 mysql adm 4096 7 de abril 11:21 mysql

-rw-r ----- 1 mysql adm 0 abr 7 11:21 error.log

Así que no sé qué hacer ... ¿Por qué este error? ¿Por qué el archivo de error está vacío?


Compruebe los permisos de archivo, si está editado

Fallar:

$ sudo chmod 776 /etc/mysql/my.cnf $ sudo service mysql restart mysql stop/waiting start: Job failed to start

De acuerdo:

$ sudo chmod 774 /etc/mysql/my.cnf $ sudo service mysql restart stop: Unknown instance: mysql start/running, process 9564


En la mayoría de los casos, simplemente purgar el paquete mysql-server y reinstalarlo hará el trabajo.

Correr,

sudo apt-get purge mysql-server-5.1 mysql-common

seguido por

sudo apt-get install mysql-server


En mi caso, hago:

  1. sudo nano /etc/mysql/my.cnf
  2. buscar nombres de bind e IPs
  3. elimine el específico y deje solo localhost 127.0.0.1 y el nombre de host

En mi caso, simplemente porque el disco está lleno. Simplemente libere algo de espacio en el disco y reinicie y todo está bien.


En mi caso:

  • reiniciar el servidor
  • reiniciar mysql
  • crear .socket en el directorio

Esta línea resolvió el problema en mi caso,

sudo apt clean


La reinstalación funcionará porque restablecerá todos los valores a los valores predeterminados. Es mejor encontrar cuáles son los verdaderos culpables (ocurre el error de edición de my.cnf, por ejemplo, una sugerencia de parámetro incorrecta / desactualizada durante el ajuste de mysql).

Aquí está el diagnóstico de mysql si sospecha que algún valor es incorrecto dentro de my.cnf: ejecute mysqld para mostrarle los resultados.

sudo -u mysql mysqld

Después, corrija todos los errores de la tecla my.cnf que aparecen en la pantalla hasta que mysqld se inicie correctamente.

Luego reinicie usando

sudo service mysql restart


La solución dada requiere suficiente HDD libre, el problema real fue la falta de memoria en el HDD. Entonces, si no tiene un servidor alternativo o espacio libre en el disco, necesita alguna otra alternativa.

Me enfrenté a este error con mi servidor de producción (Linode VPS) cuando estaba ejecutando una descarga masiva en MySQL. No es una solución adecuada, pero MUY RÁPIDO REVISIÓN, que a menudo necesitamos en la producción para que las cosas SE VAN RÁPIDAS.

  1. Cambiar el tamaño de nuestro servidor VPS a un tamaño de disco duro más alto
  2. Iniciar MySQL, funciona.
  3. Inicie sesión en su instancia de MySQL y realice los ajustes apropiados que causaron este error (por ejemplo, elimine algunos registros, tablas o realice copias de seguridad de la base de datos en su máquina local que no se requieren en la producción, etc.
  4. Baje la calificación de su servidor VPS al paquete anterior que ya estaba usando


Para ayudar a otros que no tienen un disco lleno para solucionar este problema, primero inspeccione su registro de errores (para mí, la ruta se encuentra en mi archivo /etc/mysql/my.cnf ):

tail /var/log/mysql/error.log

Mi problema resultó ser una nueva dirección IP asignada después de la reconfiguración de un enrutador de red, por lo que tuve que cambiar la variable de bind-address .


Primero haga una copia de seguridad de su directorio / var / lib / mysql / para estar seguro.

sudo mkdir /home/<your username>/mysql/ cd /var/lib/mysql/ sudo cp * /home/<your username>/mysql/ -R

Luego elimine MySQL (esto eliminará php5-mysql y phpmyadmin, así como otras bibliotecas, así que prepárese para reinstalar algunos elementos después de esto.

sudo apt-get purge mysql-server-5.1 mysql-common

Elimina la carpeta / etc / mysql / y su contenido

sudo rm /etc/mysql/ -R

A continuación, compruebe que sus antiguos archivos de base de datos todavía están en / var / lib / mysql / si no están, luego cópielos de nuevo en la carpeta y luego haga clic en root: root

(solo ejecútalos si los archivos ya no están allí)

sudo mkdir /var/lib/mysql/ sudo chown root:root /var/lib/mysql/ -R cd ~/mysql/ sudo cp * /var/lib/mysql/ -R

A continuación instale el servidor mysql

sudo apt-get install mysql-server

Finalmente, vuelva a instalar los paquetes faltantes como phpmyadmin y php5-mysql.


Yo tuve el mismo problema. Pero descubro que mi hd está lleno.

$ sudo cat /var/log/upstart/mysql.log /proc/self/fd/9: ERROR: The partition with /var/lib/mysql is too full!

Entonces corro

$ df -h

Y recibí el mensaje.

/dev/xvda1 7.8G 7.4G 0 100% /

Luego descubrí qué carpeta estaba llena ejecutando el siguiente comando en el terminal

$ cd /var/www $ for i in *; do echo $i; find $i |wc -l; done

Esto me da el número de archivos en cada carpeta en / var / www. Ingresé a la carpeta con la mayoría de los archivos, borré algunos archivos de respaldo y continué eliminando archivos inútiles y archivos de caché.

luego ejecuto $ sudo /etc/init.d/mysql start y vuelve a funcionar