La información facilitada a continuación sobre el programa de utilidad db2inidb sustituye la información del manual Novedades de la Versión 7.2.
El programa db2inidb es una herramienta suministrada con DB2 que puede realizar una recuperación frente a una anomalía grave o colocar la base de datos en un estado pendiente de recuperación en avance.
La suspensión de E/S da soporte a la continua disponibilidad del sistema al proporcionar una implementación completa del manejo de la reflexión dividida en línea, es decir, de la división de una reflexión sin cerrar la base de datos. Si el usuario no se puede permitir efectuar copias de seguridad en línea o fuera de línea en una base de datos grande, puede efectuar copias de seguridad o copias del sistema a partir de una imagen de reflexión utilizando la suspensión de E/S y una imagen de reflexión dividida.
La suspensión de E/S impide las grabaciones en disco mientras se está captando la imagen de reflexión dividida de una base de datos. Todas las operaciones de base de datos, aparte de la copia de seguridad en línea y la restauración, deberían funcionar normalmente mientras una base de datos se encuentre suspendida. No obstante, puede que algunas operaciones esperen a que se reanuden las grabaciones de E/S si se deben desechar páginas incorrectas de la agrupación de almacenamientos intermedios o de los almacenamientos intermedios de anotaciones cronológicas en las anotaciones cronológicas. Estas operaciones se deberían reanudar normalmente una vez que se haya reanudado la E/S de la base de datos. Es importante que la E/S de la base de datos se reanude desde la misma conexión desde la que se ha suspendido inicialmente. De lo contrario, puede que se cuelguen intentos subsiguientes de conexión si requieren que se desechen páginas incorrectas de la agrupación de almacenamientos intermedios en el disco. Estas conexiones se completarán después de reanudarse la E/S de la base de datos. Si los intentos de conexión se cuelgan y ha resultado imposible reanudar la E/S desde la conexión utilizada para la suspensión, tendrá que realizar una recuperación frente a anomalía grave utilizando la opción WRITE RESUME del mandato RESTART.
En un entorno de base de datos particionada, no tiene que suspender las grabaciones de E/S en todas las particiones simultáneamente. Puede suspender un subconjunto de una o más particiones a fin de crear reflexiones divididas para efectuar las copias de seguridad fuera de línea. Si se incluye el nodo de catálogo en el subconjunto, deberá ser la última partición que se suspenda.
La reflexión de una base de datos implica principalmente copiar todo el contenido del directorio de la base de datos y del directorio de la base de datos local. El directorio de la base de datos local, sqldbdir, está ubicado al mismo nivel de estructura de archivos que el directorio de la base de datos principal. Además, si los contenedores de espacio de tablas y el directorio de anotaciones cronológicas no están en el directorio de la base de datos, también se deberán copiar. Puesto que la base de datos reflejada con división depende de estas vías de acceso de directorio, las vías de acceso donde se copien estos directorios deben ser idénticas a las del sistema primario. Esto significa que la instancia también debe ser la misma. Como resultado de esta dependencia, no es posible crear una base de datos de reflexión en el mismo sistema de la primaria, a menos que se utilice la nueva opción de "reubicación" de la herramienta db2inidb.
La finalidad de la opción de "reubicación" es reubicar una base de datos en un determinado sistema utilizando un archivo de configuración especificado. Esto puede implicar cambios en los nombres de directorio de base de datos interno, directorio de contenedor, directorio de anotaciones cronológicas, instancia y base de datos. Suponiendo que el directorio de la base de datos, los directorios de contenedor y el directorio de anotaciones cronológicas se reflejen satisfactoriamente en diferentes vías de acceso de directorio dentro del mismo sistema de la base de datos primaria, se puede utilizar la herramienta db2inidb con la opción de "reubicación" para actualizar las vías de acceso internas de la base de datos reflejada. Más abajo, encontrará un escenario de utilización de esta opción.
Los usos de db2inidb serán distintos en función de cómo se reflejen los dispositivos de almacenamiento. Los usos siguientes dan por supuesta la reflexión coherente de toda la base de datos en el sistema de almacenamiento.
En un entorno de múltiples nodos, la herramienta db2inidb se debe ejecutar en cada partición para poder utilizar la reflexión dividida desde cualquiera de las particiones. La herramienta db2inidb se puede ejecutar en todas las particiones simultáneamente utilizando el mandato db2_all.
Creación de una base de datos clónica
El objetivo aquí es tener un clon de la base de datos primaria que se utilizará en otro sistema. El procedimiento siguiente describe cómo se puede crear una base de datos clónica:
db2 set write suspend for database
db2 set write resume for database
Después de la ejecución del mandato, la base de datos primaria debe volver a un estado normal.
db2start
db2inidb nombre_base_datos AS SNAPSHOT
También es posible utilizar este proceso para realizar una copia de seguridad fuera de línea, pero, si se restaura en la base de datos primaria, esta copia de seguridad no se puede utilizar para la recuperación en avance porque la cadena de anotaciones cronológicas no coincidirá.
Utilización de la reflexión dividida como base de datos en espera
A medida que la base de datos reflejada (en espera) realiza la recuperación en avance de forma continua a través de las anotaciones cronológicas, las nuevas anotaciones cronológicas creadas por la base de datos primaria se buscan y cargan constantemente desde el sistema primario. El procedimiento siguiente describe cómo se puede utilizar la reflexión dividida como base de datos en espera:
db2 set write suspend for database
db2 set write resume for database
db2inidb nombre_base_datos AS STANDBY
Utilización de la reflexión dividida como imagen de copia de seguridad
El procedimiento siguiente describe la manera de utilizar la base de datos reflejada como imagen de copia de seguridad a restaurar encima de la base de datos primaria:
db2inidb nombre_base_datos AS MIRROR
División de una reflexión sobre el mismo sistema de la base de datos primaria
El procedimiento siguiente describe cómo utilizar la opción de "reubicación" de la herramienta db2inidb para reflejar una base de datos sobre el mismo sistema de la base de datos primaria. En el ejemplo se supone que la base de datos se utilizará bajo una nueva instancia.
db2 set write suspend for database
db2 set write resume for database
db2start
db2inidb nombre_base_datos as STANDBY relocate using config_file