5.4 METODOS DE RECUPERACION DE UN SGBD
La recuperación consiste en tres pasos principales:
Análisis: Identifica las páginas sucias y el conjunto de transacciones activas en el momento de la caída y el punto del log apropiado para empezar la operación REHACER
Rehacer: se replican las operaciones del log.
Deshacer: Se recorre el log hacia atrás y se deshacen las transacciones activas en el momento de la caída, o iniciadas después, de las que no se ha encontrado confirmación.
Recuperación en Oracle Red Log Files: dos o más archivos donde se registra cualquier modificación transaccional de una memoria intermedia de la BD.
Archivos de control: metadatos necesarios para operar en la base de datos, incluyendo información sobre copias de seguridad. Segmento
Rollback: guarda las últimas sentencias realizadas sobre la BD y sabe cuándo se ha confirmado o no una transacción. En la Recuperación de un fallo: Recupera los datos con REHACER (Desde Redo Log File).
Deshace las transacciones no comprometidas con Deshacer (Desde el segmento de rollback).
Técnica de recuperación de aires
Representa a los métodos actuales de recuperación.
Ø Usa números de secuencia del registro histórico (NSR) para implementar varias optimizaciones que reducen el tiempo de recuperación.
Ø Estrategia robar/no forzar para la escritura en disco:
Ø Escritura anticipada en el log.
Ø Repetición de la historia.
Ø Anotación en el log de las modificaciones durante el deshacer
La recuperación consiste en tres pasos principales:
Ø Análisis: Identifica las páginas sucias y el conjunto de transacciones activas en el momento de la caída y el punto del logapropiado para empezar la operación REHACER
Ø Rehacer: se replican las operaciones del log.
Ø Deshacer: Se recorre el log hacia atrás y se deshacen las transacciones activas en el momento de la caída, o iniciadas después, de las que no se ha encontrado confirmación.
Ø
Comandos para recuperación
Mantenimiento y monitoreo de la base
Actividad | Comando |
Revisar el estado de las tablas | show table status; |
Los procesos que están ejecutándose | show processlist; |
Variables con las que se está ejecutando la instancia | show variables; |
Estado actual de innodb; | show innodb status; |
Respaldos
La manera usual de hacer un respaldo es usando el comando mysqldump, que posee muchas opciones que permiten duplicar todas las base, una base en particular, una tabla, solo los datos, solo la estructura, etc.
Para obtener un respaldo completo de una base
[digital@pcproal digital]$ mysqldump --opt -u carlos -p prueba > prueba.bak
Para restaurar un respaldo completo de una base
[digital@pcproal digital]$ mysql -u carlos -p prueba < prueba.bak
Otra manera de hacer respaldos es através del comando "select into" y restaurar los datos con "mysqlimport" o "load data infile".
Redo Log Files: dos o más archivos donde se registra cualquier modificación transacción al de una memoria intermedia de la BD.
Archivos de control: metadatos necesarios para operar en la Base de Datos, incluyendo información sobre copias de seguridad. Guían la recuperación.
Segmento Rollback: guarda las últimas sentencias realizadas sobre la BD y sabe cuándo se ha confirmado o no una transacción.
Procedimiento de Escritura:
1. Cuando se inicia una transacción ambas tablasson iguales.
2. Cuando se actualiza una página, se escribe la página actualizada en una página no usada, y se actualiza la tabla actual para apuntar a ésta (dejando la “sombra” sin modificar).
3. Cuando se confirma la transacción, la tabla depáginas actual pasa a almacenamiento no volátil (se cambian las direcciones de las tablas).
4. Si se produce un fallo, la tabla “sombra” se copia en la “actual”.
5. No es necesario ni rehacer ni deshacer.
Aplicación de cada método
Ejemplo de recuperación de aires
En la fase REHACER, empezando desde el mínimo NSD en la tabla de páginas sucias(min(NSD)=1)) se rehacen las actualizaciones del log (en este caso
NSD=1, 2, 6).
En la fase DESHACER, se deshacen las actualizaciones del log de las transacciones no confirmadas (T3) (i.e.NSD=6).
Recuperación postgresql
Ø Recuperación basada en WAL (Write – AheadLogging) con fases de Rehacer y Deshacer similares a Aries.
Ø El directorio pg_xlog contiene los diarios de escritura adelantada (WAL).
Ø Un archivo pg_clog registra el estado actual de cada transacción
No hay comentarios:
Publicar un comentario