Utilice Tivoli Storage Manager para realizar copias de seguridad y recuperar bases de datos de DB2

Este artículo describe las bases de la arquitectura de IBM® Tivoli® Storage Manager e IBM DB2® y muestra cómo utilizar las funciones de copia de seguridad y restauración de Tivoli Storage Manager. Este artículo también proporciona instrucciones paso a paso que muestran cómo hacer una copia de seguridad y una restauración de datos en un servidor de Tivoli Storage Manager para la base de datos de DB2. Este documento se puede utilizar como una guía para administradores de base de datos de DB2 y administradores de Tivoli Storage Manager.

Bharat Vyas, Tivoli Storage Manager Level 2 Technical Support Engineer, IBM

Bharat Vyas is a Tivoli Storage Manager Level 2 Technical Support Engineer with IBM in Pune, India. He spends most of his time working with Tivoli Storage Manager administrators to resolve problems related to Tivoli Storage Manager. His areas of expertise include Tivoli Storage Manager, Tivoli Storage Manager FastBack, Tivoli Storage Manager FastBack for Workstations, and storage area networks.



Deepa Vyas, DB2 Advanced Technical Support Analyst, IBM China

Photo of Deepa VyasDeepa Vyas is an IT Specialist and IBM DB2 Certified Engineer. She works at the IBM India Software Labs in Pune, India as a DB2 advanced support Level 2 engineer. She spends most of her time working with DBAs to resolve problems related to DB2.



17-10-2012

Introducción

IBM Tivoli Storage Manager es un producto de software que atiende los desafíos de la gestión de almacenamiento compleja en entornos distribuidos. Este producto protege y gestiona una gran variedad de datos, desde la estación de trabajo hasta el entorno de servidor corporativo. IBM DB2 es una familia de productos de sistema de gestión de base de datos relacional (RDBMS). La base de datos de DB2 incluye un diccionario de datos o un conjunto de tablas de sistema que describe la estructura lógica y física de los datos. DB2 proporciona capacidades de ajustes automáticos y dinámicos.

En primer lugar, este artículo revisa conceptos y consideraciones. Explica cómo instalar y configurar el cliente de copia de seguridad de archivos de Tivoli Storage Manager y proporciona instrucciones paso a paso y técnicas que muestran cómo hacer una copia de seguridad y restauración de datos en un servidor de Tivoli Storage Manager para la base de datos de DB2.

DB2

IBM DB2 es un RDBMS en el cual los datos pueden ser referenciados en términos de su contenido, independientemente de la forma en que están almacenados los datos. Una base de datos de DB2 tiene un modelo de almacenamiento físico y lógico para manejar los datos. Una base de datos de DB2 contiene diversos objetos, tales como tablas, vistas, índices, esquemas, bloqueos, desencadenantes, procedimientos almacenados, paquetes, agrupaciones de almacenamiento intermedio, archivos de registro y espacios de tabla. Algunos de estos objetos, como las tablas y las vistas, ayudan a identificar de qué manera están organizados los datos. Otros objetos, como los espacios de tabla, se refieren a la implementación física de la base de datos. Otros objetos relacionados con la memoria, como las agrupaciones de almacenamiento intermedio, se enfocan en el rendimiento de la base de datos.

Una instancia (gestor de la base de datos) es un entorno lógico para gestionar datos y recursos del sistema asignados. Un sistema puede tener más de una instancia. Cada instancia tiene su propio conjunto de parámetros de configuración del gestor de la base de datos y su propia seguridad. Una instancia puede tener una o más bases de datos. La jerarquía se muestra en la Figura 1.

Figura 1. Jerarquía de objetos de DB2 en una instancia
Diagram shows the hierarchy of DB2 objects in an instance

Los datos del usuario están en las tablas. Si bien las tablas contienen filas y columnas, los usuarios no conocen la representación física real y el almacenamiento de los datos. Este hecho a veces se denomina independencia física de los datos. Las tablas se colocan en espacios de tabla. Un espacio de tabla se utiliza como una capa entre la base de datos y los objetos del contenedor, donde están los datos de tabla reales. Un espacio de tabla puede contener más de una tabla. Un contenedor es un dispositivo de almacenamiento físico. Puede estar identificado por un nombre de directorio, un nombre de dispositivo o un nombre de archivo. Se asigna contenedor a un espacio de tabla. Un espacio de tabla puede abarcar varios contenedores, lo que permite exceder las limitaciones del sistema operativo que restringen la cantidad de datos que puede alojar un contenedor.

Tivoli Storage Manager

IBM Tivoli Storage Manager es un producto de software que proporciona servicios de gestión de almacenamiento para datos, principalmente copia de seguridad, restauración, archivado y recuperación mediante el uso de un modelo cliente/servidor. En términos generales, los clientes de copia de seguridad-archivo de Tivoli Storage Manager se instalan en cada sistema (tales como servidores de archivos, servidores de base de datos, estaciones de trabajo de cliente). Utilizando un transporte de red configurado, tal como TCP/IP, cada cliente de Tivoli Storage Manager envía copias de sus archivos como objetos de copia de seguridad o de archivo a un servidor de Tivoli Storage Manager. El servidor almacena los archivos de cliente en un sistema de almacenamiento centralizado (que normalmente consiste en grandes cantidades de almacenamiento en disco o en cinta).

Una base de datos de DB2 es un archivo de datos independiente del que se puede hacer una copia de seguridad y que se puede restaurar utilizando Tivoli Storage Manager. Tivoli Storage Manager restaura una base de datos de DB2 en su totalidad, ya que para Tivoli Storage Manager es solo un archivo. Si una base de DB2 se elimina o se corrompe, Tivoli Storage Manager puede restaurar la versión más reciente de copia de seguridad u otra anterior de esta base de datos desde el servidor de Tivoli Storage Manager en el servidor o el cliente de DB2.

API de Tivoli Storage Manager

La interfaz de programación de aplicaciones (API) de Tivoli Storage Manager proporciona una biblioteca de funciones que permiten aplicaciones de software independientes y aplicaciones creadas de forma personalizada para realizar una copia de seguridad y archivar sus datos en un servidor de Tivoli Storage Manager. El DBMS de DB2 también utiliza la API de Tivoli Storage Manager para operaciones de copia de seguridad y restauración.

DB2 proporciona su propia función de copia de seguridad, que se puede utilizar para hacer copias de seguridad de datos en el nivel del espacio de tabla o en el nivel de la base de datos. Si configura este programa para utilizar Tivoli Storage Manager como soporte físico de copia de seguridad, DB2 se comunica con la API de Tivoli Storage Manager para las operaciones de copia de seguridad y restauración. Así, el cliente de la API de Tivoli Storage Manager y el cliente de copia de seguridad-archivo trabajan juntos para ofrecer una protección de datos completa en su entorno de DB2. El cliente de la API y el cliente de copia de seguridad-archivo pueden ejecutarse simultáneamente en el mismo servidor de DB2. El servidor de Tivoli Storage Manager los considera clientes separados.


Arquitectura básica de DB2 y Tivoli Storage Manager

El cliente de copia de seguridad-archivo de Tivoli Storage Manager puede hacer copia de seguridad, restaurar, archivar y recuperar datos del sistema de archivos del cliente. El cliente puede hacer copia de seguridad de cualquier archivo y utiliza funciones estándar del sistema operativo para acceder a los archivos dentro de los sistemas de archivos. Este método afecta la forma en que se hace copia de seguridad de DB2 y otros sistemas de base de datos. Cada base de datos aparece como un archivo individual en el servidor o en el sistema de archivos del cliente.

Para gestionar la base de datos o el procesamiento de copia de seguridad de nivel del espacio de tabla, el gestor de la base de datos de DB2 puede utilizar la API de Tivoli Storage Manager. Se debe instalar una API de cliente de Tivoli Storage Manager en cada servidor de base de datos de DB2.

Figura 2. Arquitectura de DB2 y Tivoli Storage Manager
Diagram shows 2 servers. Tivoli Storage Manager server is on one; client and DB2 database on other. The api connects the servers

Figura 2 muestra un método que puede utilizar para hacer copia de seguridad de una base de datos de DB2. El servidor de Tivoli Storage Manager está en el Servidor B. El Servidor A contiene la base de datos de DB2 y el cliente de copia de seguridad-archivo y la API de Tivoli Storage Manager.

En la Figura 2, se utilizan los siguientes componentes de Tivoli Storage Manager:

  • Cliente de copia de seguridad-archivo de Tivoli Storage Manager: proporciona una herramienta para que los usuarios hagan copia de seguridad de versiones de archivos en un servidor de Tivoli Storage Manager, que se puede restaurar si los archivos originales se pierden o se dañan. Los usuarios también pueden almacenar archivos a largo plazo y recuperar los archivos almacenados cuando los necesiten.
  • API de Tivoli Storage Manager: permite que aplicaciones de software independiente y aplicaciones creadas de forma personalizada hagan copia de seguridad o archiven sus datos de aplicaciones en un servidor de Tivoli Storage Manager. DB2 llama a las funciones proporcionadas por la API de Tivoli Storage Manager para enviar copias de seguridad de base de datos y de espacio de tabla directamente al servidor de Tivoli Storage Manager.
  • Servidor de Tivoli Storage Manager: proporciona servicios para almacenar y gestionar los datos del cliente. El servidor puede almacenar datos en dispositivos de almacenamiento de disco y cinta. El servidor de Tivoli Storage Manager Versión 5.5 tiene una base de datos propietaria. Tivoli Storage Manager Versión 6 y posteriores utilizan una base de datos de DB2 para realizar el seguimiento de la información sobre el almacenamiento del servidor, los clientes, los datos del cliente, las políticas y las planificaciones.

Instalación y configuración del cliente de copia de seguridad-archivo de Tivoli Storage Manager

Antes de que pueda realizar la copia de seguridad de una base de datos de DB2 utilizando Tivoli Storage Manager, debe instalar y configurar el cliente de copia de seguridad-archivo del servidor de Tivoli Storage Manager. Para este artículo, el cliente y el servidor están configurados en sistemas AIX® , por lo que se requieren los siguientes componentes:

  • Cliente de copia de seguridad-archivo de Tivoli Storage Manager Versión 6.1, o posterior, para AIX
  • Servidor de Tivoli Storage Manager Versión 6.1, o posterior, para AIX

Instalación del cliente de copia de seguridad-archivo de Tivoli Storage Manager

Como se muestra en la Figura 2, el cliente de copia de seguridad-archivo de Tivoli Storage Manager y la API deben instalarse en un servidor de DB2, y el servidor de Tivoli Storage Manager debe instalarse en un sistema separado. En este ejemplo, el servidor de DB2 está ubicado en un sistema de AIX, de forma que se utiliza AIX System Management Interface Tool (SMIT) para instalar el cliente de copia de seguridad-archivo.

Elija los siguientes conjuntos de archivos cuando instale el cliente de copia de seguridad-archivo:

  • tivoli.tsm.client.ba64
  • tivoli.tsm.client.api.32bit
  • tivoli.tsm.client.api.64bit
  • GSKit8.gskcrypt64.ppc.rte y GSKit8.gskssl64.ppc.rte (requeridos por la API del cliente de 64-bit)

Después de instalar el cliente de copia de seguridad-archivo de Tivoli Storage Manager, ejecute el comando de AIX lslpp para verificar los siguientes conjuntos de archivos instalados:

$ lslpp -L | grep "tivoli"
  
  tivoli.tsm.client.api.32bit
  tivoli.tsm.client.api.64bit
  tivoli.tsm.client.ba.64bit.base
  tivoli.tsm.client.ba.64bit.common
  tivoli.tsm.client.ba.64bit.hdw
  tivoli.tsm.client.ba.64bit.image
  tivoli.tsm.client.ba.64bit.nas
  tivoli.tsm.client.ba.64bit.snphdw
  tivoli.tsm.client.ba.64bit.web

Los directorios de instalación predeterminados del cliente de copia de seguridad-archivo de Tivoli Storage Manager y la API son:

  • Directorio del cliente de copia de seguridad-archivo: /usr/tivoli/tsm/client/ba/bin64
  • Directorio de la API: /usr/tivoli/tsm/client/api/bin64

Configuración del cliente de copia de seguridad-archivo de Tivoli Storage Manager

Para configurar el cliente de copia de seguridad-archivo de Tivoli Storage Manager, complete las siguientes tareas.

  1. Establezca las variables del entorno

    Establezca las siguientes variables de entorno de DSMI en el shell del sistema operativo o en el archivo
    /home/instance_home_dir/sqllib/userprofile.
    DSMI_DIR
    DSMI_CONFIG
    DSMI_LOG

    Importante: el DBMS de DB2 lee estas variables de entorno durante el inicio de la instancia de DB2. Si cambia las variables, debe reiniciar la instancia de DB2 para que los cambios tengan efecto.

    DSMI_DIR
    Esta variable apunta al directorio de instalación de la API. El archivo dsmtca, el archivo dsm.sys y los archivos de idioma deben estar en el directorio al que apunta la variable de entorno DSMI_DIR . Configurar la variable DSMI_DIR es opcional. Si no se especifica, el directorio predeterminado es /usr/tivoli/tsm/client/api/bin64 (para AIX 64-bit).
    DSMI_CONFIG
    Esta variable apunta a la ruta y al nombre del archivo de opciones completos del cliente dsm.opt de Tivoli Storage Manager. Este archivo contiene el nombre del servidor que se utilizará.
    DSMI_LOG
    Esta variable apunta a la ruta del directorio donde se creará el archivo de registro de errores, dsierror.log.

    Añada las siguientes líneas en el archivo userprofile.

    export DSMI_CONFIG=/usr/tivoli/tsm/client/api/bin64/dsm.opt
    export DSMI_LOG=/home/db2inst1
    export DSMI_DIR=/usr/tivoli/tsm/client/api/bin64

    Cierre sesión y vuelva a iniciar sesión como un usuario de instancia y ejecute el archivo .profile.

    $ ~/.profile
  2. Cree el archivo de opciones del cliente dsm.sys

    Inicie sesión utilizando el ID de usuario raíz y cree el archivo dsm.sys con las siguientes entradas (personalice de acuerdo a su instalación). Este archivo debe estar en el directorio especificado por la variable de entorno DSMI_DIR.


    servername tsmdb2              //name of this stanza 
    commmethod tcpip			
    tcpserveraddress  x.xx.xxx.xxx //IP address of Tivoli Storage Manager server
    tcpport 1500                   //Port where Server is listening
    nodename tsmdb2                //Must match nodename on Tivoli Storage Manager server
    passwordaccess generate
  3. Cree el archivo de opciones del cliente dsm.opt

    Inicie sesión utilizando el ID de usuario raíz y cree el archivo dsm.opt. Este archivo de opciones contiene solo una línea, que es una referencia para la stanza de servidor en el archivo dsm.sys. Este archivo debe estar en el directorio especificado por la variable de entorno DSMI_CONFIG.


    Servername   tsmdb2
  4. Recicle la instancia de DB2

    Detenga e inicie la instancia de DB2.


    $ db2stop
    SQL1064N DB2STOP processing was successful.
    $ db2start
    SQL1063N DB2START processing was successful.
  5. Establezca la contraseña de la API

    Para acceder al servidor de Tivoli Storage Manager, los usuarios del cliente (llamados nodos) deben tener una contraseña para acceder al servidor. El programa de DB2 dsmapipw utiliza la API de Tivoli Storage Manager para crear el archivo de contraseña cifrada. La aplicación de DB2 incluye el programa dsmapipw , que está instalado en el directorio /home/instance_home_dir/sqllib/adsm.

    Inicie sesión como usuario raíz para ejecutar el programa dsmapipw . Antes de que ejecute dsmapipw, debe establecer las variables de entorno de DSMI de forma similar a las de la instancia de DB2, como se muestra en el siguiente ejemplo:


    export DSMI_CONFIG=/usr/tivoli/tsm/client/api/bin64/dsm.opt 
    export DSMI_DIR=/usr/tivoli/tsm/client/api/bin64

    Para establecer la contraseña, ejecute el programa dsmapipw desde el directorio /home/instance_home_dir/sqllib/adsm/. Cuando el programa dsmapipw se lo solicite, especifique la contraseña para el nodo de Tivoli Storage Manager que está almacenado en el servidor de Tivoli Storage Manager.


    $ ./dsmapipw
    *************************************************************
    * Tivoli Storage Manager                                    *
    * API Version = 6.1.0                                       *
    *************************************************************
    Enter your current password:
    Enter your new password:
    Enter your new password again:
    
    Your new password has been accepted and updated.

    Consejo: Si utiliza la opción passwordaccess prompt , no tiene que ejecutar el programa dsmapipw .


Consideraciones sobre el servidor de Tivoli Storage Manager

El servidor de Tivoli Storage Manager actúa como un repositorio de almacenamiento central para hacer copia de seguridad y archivar datos de uno o más clientes de Tivoli Storage Manager. El servidor mantiene una base de datos para realizar el seguimiento de datos de clientes, usuarios (nodos, IDs de administrador), políticas de retención de datos y recursos del servidor de Tivoli Storage Manager. La política de retención de datos gestiona las siguientes configuraciones:

  • Durante cuánto tiempo mantener un archivo
  • Durante cuánto tiempo mantener una copia de seguridad
  • Cuántas versiones de una copia de seguridad se mantienen

El servidor también controla el almacenamiento del servidor de Tivoli Storage Manager (agrupaciones de almacenamiento). Estas agrupaciones de almacenamiento almacenan los datos de copia de seguridad y archivo del cliente. Cada agrupación de almacenamiento representa un solo tipo de soporte físico de almacenamiento. Por ejemplo, una agrupación de almacenamiento puede representar una agrupación de discos de acceso aleatorio, otra puede representar una agrupación de cintas de acceso secuencial y una tercera puede representar una agrupación de discos ópticos de acceso secuencial.

Complete los siguientes pasos en el servidor de Tivoli Storage Manager:

  1. Defina el dominio de política.
  2. Defina el conjunto de políticas.
  3. Defina la clase de gestión.
  4. Asigne la clase de gestión predeterminada.
  5. Defina el grupo de copia.
  6. Valide y active el conjunto de políticas.
  7. Registre el nodo de cliente.
  1. Utilice el siguiente comando para definir el dominio de política. Cuando se registra un nodo de cliente, se asigna a un dominio existente y esta asociación de nodos o dominios define de qué manera el servidor de Tivoli Storage Manager gestiona los datos de ese nodo.

    tsm: TSM6120>define domain dbdomain
    ANR1500I Policy domain DBDOMAIN defined.
  2. Utilice el siguiente comando para definir el conjunto de políticas.

    tsm: TSM6120>define policyset dbdomain dbpolicy
    ANR1510I Policy set DBPOLICY defined in policy domain DBDOMAIN.
  3. Utilice el siguiente comando para definir la clase de gestión.

    tsm: TSM6120>define mgmtclass dbdomain dbpolicy dbmgmtclass
    ANR1520I Management class DBMGMTCLASS defined in policy domain DBDOMAIN, set
    DBPOLICY.
  4. Utilice el siguiente comando para asignar una clase de gestión predeterminada.

    tsm: TSM6120>assign defmgmtclass dbdomain dbpolicy dbmgmtclass
    ANR1538I Default management class set to DBMGMTCLASS for policy domain
    DBDOMAIN, set DBPOLICY.
  5. Utilice el siguiente comando para definir el grupo de copias.

    tsm: TSM6120>define copygroup dbdomain dbpolicy dbmgmtclass type=backup dest=ltopool 
    VEREXISTS=1 VERDEL=0 RETEXTRA=0 RETONLY=0
    ANR1530I Backup copy group STANDARD defined in policy domain DBDOMAIN, set
    DBPOLICY, management class DBMGMTCLASS.

    A todos los objetos que almacena la copia de seguridad de DB2 en el servidor de Tivoli Storage Manager se les asigna un nombre exclusivo basado en una indicación de fecha y hora para el objeto. Ya que estos objetos son únicos, nunca expiran automáticamente en el servidor de Tivoli Storage Manager. La herramienta db2adutl se puede utilizar para eliminar (marcar como inactivos) los objetos de copia de seguridad no deseados del servidor de Tivoli Storage Manager.

    Para eliminar las copias de seguridad de DB2 del servidor de Tivoli Storage Manager lo más rápido posible después de que son marcadas como inactivas, el grupo de copias de la copia de seguridad debe tener la siguiente configuración de retención: VEREXISTS=1, VERDEL=0, RETEXTRA=0, RETONLY=0.

  6. Utilice los siguientes comandos para validar y activar el conjunto de políticas.

    tsm: TSM6120>validate policyset dbdomain dbpolicy
    tsm: TSM6120>activate policyset dbdomain dbpolicy
  7. Utilice el siguiente comando para registrar el nodo del cliente. Para acceder al servidor de Tivoli Storage Manager, los nodos deben iniciar sesión en el servidor de Tivoli Storage Manager con sus nombres de nodo y contraseñas respectivos. Emita el siguiente comando para registrar el nodo de DB2 con una contraseña para el servidor y también asigne el nodo al dominio de la política.

    tsm: TSM6120>register node db2node password domain=dbdomain

Técnicas de copia de seguridad

Después de que el servidor de Tivoli Storage Manager y el cliente estén configurados, DB2 puede hacer copia de seguridad de los datos en el servidor de Tivoli Storage Manager. Utilice la opción USE TSM para especificar la información de Tivoli Storage Manager que se utilizará durante la operación de copia de seguridad de la base de datos. Cuando la opción USE TSM se especifica en la operación de copia de seguridad de DB2, se utiliza la API para dirigir la copia de seguridad de la base de datos hacia el servidor de Tivoli Storage Manager. La opción USE TSM instruye a DB2 para que utilice la interfaz de la biblioteca de la API de DB2 que llama a Tivoli Storage Manager. Por ejemplo:
DB2 BACKUP DATABASE database_name USE TSM

Existen varias formas para hacer copias de seguridad de la base de datos de DB2 utilizando Tivoli Storage Manager:

Copia de seguridad offline

Una copia de seguridad offline implica concluir la base de datos antes de que inicie la operación de copia de seguridad y reiniciar la base de datos después de que finaliza la copia de seguridad. Las copias de seguridad offline son relativamente simples de administrar. Sin embargo, los usuarios y los procesos en lote no pueden acceder a la base de datos mientras se está realizando la copia de seguridad. Debe planificar tiempo suficiente para la operación de copia de seguridad.

El siguiente ejemplo muestra cómo ejecutar una copia de seguridad de una base de datos de DB2 offline. El ejemplo utiliza una interfaz de línea de comandos (CLI) de DB2 para realizar la copia de seguridad de la base de datos SAMPLE.

  1. Inicie sesión como un propietario de instancia o con una autoridad mayor.
  2. Asegúrese de que no haya aplicaciones conectadas a la base de datos que desee incluir en su copia de seguridad. Utilice el comando de DB2 LIST APPLICATIONS para verificar si hay alguna aplicación conectada a la base de datos.

    $ db2 list applications for db sample
    
    Auth Id  Application    Appl.      Application Id                DB       # of
             Name           Handle                                   Name    Agents
    -------- -------------- ---------- --------------------------    -------- -----
    db2inst1    db2bp       245        *LOCAL.DB2INST1.120731143027  SAMPLE   3
    db2inst1    db2med      132        *LOCAL.DB2INST1.120731162426  SAMPLE   2
  3. Cierre sesión en todas las aplicaciones que estén conectadas a la base de datos. El paso anterior muestra que dos aplicaciones están conectadas a la base de datos. Utilice el comando FORCE APPLICATION para desconectar las aplicaciones. Para especificar más de una aplicación en el comando FORCE APPLICATION , utilice una coma para separar los descriptores de contexto.

    $ db2 "force application ( 245,132 )"
    DB20000I The FORCE APPLICATION command completed successfully.
    DB21024I This command is asynchronous and might not be effective immediately.
    Consejo: Si hay muchas aplicaciones conectadas a la base de datos, puede utilizar el comando db2 force application all para cerrar sesión en todas ellas. Sin embargo, tenga cuidado al utilizar este comando, ya que cierra sesión en todas las aplicaciones conectadas a cualquier base de datos en la instancia.
  4. Vuelva a emitir el comando LIST APPLICATIONS (vea el paso 2) y verifique que no haya más usuarios conectados a la base de datos.
  5. Utilice el comando BACKUP DATABASE con la opción USE TSM para hacer una copia de seguridad de la base de datos.

    $ db2 backup db sample use tsm
    
    Backup successful. The timestamp for this backup image is : 20120806185756

Copia de seguridad online

En un sistema de base de datos de DB2, puede hacer copia de seguridad de los datos mientras la base de datos está iniciada y en uso. Obviamente, si se está haciendo copia de seguridad de una base de datos mientras los usuarios la están actualizando, es posible que los datos de la copia de seguridad sean inconsistentes. El DBMS de DB2 utiliza archivos de registro durante el proceso de recuperación para recuperar la base de datos en un estado totalmente consistente. Este proceso requiere que los archivos de registro se recolecten al inicio y al final de la copia de seguridad de la base de datos.

Al final de una copia de seguridad online, el registro activo actual se archiva y se incluye en la imagen de la copia de seguridad. Al utilizar el método online, puede recolectar el conjunto de archivos de registro que se requiere para recuperar la base de datos.

Restricción: Durante una copia de seguridad online, diversas aplicaciones pueden trabajar en la base de datos. Sin embargo, algunos programas, tales como REORG TABLE, no son compatibles con una copia de seguridad online y no se pueden utilizar mientras la copia de seguridad está activa.

El siguiente ejemplo muestra cómo ejecutar una copia de seguridad de base de datos de DB2 online. El ejemplo utiliza la CLI de DB2 para realizar la copia de seguridad de la base de datos SAMPLE.

  1. Inicie sesión como administrador de la base de datos o con una autoridad mayor.
  2. Utilice el comando BACKUP DATABASE con las opciones ONLINE y USE TSM para hacer la copia de seguridad de la base de datos.

    $ db2 backup db sample online use tsm
    
    Backup successful. The timestamp for this backup image is : 20120805223343

Copia de seguridad de espacio de tabla

El DBMS de DB2 facilita la copia de seguridad en el nivel de espacio de tabla en ciertas situaciones en las que no desee hacer una copia de seguridad de la base de datos completa. Por ejemplo, finalizó su copia de seguridad de la base de datos completa y, posteriormente, un usuario realizó una inserción grande o una carga para tablas importantes en un espacio de tabla específico. El usuario desea que los datos nuevos estén en una copia de seguridad. Como no desea repetir la copia de seguridad de la base de datos entera, puede hacer una copia de seguridad en el nivel del espacio de tabla. Puede realizar una copia de seguridad en el nivel del espacio de tabla offline u online. Debe habilitar la recuperación de puesta al día para realizar una copia de seguridad online.

El siguiente ejemplo muestra cómo ejecutar una copia de seguridad de espacio de tabla. El ejemplo utiliza la CLI de DB2 para realizar la copia de seguridad del espacio de tabla DATA1 en la base de datos SAMPLE.

  1. Inicie sesión como administrador de la base de datos o con una autoridad mayor.
  2. Utilice el comando BACKUP DATABASE con las opciones TABLESPACE y USE TSM para hacer la copia de seguridad del espacio de tabla. Si desea hacer una copia de seguridad online, incluya la opción ONLINE .

    $ db2 backup db sample tablespace DATA1 online use tsm
    
    Backup successful. The timestamp for this backup image is : 20120805223621

Técnicas de recuperación

La función principal de cualquier DBMS es recuperar la base de datos desde el punto donde falló. El DBMS de DB2 tiene diversas características y funciones que puede utilizar para gestionar su base de datos y realizar una recuperación estándar siempre que sea necesario. Si bien resulta imposible recuperar la base de datos en todas las fallas, puede garantizar que la recuperación sea posible para la mayoría de las situaciones donde haya una pérdida mínima de datos. Existen diversos métodos disponibles para restaurar la base de datos a partir de una imagen de copia de seguridad.

Recuperación de versión

Utilice la recuperación de versión para restaurar una versión previa de la base de datos a partir de una imagen de copia de seguridad que fue creada utilizando el comando BACKUP DATABASE . Cuando restaura la base de datos, la base de datos completa se compila nuevamente utilizando una copia de seguridad de la base de datos hecha en un punto anterior. Puede utilizar la imagen de copia de seguridad de una base de datos para restaurar la base de datos y crear una copia de la base de datos que estaba ahí cuando se generó la imagen de la copia de seguridad.

Solo las bases de datos que no están habilitadas para la recuperación de puesta al día pueden hacer la recuperación de versión. Se dice que son bases de datos no recuperables (es decir, todas las transacciones realizadas después de tomar la imagen de la copia de seguridad se han perdido). Todos los usuarios deben estar desconectados de la base de datos para que se realice la recuperación de versión.

Siga estos pasos para recuperar una base de datos utilizando la recuperación de versión. Estos pasos utilizan la CLI de DB2 para recuperar la base de datos SAMPLE.

  1. Utilice el comando LIST HISTORY con la opción BACKUP para encontrar la imagen de copia de seguridad que desea restaurar.

    $ db2 list history backup all for sample
    
     Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log  Backup ID
     -- --- ------------------ ---- --- ------------ ------------ --------------
      B  D  20120805223343001   N    A  S0000002.LOG S0000002.LOG
     ----------------------------------------------------------------------------
      Contains 7 tablespace(s):
    
      00001 SYSCATSPACE
      00002 USERSPACE1
      00003 IBMDB2SAMPLEREL
      00004 IBMDB2SAMPLEXML
      00005 TEST1
      00006 DATA1
      00007 SYSTOOLSPACE
     ----------------------------------------------------------------------------
        Comment: DB2 BACKUP SAMPLE ONLINE
     Start Time: 20120805223343
       End Time: 20120805223401
         Status: A
     ----------------------------------------------------------------------------
      EID: 15 Location: adsm/libtsm.a
    
    
     Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log  Backup ID
     -- --- ------------------ ---- --- ------------ ------------ --------------
      B  D  20120805223343002   N    A  S0000002.LOG S0000002.LOG
     ----------------------------------------------------------------------------
      Contains 7 tablespace(s):
    
      00001 SYSCATSPACE
      00002 USERSPACE1
      00003 IBMDB2SAMPLEREL
      00004 IBMDB2SAMPLEXML
      00005 TEST1
      00006 DATA1
      00007 SYSTOOLSPACE
     ----------------------------------------------------------------------------
        Comment: DB2 BACKUP SAMPLE ONLINE
     Start Time: 20120805223343
       End Time: 20120805223401
         Status: A
     ----------------------------------------------------------------------------
      EID: 16 Location: adsm/libtsm.a
  2. Utilice el comando RESTORE DATABASE con la opción USE TSM para restaurar la base de datos. La opción USE TSM le dice al DBMS que utilice la API de Tivoli Storage Manager para leer el archivo de copia de seguridad y restaurarlo.

    $  db2 restore db sample use tsm taken at 20120805223343
    SQL2539W  Warning!  Restoring to an existing database that is the same as the
    backup image database.  The database files will be deleted.
    Do you want to continue ? (y/n) y
    DB20000I  The RESTORE DATABASE command completed successfully.

Recuperación de puesta al día de la base de datos

La recuperación de puesta al día de la base de datos mejora la recuperación de versión mediante copias de seguridad de la base de datos completa y archivos de registro para restaurar una base de datos o espacios de tabla seleccionados para un punto particular. Estas bases de datos se denominan bases de datos recuperables. Con una imagen de copia de seguridad de base de datos completa como línea de base, si tiene todos los archivos de registro disponibles desde el momento de la copia de seguridad hasta el momento actual, puede aplicar todas las transacciones en cualquiera de los espacios de tabla o en todos en la base de datos, hasta cualquier punto dentro del periodo de tiempo cubierto por los registros. Con las bases de datos recuperables, puede restaurar la base de datos y aplicar los registros hasta el punto de la falla sin perder ninguna transacción.

En DB2, la recuperación de puesta al día se especifica en el nivel de la base de datos y debe estar habilitada de forma explícita.

Restauración de puesta al día de la base de datos completa

La base de datos se puede restaurar y poner al día hasta el final de los registros. Los siguientes pasos utilizan la CLI de DB2 para recuperar la base de datos SAMPLE.

  1. Utilice el comando RESTORE DATABASE con la opción USE TSM y especifique la indicación de fecha y hora de la imagen de la copia de seguridad que necesita restaurar.

    $  db2 restore db sample use tsm taken at 20120805223343
    SQL2539W  Warning!  Restoring to an existing database that is the same as the
    backup image database.  The database files will be deleted.
    Do you want to continue ? (y/n) y
    DB20000I  The RESTORE DATABASE command completed successfully.
  2. Utilice el comando ROLLFORWARD DATABASE para aplicar todos los registros.

    $ db2 rollforward db sample to end of logs and stop
    
                                     Rollforward Status
    
     Input database alias                   = sample
     Number of nodes have returned status   = 1
    
     Node number                            = 0
     Rollforward status                     = not pending
     Next log file to be read               =
     Log files processed                    = S0000002.LOG - S0000003.LOG
     Last committed transaction             = 2012-08-05-17.06.21.000000 UTC
    
    DB20000I  The ROLLFORWARD command completed successfully.

Restauración de puesta al día de espacio de tabla

Con las bases de datos recuperables, puede recuperar la base de datos completa o solo los espacios de tabla que necesitan ser recuperados. El espacio de tabla se puede recuperar offline u online. Puede utilizar una imagen de copia de seguridad a partir de una copia de seguridad de espacio de tabla anterior o de una copia de seguridad de base de datos anterior.

Los siguientes pasos utilizan la CLI de DB2 para recuperar el espacio de tabla DATA1 en la base de datos SAMPLE.

  1. Utilice el comando RESTORE DATABASE con las opciones TABLESPACE y USE TSM y especifique la indicación de fecha y hora de la imagen de copia de seguridad.

    $ db2 "restore db sample tablespace (DATA1) online use tsm taken at 20120805223621"
    DB20000I  The RESTORE DATABASE command completed successfully.
  2. Utilice el comando ROLLFORWARD DATABASE con la opción TABLESPACE para aplicar todos los registros para el espacio de tabla recuperado.

    $ db2 "rollforward db sample to end of logs and stop tablespace (DATA1) online"
    
                                     Rollforward Status
    
     Input database alias                   = sample
     Number of nodes have returned status   = 1
    
     Node number                            = 0
     Rollforward status                     = not pending
     Next log file to be read               =
     Log files processed                    =  -
     Last committed transaction             = 2012-08-05-17.06.21.000000 UTC
    
    DB20000I  The ROLLFORWARD command completed successfully.

Puesta al día hasta un punto en el tiempo

Este tipo de operación de puesta al día actualiza la base de datos o los espacios de tabla hasta un punto específico. Durante una copia de seguridad online, normalmente, los registros se actualizan a partir de transacciones nuevas. La retrotracción elimina transacciones no confirmadas en la base de datos. Sin embargo, cuando la transacción está confirmada, la retrotracción no es posible. Para eliminar datos no deseados principalmente debido a errores de usuario, puede realizar una recuperación a un punto en el tiempo (PIT). Una recuperación PIT, sin embargo, no puede realizarse en espacios de tabla que contienen catálogos de sistema.

Para la recuperación PIT, primero restaure la base de datos o los espacios de tabla. Después, aplique los registros hasta un punto específico en el tiempo. En el siguiente ejemplo, la recuperación PIT se realiza para los espacios de tabla DATA1 y TEST1 en la base de datos SAMPLE.

  1. Utilice el comando RESTORE DATABASE con las opciones TABLESPACE y USE TSM y especifique la indicación de fecha y hora de la imagen de copia de seguridad.

    $ db2 "restore db sample tablespace (DATA1, TEST1) online use tsm 
    taken at 20120805223343"
    DB20000I  The RESTORE DATABASE command completed successfully.
  2. Utilice el comando ROLLFORWARD DATABASE con la opción TABLESPACE para aplicar los registros para los espacios de tabla recuperados hasta un punto en el tiempo específico. Especifique el punto en el tiempo en formato de tiempo universal coordinado (UTC). El punto en el tiempo debe ser mayor que el tiempo de recuperación mínimo.

    $  db2 "rollforward db sample to 2012-08-05-16.26.48.000000 and stop 
    tablespace (DATA1, TEST1) online"
    
                                     Rollforward Status
    
     Input database alias                   = sample
     Number of nodes have returned status   = 1
    
     Node number                            = 0
     Rollforward status                     = not pending
     Next log file to be read               =
     Log files processed                    =  -
     Last committed transaction             = 2012-08-05-17.06.21.000000 UTC
    
    DB20000I  The ROLLFORWARD command completed successfully.

    Los dos espacios de tabla ahora están en estado pendiente de copia de seguridad (0x0020).


    $ db2 list tablespaces show detail
    .....
    .....
     Tablespace ID                        = 5
     Name                                 = TEST1
     Type                                 = Database managed space
     Contents                             = All permanent data. Large table space.
     State                                = 0x0020
       Detailed explanation:
         Backup pending
     Total pages                          = 4096
     Useable pages                        = 4064
     Used pages                           = 96
     Free pages                           = 3968
     High water mark (pages)              = 96
     Page size (bytes)                    = 8192
     Extent size (pages)                  = 32
     Prefetch size (pages)                = 32
     Number of containers                 = 1
    
     Tablespace ID                        = 6
     Name                                 = DATA1
     Type                                 = Database managed space
     Contents                             = All permanent data. Large table space.
     State                                = 0x0020
    .....
    .....
  3. Utilice el comando BACKUP DATABASE con las opciones USE TSM y TABLESPACE para hacer la copia de seguridad de los espacios de tabla.

    $ db2 "backup db SAMPLE tablespace (DATA1, TEST1) online use tsm"
    
    Backup successful. The timestamp for this backup image is : 20120806115021

Ahora, puede acceder satisfactoriamente y trabajar con los espacios de tabla DATA1 y TEST1 en la base de datos SAMPLE.


Conclusión

Este artículo presentó cómo se puede utilizar Tivoli Storage Manager para realizar copias de seguridad y restaurar bases de datos de DB2. Aprendió cómo configurar el cliente y el servidor de Tivoli Storage Manager, y vio consideraciones que debe tener en cuenta durante la configuración inicial. El artículo también proporcionó instrucciones paso a paso que le mostraron cómo realizar operaciones de copia de seguridad y restauración de puesta al día utilizando una imagen de copia de seguridad almacenada en el servidor de Tivoli Storage Manager. Ahora que entiende cómo ejecutar estas operaciones, puede aprovechar las funciones de gestión de datos de Tivoli Storage Manager para sus bases de datos de DB2.

Recursos

Aprender

  • Tivoli Storage Manager ofrece una gran variedad de capacidades de gestión de almacenamiento.
  • Tivoli software from IBM es un excelente punto de partida para obtener información sobre los productos y servicios de Tivoli.
  • Vea DBA Central para expandir sus conocimientos sobre administración y ajustes de base de datos.
  • Acceda a la zona Information Management para aprender más sobre DB2. Puede encontrar información sobre el producto, descargas, artículos técnicos y mucho más.

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Information mgmt
ArticleID=965134
ArticleTitle=Utilice Tivoli Storage Manager para realizar copias de seguridad y recuperar bases de datos de DB2
publish-date=10172012