En MySQL, ¿qué significa “arriba”, lo que es malo en ello, y cómo solucionarlo?
Pregunta
pregunta simple, pero su me ha REGAÑA desde hace un tiempo ....
¿Qué es "sobrecarga" en MySQL, y debería preocuparme?
Qué hacer clic en "optimizar mesa" arreglar de verdad?
Solución
Parece ser que la sobrecarga es el espacio de disco temporal que la base de datos utilizada para ejecutar algunas de las consultas, por lo que sólo debe preocuparse si esto se pone muy alta.
Puede comparar 'Optimización de la mesa' con la desfragmentación del disco duro.
cito:
Cada base de datos, con el tiempo, requieren algún tipo de mantenimiento para mantenerlo a un óptima Rendimiento nivel. Purgar las filas eliminadas, resecuenciación, compresión, gestión caminos de índice, la desfragmentación, etc. es lo que se conoce como la optimización de MySQL y otros términos en otras bases de datos. Por ejemplo, IBM DB2 / 400 lo llama REORGANIZE miembro de archivo físico.
Es una especie de como cambiar el aceite en su automóvil o conseguir una puesta a punto. Puedes pensar que realmente no tiene que hacerlo, sino por haciendo así que el coche funciona mucho mejor, se obtiene un mejor rendimiento de la gasolina, etc. Un coche que recibe gran cantidad de kilometraje requiere la puesta a punto con más frecuencia. Una base de datos que se requiere un uso intensivo de la misma. Si que está haciendo una gran cantidad de actualizar y / o operaciones de eliminación, y sobre todo si sus tablas tienen longitud variable columnas (VARCHAR, TEXT, etc.), es necesario mantener 'er puesto a punto.
Otros consejos
Si usted está hablando de lo que phpMyAdmin
llamadas overhead
, entonces es el tamaño real de una tabla de archivo de datos en relación con el tamaño ideal del mismo archivo de datos (como si simplemente cuando restaurado a partir de copia de seguridad).
Por motivos de rendimiento, no se compacta MySQL
los archivos de datos después de que se elimina o actualiza las filas.
Esta overhead
es malo para la exploración de tabla, i. mi. cuando su consulta necesita para funcionar sobre todos los valores de la tabla, tendrá que mirar más espacio vacío.
Es posible deshacerse de la overhead
ejecutando OPTIMIZE TABLE
que compactar su mesa y los índices.
Overhead es Data_free de una mesa, que está El número de bytes asignados pero no utilizados. Lo podemos encontrar por el comando SQL SHOW TABLE STATUS . Es el espacio libre en el tamaño asignado para su mesa.
Mesa Optimizar puede ser muy problemático. Por ejemplo, si la tabla se utiliza en gran medida de un sitio.
http://dev.mysql.com/doc/ RefMan / 5,1 / en / optimize-table.html
Después de eliminar una gran parte de una tabla MyISAM o archivo, o hacer muchos cambios en una tabla MyISAM o archivo con registros de longitud variable (tablas que tienen columnas VARCHAR, VARBINARY, BLOB, o TEXT). Los registros borrados se mantienen en una lista enlazada y operaciones INSERT subsiguientes reutilizan posiciones de las filas de edad. <
Creo que he confirmado este comportamiento. Y sin duda sería muy útil.