¿Cómo puedo restaurar mis archivos y fotos desde archivos binarios?
¿Sabe de qué archivos binlog necesita restaurar y cuántos archivos binlog hay?
Usando la mysqlbinlog
utilidad podemos ver el contenido del archivo binlog.
Si es un archivo único que puede recuperar usando:
mysqlbinlog /var/lib/mysql-bin.000016 | mysql –uroot –pReset123
Si se trata de varios archivos, simplemente extraiga todo el contenido en un archivo .sql y restaure directamente:
mysqlbinlog /var/lib/mysql-bin.000016 > /logs/allbinlog.sql
Para agregar el segundo contenido de binlog al archivo allbinlof.sql, use el siguiente comando:
mysqlbinlog /var/lib/mysql-bin.000016 >> /logs/allbinlog.sql
También puede excluir ciertas declaraciones usando la opción de mysqlbinlog. Prueba esto a continuación para ver las opciones:
mysqlbinlog --help
Utilice los pasos a continuación para restaurar datos de registros binarios o use este enlace para comprender el proceso de restauración: Restauración de registros binarios de MySQL
Primero, restaure la base de datos desde la última copia de seguridad
mysql -u username -ppassword database_name < dump.sql
Luego haga cualquiera de:
Restaurar el resto de datos del registro binario.
Si tiene más de un registro binario para ejecutar en el servidor MySQL, el método seguro es procesarlos todos utilizando una única conexión al servidor.
mysqlbinlog mysql_bin.000001 | mysql -u root -ppassword database_name
mysqlbinlog mysql_bin.000002 | mysql -u root -ppassword database_name
o:
mysqlbinlog mysql_bin.000001 mysql_bin.000002 | mysql -u root -ppassword database_name
Restaurar datos en función del tiempo
mysqlbinlog --start-datetime="2005-04-20 10:01:00" \
--stop-datetime="2005-04-20 9:59:59" mysql_bin.000001 \
| mysql -u root -ppassword database_name
Restaurar datos en función de la posición
mysqlbinlog --start-position=368315 \
--stop-position=368312 mysql_bin.000001 \
| mysql -u root -ppassword database_name
Puede usar la opción -v para hacer un archivo .sql en formato READABLE .
Por ejemplo
fuente