Pregunta

Necesito ejecutar la consulta lenta y el registro de consultas no indexadas durante algún tiempo en una base de datos de producción en vivo con replicación.Cambiar el valor de constante GLOBAL suena como una buena solución.Este artículo también proporciona una buena lectura sobre eso.

El problema es que necesito ejecutar FLUSH LOGS; en el maestro/esclavo.Y no estoy seguro de cómo afectará eso a la replicación.¿Alguien puede decirme el impacto de ejecutar FLUSH LOGS; en el maestro en vivo y en el esclavo en vivo?

Gracias

¿Fue útil?

Solución

FLUSH LOGS; es seguro de hacer en cualquier momento.Girará los registros de replicación;esto es inofensivo;la replicación sabe cómo pasar al siguiente registro.El binlog se rota automáticamente cuando excede max_binlog_size.

Antes de 5.6, FLUSH LOGS no rotaba el registro lento.Ver http://dev.mysql.com/doc/refman/5.6/en/flush.html o la página para su versión.

nunca he hecho reset master;yo no lo incluiriaUso expire_logs_days para purgar binlogs automáticamente.(Si un esclavo ha estado desconectado durante tantos días y no lo noto, me merezco la molestia).

prefiero log_queries_not_using_indexes = OFF;de lo contrario, abarrota el registro lento.(Una tabla pequeña sin un índice a menudo no es un problema real).

Otros consejos

usando flush logs;, generalmente reset master guardará todos los cambios no guardados en los registros y eliminará los antiguos. hay una solución para ello:

orte

Si está utilizando la replicación, no debe eliminar archivos de registro binarios antiguos en el maestro hasta que esté seguro de que ningún esclavo aún necesita usarlos.Por ejemplo, si sus esclavos nunca se retrasan más de tres días , una vez al día puede ejecutar mysqladmin flush-logs en el maestro y luego eliminar los registros que tengan más de tres días.Puede eliminar los archivos manualmente, pero es preferible usar PURGE BINARY LOGS, que también actualiza de forma segura el archivo de índice de registro binario por usted (y que puede tomar un argumento de fecha).Consulte la Sección 13.4.1.1, “Sintaxis de PURGE BINARY LOGS”.

Puede mostrar el contenido de los archivos de registro binarios con la utilidad mysqlbinlog .Esto puede ser útil cuando desea reprocesar declaraciones en el registro para una operación de recuperación.Por ejemplo, puede actualizar un servidor MySQL desde el registro binario de la siguiente manera:

shell> mysqlbinlog log_file | mysql -h server_name

orte

citado de http://dev.mysql.com/doc/refman/5.0/en/binary-log.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top