transaction log enable mysql database recovery

transaction - enable binary log mysql



¿Cómo restauro desde un comando de base de datos drop utilizando un registro binario mysql? (5)

¿Cómo puedo restaurar una base de datos mysql que se eliminó mediante el comando "soltar base de datos"? Tengo acceso a registros binarios que deberían permitir este tipo de reversión.


La documentación apesta. Hace alusión a que DROP DATABASE es recuperable, pero solo en condiciones extrañas no estoy familiarizado con http://dev.mysql.com/doc/refman/5.0/en/binary-log.html

Según Docs, los binlogs son solo una secuencia de comandos ejecutados en base a un punto de referencia dado. Así que cuando hiciste "DROP DATABASE", en lugar de decir "Ah, está cayendo en la base de datos, deberíamos hacer una copia de seguridad ahora por si acaso" simplemente escribió una "DROP DATABASE" en el último binlog. La recuperación no es tan simple como reproducir la cinta al revés.

Lo que debe hacer es recuperar la base de datos a partir de un último bien conocido y aplicar los binlogs que ocurrieron entre ese punto de recuperación y el comando DROP.

http://dev.mysql.com/doc/refman/5.0/en/recovery-from-backups.html

Cómo se determina qué binlogs se usará, no está claro.

No hay nada mejor que tener copias de seguridad completas del sistema de archivos. Y al menos deberías tener estos a los que recurrir.


Si no tiene una copia de seguridad de la base de datos, no tiene suerte. La eliminación de una base de datos es permanente.


Suponiendo que tenía una copia de seguridad, el registro binario contiene las cosas que han sucedido desde esa copia de seguridad. Usando la utilidad mysqlbinlog puedes hacer algo como:

mysqlbinlog the_log_file> update.sql

Aunque creo que es posible que tenga que editar ese archivo para eliminar todo lo que no quería ejecutar de nuevo (como la declaración de la base de datos de inserción).

¡Buena suerte!


Sin respaldo, sin fiesta.

Entonces responderé:

Para no volver a estar nunca en su situación, instale el autysqlbackup ultra simple y ultra potente (si está en Linux):

sudo apt-get install automysqlbackup

configurarlo:

sudo nano / etc / default / automysqlbackup

Luego suba su contenido automáticamente a Dropbox, ubuntu uno o similar.

Solo entonces vive feliz :)


Solo para complementar la respuesta de Kent Fredric, PUEDE revertir el comando de la drop database inserción si está utilizando el registro binario desde la creación de la base de datos.