Ideas MySQL de resolución de problemas

nivel de base de datos

A: Compruebe si hay problemas herramientas comunes

1: msyqladmin: cliente de MySQL, que puede gestionar la operación

2: mysqlshow: potente shell comandos a la vista

3: mostrar [SESSION | GLOBAL] variables: ver la información de parámetros de base de datos

4: SHOW [SESSION | GLOBAL] Estado: vea la base de datos la información de estado

5: INFORMATION_SCHEMA: obtener método metadatos

6: SHOW INNODB ESTADO: Todos los motores de estado de InnoDB

7: SHOW PROCESSLIST: Ver el estado actual de todas las sesiones conectado

8: explicar: obtener el plan de ejecución de la consulta

Índice espectáculo:: 9 ver la información de índice de la tabla

10: lento-registro: Registro de consultas lentas

11: mysqldumpslow: archivo slowlog análisis

 

Dos soluciones:

Ideas de ajuste general de emergencia: se aplican para que una empresa repentina Caton, incapaz de llevar a cabo las necesidades normales de procesamiento de negocio para ser atendidos inmediatamente Escena

1: mostrar processlist;

2: explicar SELECT ID, nombre de Stu donde nombre = 'CLSN'; # Todo el sexo Identificación del nombre de la edad;

SELECT ID, nombre de Stu donde id = 2-1 funciones conjunto de resultados> 30; Mostrar índice de la tabla;

3: Implementación Plan de juicio, los problemas de indexación (no la hay, es razonable) o la declaración en sí es el problema;

estado de espectáculo como 'bloqueo%%'; # estado de bloqueo de consulta: 4

SESSION_ID matanza; # matar a una sesión de problema.

las ideas convencionales de ajuste: de negocio cíclico Caton, por ejemplo, 10-11 am todos los negocios, especialmente lento, pero también se puede utilizar durante un período de tiempo muy bien.

1: Vista slowlog, el análisis slowlog, analizar instrucción de consulta lenta;

2: de acuerdo con ciertas prioridades, una por una investigación de todas las declaraciones lentos;

3: Analizar principio SQL, realice la depuración de explicar, ver el tiempo de ejecución de la sentencia;

4: Ajuste índice o declaración misma.

 

 

a nivel de sistema

A: Compruebe si hay problemas herramientas comunes

Cpu 方面: vmstat, sar superior, htop, nmon, mpstat;

Memoria: libre, ps-aux;

dispositivos IO (disco, red): iostat, ss, netstat, iptraf, iftop, lsof;

vmstat comando Descripción:

1) Procs: r muestra cómo muchos procesos están esperando para el tiempo de CPU. b representada en el número de proceso del sueño no interrumpido. A la espera de E / S

2) Memoria: swpd pantalla se conecta al bloque de datos de número de disco. bloque de datos, amortiguando el bloque de datos de usuario no se utiliza, el número de bloques de datos para el sistema operativo.

3) de intercambio: de conmutación de la segunda memoria del sistema operativo y la memoria de disco a la cantidad de bloque de datos intercambiado desde el disco. s0 y s1 son preferiblemente 0.

4) Io: b1 se lee desde el segundo dispositivo, el número de dispositivo de bloques de datos escrito a b0. Refleja el disco I / O.

5) Sistema: muestra el número de número de interrupción (in) por ocurrencia y el contexto de conmutación (cs) de.

6) CPU: mostrar un código de usuario que ejecuta, el código del sistema, está en reposo, a la espera de tiempo de CPU I / O.

iostat Descripción:

Ejemplos de comando: iostat -DK 1 5

       iostat -d -k -x 5 (ver utilización de la capacidad (% util) y el tiempo de respuesta (el await))

1) TPS: el número de transferencias por segundo dispositivo. "Primera transmisión" significa "uno I / O petición." Una pluralidad de peticiones lógicas pueden combinarse en "solicitud de una I / O".

El número máximo de fábrica hardware IO cuando la fábrica definida por un segundo: 2) iops

3) "primera transmisión" tamaño solicitado es desconocida.

4) kB_read / s: la cantidad de datos de lectura desde el segundo dispositivo (unidad expresa);

5) KB_wrtn / s: la cantidad de datos a un segundo dispositivo (unidad expresada) por escrito;

6) kB_read: La cantidad total de datos leídos;

7) kB_wrtn: la cantidad de la cantidad total de escritura de datos; estas unidades son Kilobytes.

 

Dos: soluciones a nivel de sistema a los problemas

¿Usted piensa en el bien alta carga final, baja o bueno? En la producción real, generalmente considerado Cpu siempre que no más de 90% no tiene problema.

No descartamos estos casos especiales siguientes:

alta carga de CPU, baja carga IO

1) La memoria no es suficiente;

2) pobre rendimiento de disco;

3) un problema de SQL ---> a la capa de base de datos, emita SQL investigación más a fondo;

4) IO un problema (fundamental para el disco, RAID mal diseñado, rebaja incursión, bloqueo, TPS demasiado alto por unidad de tiempo);

5) TPS demasiado alto: un gran número de pequeños datos IO, un gran número de escaneo completo de tabla.

IO alta carga, bajo carga de la CPU

1) un gran número de pequeñas IO escribe:

la confirmación automática, un gran número de pequeñas IO; un número máximo de valor IO IO / PS, disco, fábrica de hardware cuando un segundo definidos por el fabricante.

2) un gran número de grandes IO escribe: el problema es relativamente grande posibilidad de SQL

IO y tienen una alta carga de CPU

El problema no es de hardware o SQL.

 

Publicado 50 artículos originales · ganado elogios 2 · Vistas 2246

Supongo que te gusta

Origin blog.csdn.net/eafun_888/article/details/104738612
Recomendado
Clasificación