Trabajo con copias de seguridad de réplicas de RDS para Db2 - Amazon Relational Database Service

Trabajo con copias de seguridad de réplicas de RDS para Db2

Puede crear y restaurar copias de seguridad de una réplica de RDS para Db2 solo como una base de datos principal. Sin embargo, existen diferencias importantes en el funcionamiento de las copias de seguridad de las réplicas, especialmente en lo que respecta al tiempo de restauración y la configuración de retención de las copias de seguridad.

RDS para Db2 admite copias de seguridad automáticas e instantáneas manuales para réplicas. RDS para Db2 no admite la restauración en un momento dado. Para obtener información sobre las copias de seguridad de RDS, consulte Copia de seguridad, restauración y exportación de datos.

Diferencias clave para las copias de seguridad de las réplicas

Las copias de seguridad de las réplicas difieren de las copias de seguridad de la base de datos principal en varios aspectos importantes:

  • Las copias de seguridad automáticas no están habilitadas de forma predeterminada para las réplicas.

  • Las operaciones de restauración utilizan el tiempo de la base de datos en lugar del tiempo de creación de la copia de seguridad.

  • El retraso de la réplica puede afectar a los datos reales restaurados. Para obtener información sobre la supervisión del retraso de la réplica, consulte Supervisión del retardo de replicación de Db2.

Habilitación de copias de seguridad automáticas para réplicas de RDS para Db2

A diferencia de las bases de datos principales, las réplicas de RDS para Db2 no tienen habilitadas las copias de seguridad automáticas de forma predeterminada. Debe configurar manualmente el periodo de retención de copia de seguridad para habilitar las copias de seguridad automáticas. Habilite las copias de seguridad automáticas mediante el establecimiento del periodo de retención de copia de seguridad en un valor positivo distinto de cero.

Habilitación de las copias de seguridad automáticas inmediatamente
  1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. En el panel de navegación, elija Databases (Bases de datos) y, a continuación, seleccione la instancia de base de datos que desee modificar.

  3. Elija Modify.

  4. En Periodo de retención de copia de seguridad, elija un valor positivo distinto de cero, por ejemplo, tres días.

  5. Elija Continue.

  6. Seleccione Apply immediately (Aplicar inmediatamente).

  7. Elija Modificar la instancia de base de datos para guardar los cambios y habilitar las copias de seguridad automatizadas.

Para habilitar las copias de seguridad automáticas, utilice el comando modify-db-instance de la AWS CLI.

Incluya los siguientes parámetros:

  • --db-instance-identifier

  • --backup-retention-period

  • --apply-immediately o --no-apply-immediately

El ejemplo siguiente habilita las copias de seguridad automáticas estableciendo el periodo de retención de copia de seguridad en tres días. Los cambios se aplican inmediatamente.

Para Linux, macOS o Unix:

aws rds modify-db-instance \ --db-instance-identifier my_db_instance \ --backup-retention-period 3 \ --apply-immediately

Para Windows:

aws rds modify-db-instance ^ --db-instance-identifier my_db_instance ^ --backup-retention-period 3 ^ --apply-immediately

Para habilitar las copias de seguridad automáticas, utilice la operación ModifyDBInstance de la API de RDS con los siguientes parámetros obligatorios:

  • DBInstanceIdentifier

  • BackupRetentionPeriod

Restauración de una copia de seguridad de réplicas de RDS para Db2

Puede restaurar una copia de seguridad de una réplica de RDS para Db2 del mismo modo que restaura una copia de seguridad de la base de datos principal. Para obtener más información, consulte Restauración a una instancia de base de datos.

La consideración más importante a la hora de restaurar copias de seguridad de réplicas es entender la diferencia entre la hora de creación de la base de datos y la hora de creación de la copia de seguridad, especialmente cuando hay un retraso en la réplica.

Puede supervisar el retraso de la replicación y asegurarse de que las copias de seguridad contengan los datos esperados. Para obtener información acerca de la métrica de retraso de réplicas, consulte Métricas de Amazon CloudWatch para Amazon RDS.

Descripción de las diferencias de tiempo

Cuanto restaura una copia de seguridad de réplicas, debe determinar el punto en el tiempo en el que se va a restaurar. El tiempo de base de datos se refiere a la última hora de la transacción aplicada de los datos de la copia de seguridad. Cuando restaura una copia de seguridad de réplicas, se restaura la hora de la base de datos, no la hora en que se realizó la copia de seguridad. La diferencia es significativa porque una réplica puede tener un retardo de minutos u horas con respecto a la base de datos principal. Por lo tanto, la hora de la base de datos de una copia de seguridad de réplicas puede ser mucho más anterior a la hora de creación de la instantánea.

Para averiguar la diferencia entre la hora de la base de datos y la hora de creación, ejecute el comando describe-db-snapshots de AWS CLI o llame a la operación DescribeDBSnapshots de la API de RDS. Compare los valores SnapshotDatabaseTime y OriginalSnapshotCreateTime. El valor SnapshotDatabaseTime es la hora más antigua de la base de datos entre todas las bases de datos de la copia de seguridad de la réplica. El valor OriginalSnapshotCreateTime es la última transacción aplicada en la base de datos principal. Tenga en cuenta que los retardos de replicación pueden ser diferentes para varias bases de datos y la hora de la base de datos podría estar entre estas dos horas.

El siguiente ejemplo de la AWS CLI muestra la diferencia entre las dos horas:

Para Linux, macOS o Unix:

aws rds describe-db-snapshots \ --db-instance-identifier my_db2_replica \ --db-snapshot-identifier my_replica_snapshot

Para Windows:

aws rds describe-db-snapshots ^ --db-instance-identifier my_db2_replica ^ --db-snapshot-identifier my_replica_snapshot

El resultado de este comando debería ser similar al siguiente ejemplo.

{
    "DBSnapshots": [
        {
            "DBSnapshotIdentifier": "my_replica_snapshot",
            "DBInstanceIdentifier": "my_db2_replica", 
            "SnapshotDatabaseTime": "2022-07-26T17:49:44Z",
            ...
            "OriginalSnapshotCreateTime": "2021-07-26T19:49:44Z"
        }
    ]
}