{"id":776,"date":"2020-07-27T17:10:36","date_gmt":"2020-07-27T20:10:36","guid":{"rendered":"https:\/\/www.fernandosimon.com\/blog\/?p=776"},"modified":"2020-07-27T17:10:36","modified_gmt":"2020-07-27T20:10:36","slug":"zdlra-protecting-databases-with-replication","status":"publish","type":"post","link":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/","title":{"rendered":"ZDLRA, Protecting Databases with Replication"},"content":{"rendered":"<p style=\"text-align: justify;\">The replication for ZDLRA works differently than normal DataGuard, but you can reach almost the same level of multiple site protection with that. The replication for ZDLRA is not complicated but can be divided into several steps. Basically, to protect a database (since you have everything configure) is done linking the database with the protection policy that is replicated.<\/p>\n<p style=\"text-align: justify;\">In my previous posts, I already wrote about all the steps to reach this configuration. Starting with an <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-replication\/\" target=\"_blank\" rel=\"noopener noreferrer\">explanation about replication<\/a>, <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-configuring-replication-network\/\" target=\"_blank\" rel=\"noopener noreferrer\">how to configure the replication network<\/a> between ZDLRA\u2019s, <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-creating-the-replication-server\/\" target=\"_blank\" rel=\"noopener noreferrer\">how to configure the replication server<\/a>,&nbsp; and <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-creating-the-replication-config\/\" target=\"_blank\" rel=\"noopener noreferrer\">how to create the replication config<\/a> (that links everything is done before).<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-771 size-full\" src=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png\" alt=\"\" width=\"651\" height=\"482\" srcset=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png 651w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1-300x222.png 300w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1-624x462.png 624w\" sizes=\"auto, (max-width: 651px) 100vw, 651px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">But most of the time we don\u2019t need to pass through all of these steps. Usually, the ZDLRA is deployed with the replication network already configured, or you already deploy two ZDLRA\u2019s that will operate replicated. This part I consider the \u201cphysical\u201d part of the configuration because evolves network and details that we usually don\u2019t touch after configured. The \u201clogical\u201d part comes after and evolves all the definitions about what policies will be replicated, which databases will be part of each policy, and so on. This \u201clogical\u201d configuration I explained in this <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-creating-the-replication-config\/\" target=\"_blank\" rel=\"noopener noreferrer\">previous post<\/a>.<\/p>\n<p style=\"text-align: justify;\">But it is important to know how it\u2019s working to understand all the details. And if you need, you can check <a href=\"https:\/\/www.fernandosimon.com\/blog\/category\/engineeredsystems\/zdlra\/replication\/\" target=\"_blank\" rel=\"noopener noreferrer\">my posts about the replication for ZDLRA<\/a>.<\/p>\n<p style=\"text-align: justify;\">In this post, I will show more details on how the ZDLRA replication impact over the backup for your database, and show the protection occurs to reduce your RPO to a minimum.<\/p>\n<p style=\"text-align: justify;\"><!--more Click here to read more...--><\/p>\n<h2 style=\"text-align: justify;\">Replication, Policies, and Databases<\/h2>\n<p style=\"text-align: justify;\">A little recap. The most important to understand about the replication is that is done based on protection policies. ZDLRA does not replicate database per database, it replicates policies. So, every database that is linked with the policy will be replicated.<\/p>\n<p style=\"text-align: justify;\">You can have more than one protection policy that is replicated between the same ZDLRA\u2019s, and this link directly with the MAA Architecture where you have more than one SLA that needs to be sustained (like recovery window requirements as an example). And the caveat it is that, maybe, you need to double part of your policies because it is possible that you don\u2019t want to replicate all databases for that policy. So, you will create another policy and drop all databases to be replicated there. But remember that when you do that, you need to check again your clone to tapes because they can be linked with policies (and not with backups tags of another configuration). And if this occurs, you will need to reorganize your clone to the tape schedule.<\/p>\n<p style=\"text-align: justify;\">It is important to also understand that replication is done as soon as possible. So, after every backup that is ingested at upstream ZDLRA (and after it is validated), it is replicated ASAP. I already explained this in previous posts, but the full backup it is not replicated, just the incremental and the archivelogs are. Think that your datafile has more than 20TB, you will wait until the virtual full is generated and replicate after that? If you do this you lose protection because, in case of an entire datacenter failure, your backup is not replicate in a secure environment.&nbsp; And since the virtual full backup will be created (at downstream) it will be equal to that one that was created at upstream.<\/p>\n<h2 style=\"text-align: justify;\">Base Config<\/h2>\n<p style=\"text-align: justify;\">The base config is the same as I create in my <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-creating-the-replication-config\/\" target=\"_blank\" rel=\"noopener noreferrer\">previous post<\/a>. I have the ORCL19 database that is linked with the protection policy ZDLRAUP_BRONZE trough a replication server called ZDLRAS2_REP.<\/p>\n<h2 style=\"text-align: justify;\">Replicated Protection<\/h2>\n<p style=\"text-align: justify;\">To use the replication we just need to do a backup of the database. So, below you can see a simple backup for datafile 1. This backup is the first backup that I am doing for the database at this ZDLRA, so it is a level 0 backup.<\/p>\n<p style=\"text-align: justify;\">First, look that I connected at upstream ZDLRA (ZDLRAS1 in this scenario).<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[oracle@orcloel7 ~]$ rman target=\/ catalog=vpcsrc\/vpcsrc@zdlras1-scan:1521\/zdlras1\r\n\r\nRecovery Manager: Release 19.0.0.0.0 - Production on Thu Jul 9 22:54:55 2020\r\nVersion 19.3.0.0.0\r\n\r\nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\r\n\r\nconnected to target database: ORCL19 (DBID=323177095)\r\nconnected to recovery catalog database\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">And executed the first backup of datafile 1:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; BACKUP INCREMENTAL LEVEL 0 DEVICE TYPE SBT FILESPERSET 1 DATAFILE 1 TAG 'BKP-DB-INCR0-REP';\r\n\r\nStarting backup at 09\/07\/2020 23:31:06\r\nreleased channel: ORA_DISK_1\r\nallocated channel: ORA_SBT_TAPE_1\r\nchannel ORA_SBT_TAPE_1: SID=37 device type=SBT_TAPE\r\nchannel ORA_SBT_TAPE_1: RA Library (ZDLRAS1) SID=AA098857038E149DE053010310AC801E\r\nchannel ORA_SBT_TAPE_1: starting incremental level 0 datafile backup set\r\nchannel ORA_SBT_TAPE_1: specifying datafile(s) in backup set\r\ninput datafile file number=00001 name=\/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\nchannel ORA_SBT_TAPE_1: starting piece 1 at 09\/07\/2020 23:31:09\r\nchannel ORA_SBT_TAPE_1: finished piece 1 at 09\/07\/2020 23:33:24\r\npiece handle=ORCL19_3fv4tjdt_1_1 tag=BKP-DB-INCR0-REP comment=API Version 2.0,MMS Version 12.2.0.2\r\nchannel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:02:15\r\nFinished backup at 09\/07\/2020 23:33:24\r\n\r\nStarting Control File and SPFILE Autobackup at 09\/07\/2020 23:33:24\r\npiece handle=c-323177095-20200709-02 comment=API Version 2.0,MMS Version 12.2.0.2\r\nFinished Control File and SPFILE Autobackup at 09\/07\/2020 23:33:41\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">And as you can see here, it was replicated:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; list backup of datafile 1 tag = 'BKP-DB-INCR0-REP';\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n25797   Incr 0  325.02M\r\n  List of Datafiles in backup set 25797\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    0  Incr 2414591    09\/07\/2020 23:31:09              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #1 of backup set 25797\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:04:57     09\/07\/2020 23:36:11 YES        BKP-DB-INCR0-REP\r\n\r\n    List of Backup Pieces for backup set 25797 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    25798   1   AVAILABLE                           VB$_1891149551_25782I\r\n\r\n  Backup Set Copy #2 of backup set 25797\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:04:57     09\/07\/2020 23:36:06 YES        BKP-DB-INCR0-REP\r\n\r\n    List of Backup Pieces for backup set 25797 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    25811   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_12535I\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">Some details here:<\/p>\n<ul style=\"text-align: justify;\">\n<li>The replication occurred at the backupset level.<\/li>\n<li>The backupset has two backuppiesces.<\/li>\n<li>The copy without \u201cMedia\u201d information is local (at upstream), the \u201cMedia\u201d for replicate will show the same name as the server.<\/li>\n<li>The TAG is the same for every copy.<\/li>\n<li>Completion time will be different for each ZDLRA.<\/li>\n<li>All the integration at the ZDLRA catalog was made automatically by ZDLRA. Like registration of additional copies.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Inside of ZDLRA, the replication occurs based in \u201ctasks\u201d for each backupset and you can follow at rasys.ra_task table:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">SQL&gt; select TASK_ID, TASK_TYPE, STATE, WAITING_ON, DB_KEY, DB_UNIQUE_NAME, CREATION_TIME, ERROR_COUNT, INTERRUPT_COUNT, BP_KEY,BS_KEY,DF_KEY,VB_KEY from rasys.ra_task where archived = 'N' order by 5,2,7,10,11,12,13;\r\n\r\n   TASK_ID TASK_TYPE                      STATE                     WAITING_ON     DB_KEY DB_UNIQUE_NAME                 CREATION_TIME                       ERROR_COUNT INTERRUPT_COUNT     BP_KEY     BS_KEY     DF_KEY     VB_KEY\r\n---------- ------------------------------ ------------------------- ---------- ---------- ------------------------------ ----------------------------------- ----------- --------------- ---------- ---------- ---------- ----------\r\n     42384 BACKUP_SBT                     RUNNING                                   25140 ORCL19                         09-JUL-20 11.33.16.448006 PM +02:00           0               0                 25667\r\n     42386 BACKUP_SBT                     RUNNING                                   25140 ORCL19                         09-JUL-20 11.33.16.999633 PM +02:00           0               0                 25732\r\n     42390 BACKUP_SBT                     RUNNING                                   25140 ORCL19                         09-JUL-20 11.33.35.585173 PM +02:00           0               0                 25761\r\n     42389 INDEX_BACKUP                   RUNNING                                   25140 ORCL19                         09-JUL-20 11.33.17.548351 PM +02:00           0               0      25733\r\n\r\nSQL&gt;<\/pre>\n<p style=\"text-align: justify;\">And doing a subsequent level 1 of datafile 1:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt;  backup incremental level 1 datafile 1 tag = 'BKP-DB-INCR1-REP';\r\n\r\nStarting backup at 09\/07\/2020 23:52:10\r\nallocated channel: ORA_SBT_TAPE_1\r\nchannel ORA_SBT_TAPE_1: SID=37 device type=SBT_TAPE\r\nchannel ORA_SBT_TAPE_1: RA Library (ZDLRAS1) SID=AA0988570390149DE053010310AC801E\r\nchannel ORA_SBT_TAPE_1: starting incremental level 1 datafile backup set\r\nchannel ORA_SBT_TAPE_1: specifying datafile(s) in backup set\r\ninput datafile file number=00001 name=\/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\nchannel ORA_SBT_TAPE_1: starting piece 1 at 09\/07\/2020 23:52:11\r\nchannel ORA_SBT_TAPE_1: finished piece 1 at 09\/07\/2020 23:52:14\r\npiece handle=ORCL19_3lv4tklb_1_1 tag=BKP-DB-INCR1-REP comment=API Version 2.0,MMS Version 12.2.0.2\r\nchannel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:00:03\r\nFinished backup at 09\/07\/2020 23:52:14\r\n\r\nStarting Control File and SPFILE Autobackup at 09\/07\/2020 23:52:14\r\npiece handle=c-323177095-20200709-05 comment=API Version 2.0,MMS Version 12.2.0.2\r\nFinished Control File and SPFILE Autobackup at 09\/07\/2020 23:52:22\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">I will have both replicated. The level 1, and the virtual full backup:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; list backup tag = 'BKP-DB-INCR1-REP';\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n26088   Incr 1  48.00K\r\n  List of Datafiles in backup set 26088\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    1  Incr 2417536    09\/07\/2020 23:52:11              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #1 of backup set 26088\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:06:06     09\/07\/2020 23:52:12 YES        BKP-DB-INCR1-REP\r\n\r\n    List of Backup Pieces for backup set 26088 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26089   1   AVAILABLE                           VB$_1891149551_26087I\r\n\r\n  Backup Set Copy #3 of backup set 26088\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:06:06     09\/07\/2020 23:58:17 YES        BKP-DB-INCR1-REP\r\n\r\n    List of Backup Pieces for backup set 26088 Copy #3\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26136   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_12565I\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n26092   Incr 0  323.90M\r\n  List of Datafiles in backup set 26092\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    0  Incr 2417536    09\/07\/2020 23:52:11              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #1 of backup set 26092\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:06:06     09\/07\/2020 23:52:12 YES        BKP-DB-INCR1-REP\r\n\r\n    List of Backup Pieces for backup set 26092 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26093   1   AVAILABLE                           VB$_1891149551_26087_1\r\n\r\n  Backup Set Copy #2 of backup set 26092\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:06:06     09\/07\/2020 23:58:17 YES        BKP-DB-INCR1-REP\r\n\r\n    List of Backup Pieces for backup set 26092 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26134   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_12565_1\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">As you can see above, each backup was replicated. And the replication occurred for the incremental level 1, and for the virtual full backup. Above, look that the tags are the same. About how the virtual full backups works I explained <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-virtual-full-backup-and-incremental-forever\/\" target=\"_blank\" rel=\"noopener noreferrer\">in a dedicated post<\/a>.<\/p>\n<p style=\"text-align: justify;\">The virtual full backup was generated at both ZDLRA\u2019s (upstream and downstream) based on the ingested incremental level 1. It was ingested at upstream, sent do downstream and both generated the virtual full. And since they have the same SCN, they are considered equal.<\/p>\n<h3 style=\"text-align: justify;\">Archivelogs<\/h3>\n<p style=\"text-align: justify;\">The same protection is done for backups of archivelogs:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; BACKUP DEVICE TYPE SBT ARCHIVELOG ALL TAG 'BKP-ARCH';\r\n\r\nStarting backup at 10\/07\/2020 00:04:59\r\ncurrent log archived\r\nusing channel ORA_SBT_TAPE_1\r\nchannel ORA_SBT_TAPE_1: starting archived log backup set\r\nchannel ORA_SBT_TAPE_1: specifying archived log(s) in backup set\r\ninput archived log thread=1 sequence=28 RECID=57 STAMP=1029524127\r\ninput archived log thread=1 sequence=29 RECID=59 STAMP=1029524475\r\ninput archived log thread=1 sequence=30 RECID=61 STAMP=1029524606\r\ninput archived log thread=1 sequence=31 RECID=63 STAMP=1037543212\r\ninput archived log thread=1 sequence=32 RECID=65 STAMP=1045347143\r\ninput archived log thread=1 sequence=33 RECID=66 STAMP=1045353901\r\nchannel ORA_SBT_TAPE_1: starting piece 1 at 10\/07\/2020 00:05:05\r\nchannel ORA_SBT_TAPE_1: finished piece 1 at 10\/07\/2020 00:05:40\r\npiece handle=ORCL19_3nv4tldh_1_1 tag=BKP-ARCH comment=API Version 2.0,MMS Version 12.2.0.2\r\nchannel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:00:35\r\nFinished backup at 10\/07\/2020 00:05:40\r\n\r\nStarting Control File and SPFILE Autobackup at 10\/07\/2020 00:05:40\r\npiece handle=c-323177095-20200710-00 comment=API Version 2.0,MMS Version 12.2.0.2\r\nFinished Control File and SPFILE Autobackup at 10\/07\/2020 00:05:49\r\n\r\nRMAN&gt; list backup tag = 'BKP-ARCH';\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Size\r\n------- ----------\r\n26199   142.50M\r\n\r\n  List of Archived Logs in backup set 26199\r\n  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time\r\n  ---- ------- ---------- ------------------- ---------- ---------\r\n  1    28      2297422    10\/01\/2020 01:08:09 2298810    12\/01\/2020 18:55:26\r\n  1    29      2298810    12\/01\/2020 18:55:26 2310760    12\/01\/2020 19:01:07\r\n  1    30      2310760    12\/01\/2020 19:01:07 2311714    12\/01\/2020 19:03:26\r\n  1    31      2311714    12\/01\/2020 19:03:26 2360020    12\/04\/2020 14:26:44\r\n  1    32      2360020    12\/04\/2020 14:26:44 2401381    09\/07\/2020 22:12:12\r\n  1    33      2401381    09\/07\/2020 22:12:12 2419539    10\/07\/2020 00:04:59\r\n\r\n  Backup Set Copy #1 of backup set 26199\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:58:52     10\/07\/2020 00:05:36 NO         BKP-ARCH\r\n\r\n    List of Backup Pieces for backup set 26199 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26200   1   AVAILABLE   Recovery Appliance (ZDLRAS1) ORCL19_3nv4tldh_1_1\r\n\r\n  Backup Set Copy #2 of backup set 26199\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:58:52     09\/07\/2020 22:06:13 NO         BKP-ARCH\r\n\r\n    List of Backup Pieces for backup set 26199 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26336   1   AVAILABLE   Recovery Appliance (ZDLRAS2) RA_SBT_ORCL19_323177095_25742_3nv4tldh_1_2_26199\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">Check above that backup was replicated too.<\/p>\n<h3 style=\"text-align: justify;\">Real-time redo<\/h3>\n<p style=\"text-align: justify;\">The same occurs for the real-time redo. Since the backup of archivelog is generated automatically at ZDLRA (you can <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-real-time-redo\/\" target=\"_blank\" rel=\"noopener noreferrer\">read more at my previous post<\/a>), it is replicated too by:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; alter system archive log current;\r\n\r\nStatement processed\r\n\r\nRMAN&gt; list backup of archivelog sequence 48;\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Size\r\n------- ----------\r\n28186   198.00K\r\n\r\n  List of Archived Logs in backup set 28186\r\n  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time\r\n  ---- ------- ---------- ------------------- ---------- ---------\r\n  1    48      3148635    18\/07\/2020 01:20:24 3149484    18\/07\/2020 01:26:35\r\n\r\n  Backup Set Copy #1 of backup set 28186\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:59:28     18\/07\/2020 01:27:04 YES        TAG20200718T012704\r\n\r\n    List of Backup Pieces for backup set 28186 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    28187   1   AVAILABLE                           $RSCN_2029050_RTIM_1021856938_THRD_1_SEQ_48_CTKEY_28039_BACKUP\r\n\r\n  Backup Set Copy #2 of backup set 28186\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:59:28     17\/07\/2020 23:27:36 YES        TAG20200718T012704\r\n\r\n    List of Backup Pieces for backup set 28186 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    28190   1   AVAILABLE   Recovery Appliance (ZDLRAS2) RA_SBT_ORCL19_323177095_25742_m2v5it78_1_2_28186\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">And if you have a failure (simulated here with a kill), the partial archivelog was replicated too. And with the ZDLRA replication, if your database crash and you need to restore the database, you have multi-site protection even without dataguard:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[oracle@orcloel7 ~]$ ps -ef |grep smon\r\noracle    6087     1  0 00:59 ?        00:00:00 ora_smon_ORCL19\r\noracle    8519  1937  0 01:35 pts\/0    00:00:00 grep --color=auto smon\r\n[oracle@orcloel7 ~]$ ps -ef |grep pmon\r\noracle    6047     1  0 00:59 ?        00:00:00 ora_pmon_ORCL19\r\noracle    8524  1937  0 01:35 pts\/0    00:00:00 grep --color=auto pmon\r\n[oracle@orcloel7 ~]$ ps -ef |grep mmon\r\noracle    6104     1  0 00:59 ?        00:00:01 ora_mmon_ORCL19\r\noracle    8530  1937  0 01:35 pts\/0    00:00:00 grep --color=auto mmon\r\n[oracle@orcloel7 ~]$ kill -9 6087 6047 6104\r\n[oracle@orcloel7 ~]$\r\n[oracle@orcloel7 ~]$ rman target=\/ catalog=vpcsrc\/vpcsrc@zdlras1-scan:1521\/zdlras1\r\n\r\nRecovery Manager: Release 19.0.0.0.0 - Production on Sat Jul 18 01:36:35 2020\r\nVersion 19.3.0.0.0\r\n\r\nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\r\n\r\nconnected to target database (not started)\r\nconnected to recovery catalog database\r\n\r\nRMAN&gt; list db_unique_name of database orcl19;\r\n\r\n\r\nList of Databases\r\nDB Key  DB Name  DB ID            Database Role    Db_unique_name\r\n------- ------- ----------------- ---------------  ------------------\r\n25140   ORCL19   323177095        PRIMARY          ORCL19\r\n\r\nRMAN&gt; set dbid 323177095;\r\n\r\nexecuting command: SET DBID\r\ndatabase name is \"ORCL19\" and DBID is 323177095\r\n\r\nRMAN&gt; list backup of archivelog sequence 49;\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Size\r\n------- ----------\r\n28209   1.31M\r\n\r\n  List of Archived Logs in backup set 28209\r\n  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time\r\n  ---- ------- ---------- ------------------- ---------- ---------\r\n  1    49      3149484    18\/07\/2020 01:26:35 3150908    18\/07\/2020 01:35:40\r\n\r\n  Backup Set Copy #1 of backup set 28209\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:59:01     18\/07\/2020 01:35:56 YES        TAG20200718T013555\r\n\r\n    List of Backup Pieces for backup set 28209 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    28210   1   AVAILABLE                           $RSCN_2029050_RTIM_1021856938_THRD_1_SEQ_49_CTKEY_28155_BACKUP\r\n\r\n  Backup Set Copy #2 of backup set 28209\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    01:59:01     17\/07\/2020 23:36:54 YES        TAG20200718T013555\r\n\r\n    List of Backup Pieces for backup set 28209 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    28213   1   AVAILABLE   Recovery Appliance (ZDLRAS2) RA_SBT_ORCL19_323177095_25742_m4v5itnr_1_2_28209\r\n\r\nRMAN&gt;<\/pre>\n<h3 style=\"text-align: justify;\">More copies<\/h3>\n<p style=\"text-align: justify;\">Since every ZDLRA can have a different environment, you can one that has clone to tape enabled (in this scenario the downstream has a clone to tape enabled). And since the backup is cloned, it appears automatically at rman catalog:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">RMAN&gt; list backup of datafile 1 completed after \"to_date('10\/07\/2020 01:15:00', 'DD\/MM\/RRRR HH24:MI:SS')\";\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n26752   Incr 0  325.02M\r\n  List of Datafiles in backup set 26752\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    0  Incr 2429273    10\/07\/2020 01:18:02              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #1 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:05:24     10\/07\/2020 01:23:27 YES        TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26753   1   AVAILABLE                           VB$_1891149551_26619I\r\n\r\n  Backup Set Copy #2 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    00:05:24     10\/07\/2020 01:23:26 YES        TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26775   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_13258I\r\n\r\nRMAN&gt;\r\n\r\n###########################################################################\r\nAfter the clone to tape occurs (at downstream in this example)\r\n###########################################################################\r\n\r\nRMAN&gt; list backup of datafile 1 completed after \"to_date('10\/07\/2020 01:15:00', 'DD\/MM\/RRRR HH24:MI:SS')\";\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n26752   Incr 0  325.02M\r\n  List of Datafiles in backup set 26752\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    0  Incr 2429273    10\/07\/2020 01:18:02              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #1 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    09:11:37     10\/07\/2020 01:23:27 YES        TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #1\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26753   1   AVAILABLE                           VB$_1891149551_26619I\r\n\r\n  Backup Set Copy #3 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    09:11:37     10\/07\/2020 10:29:39 NO         TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #3\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26889   1   AVAILABLE   ZDLRAS2_REP             RA_SBT_ORCL19_323177095_8206_0sv4tpma_1_2_13259\r\n\r\n  Backup Set Copy #2 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    09:11:37     10\/07\/2020 01:23:26 YES        TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26775   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_13258I\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">Check that now the backupset for the virtual full level 0 exists 3 copies: local at upstream, one at downstream ZDLRA, and another at the tape attached at downstream ZDLRA. About how the clone to tape works you can at <a href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-configuring-tape-library\/\" target=\"_blank\" rel=\"noopener noreferrer\">my post about this topic<\/a>. And if you have a clone to tape enabled at upstream, a new copy will appear as available for rman catalog automatically.<\/p>\n<h2 style=\"text-align: justify;\">Restoring backups<\/h2>\n<p style=\"text-align: justify;\">ZDLRA will choose the best source to restore the backup. The preference is always to restore from the catalog that you are connected to. But remember that you can have different recovery windows for your protection policies (at upstream and downstream). So, it is possible that your backup was already deleted from upstream, but is still available at downstream and listed at upstream catalog as a copy.<\/p>\n<p style=\"text-align: justify;\">The process to restore a backup is the same as a traditional ZDLRA without replication. You can connect at the upstream catalog (recommended), or directly at the downstream catalog. In this example, I will restore the datafile connecting at upstream ZDLRA.<\/p>\n<p style=\"text-align: justify;\">Check in the example below that the exists just the copies #2 e #3 of the backupset and both are at downstream ZDLRA. Check also that I connected at upstream and from there I called the restore:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\">[oracle@orcloel7 ~]$ rman target=\/ catalog=vpcsrc\/vpcsrc@zdlras1-scan:1521\/zdlras1\r\n\r\nRecovery Manager: Release 19.0.0.0.0 - Production on Sat Jul 18 00:13:29 2020\r\nVersion 19.3.0.0.0\r\n\r\nCopyright (c) 1982, 2019, Oracle and\/or its affiliates.  All rights reserved.\r\n\r\nconnected to target database: ORCL19 (DBID=323177095)\r\nconnected to recovery catalog database\r\n\r\nRMAN&gt;\r\n\r\nRMAN&gt; list backup of datafile 1 completed between \"to_date('10\/07\/2020 01:15:00', 'DD\/MM\/RRRR HH24:MI:SS')\" and \"to_date('13\/07\/2020 01:15:00', 'DD\/MM\/RRRR HH24:MI:SS')\";\r\n\r\n\r\nList of Backup Sets\r\n===================\r\n\r\n\r\nBS Key  Type LV Size\r\n------- ---- -- ----------\r\n26752   Incr 0  785.06M\r\n  List of Datafiles in backup set 26752\r\n  File LV Type Ckp SCN    Ckp Time            Abs Fuz SCN Sparse Name\r\n  ---- -- ---- ---------- ------------------- ----------- ------ ----\r\n  1    0  Incr 2429273    10\/07\/2020 01:18:02              NO    \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\n\r\n  Backup Set Copy #3 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    09:11:37     10\/07\/2020 10:29:39 NO         TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #3\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26889   1   AVAILABLE   ZDLRAS2_REP             RA_SBT_ORCL19_323177095_8206_0sv4tpma_1_2_13259\r\n\r\n  Backup Set Copy #2 of backup set 26752\r\n  Device Type Elapsed Time Completion Time     Compressed Tag\r\n  ----------- ------------ ------------------- ---------- ---\r\n  SBT_TAPE    09:11:37     10\/07\/2020 01:23:26 YES        TAG20200710T011802\r\n\r\n    List of Backup Pieces for backup set 26752 Copy #2\r\n    BP Key  Pc# Status      Media                   Piece Name\r\n    ------- --- ----------- ----------------------- ----------\r\n    26775   1   AVAILABLE   ZDLRAS2_REP             VB$_2127575003_13258I\r\n\r\nRMAN&gt; shutdown immediate;\r\n\r\ndatabase closed\r\ndatabase dismounted\r\nOracle instance shut down\r\n\r\nRMAN&gt; startup mount;\r\n\r\nconnected to target database (not started)\r\nOracle instance started\r\ndatabase mounted\r\n\r\nTotal System Global Area    4294963272 bytes\r\n\r\nFixed Size                     8904776 bytes\r\nVariable Size               1694498816 bytes\r\nDatabase Buffers            2583691264 bytes\r\nRedo Buffers                   7868416 bytes\r\n\r\nRMAN&gt; restore datafile 1 from tag = 'TAG20200710T011802';\r\n\r\nStarting restore at 18\/07\/2020 00:23:54\r\nallocated channel: ORA_SBT_TAPE_1\r\nchannel ORA_SBT_TAPE_1: SID=44 device type=SBT_TAPE\r\nchannel ORA_SBT_TAPE_1: RA Library (ZDLRAS1) SID=AAAB9D0E05120DEEE053010310AC604B\r\nallocated channel: ORA_DISK_1\r\nchannel ORA_DISK_1: SID=45 device type=DISK\r\n\r\nchannel ORA_SBT_TAPE_1: starting datafile backup set restore\r\nchannel ORA_SBT_TAPE_1: specifying datafile(s) to restore from backup set\r\nchannel ORA_SBT_TAPE_1: restoring datafile 00001 to \/u01\/app\/oracle\/oradata\/ORCL19\/system01.dbf\r\nchannel ORA_SBT_TAPE_1: reading from backup piece VB$_2127575003_13258I\r\nchannel ORA_SBT_TAPE_1: piece handle=VB$_2127575003_13258I tag=TAG20200710T011802\r\nchannel ORA_SBT_TAPE_1: restored backup piece 1\r\nchannel ORA_SBT_TAPE_1: restore complete, elapsed time: 00:01:54\r\nFinished restore at 18\/07\/2020 00:26:06\r\n\r\nRMAN&gt;<\/pre>\n<p style=\"text-align: justify;\">As you can see above, the restore read the piece \u201cchannel ORA_SBT_TAPE_1: piece handle=VB$_2127575003_13258I tag=TAG20200710T011802\u201d, and this came directly from downstream. And even connected at upstream, it (the upstream) connected downstream and send to you transparently the backups from downstream. Working as a proxy.<\/p>\n<h2 style=\"text-align: justify;\">ZDLRA Native Replication<\/h2>\n<p style=\"text-align: justify;\">The ZDLRA native replication increases a lot of the options for database protection. Even without dataguard you can have multi-site replication for your backupsets and archivelogs. And everything is automatically managed by the ZDLRA library. The catalog is self-managed and the backupsets copies are updated without interaction.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amogd_vm_005.png\" target=\"_blank\" rel=\"noopener noreferrer\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-765 size-full\" src=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amogd_vm_005.png\" alt=\"\" width=\"665\" height=\"795\" srcset=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amogd_vm_005.png 665w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amogd_vm_005-251x300.png 251w, https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amogd_vm_005-624x746.png 624w\" sizes=\"auto, (max-width: 665px) 100vw, 665px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">The native replication is not just an additional copy of your backupsets. Is part of architecture design from your protection. Depending on the architecture (and needs), is possible to have downstream with different protection windows and sustain for more time your protection. Imagine that you don\u2019t need to replicate all databases that you do backup at upstream, so, you will have more space (and consequently more time) to your downstream store backups.<\/p>\n<p style=\"text-align: justify;\">The ZDLRA native replication is also interesting because allows us to have multi-site protection because can work together with real-time redo to reach near-zero RPO. Is near-zero because the replication between upstream and downstream is not in real-time (like DG or real-time redo). So, in case of a complete datacenter failure, you can have some gap at downstream (since the last archivelog received \u2013 but this can be mitigated\/reduced if needed).<\/p>\n<p style=\"text-align: justify;\">Understand native replication for ZDLRA is more than just copy backups sets. As you saw above, it can interconnect with a lot of previous details, like different recovery windows goals, real-time redo, and clone to tapes. Understand the details and how to use it to create good architecture is important.<\/p>\n<p style=\"text-align: justify;\">In the next posts, I will dig more about how to create these kinds of designs to protect all your databases. Reaching the MAA Reference architecture from the simplest single instance, to multi RAC and multi-site database operating with DataGuard. Everything with zero RPO.<\/p>\n<p style=\"text-align: justify;\">The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.&nbsp;&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\"><strong>Disclaimer<\/strong>: <em>\u201cThe postings on this site are my own and don\u2019t necessarily represent my actual employer positions, strategies or opinions. The information here was edited to be useful for general purpose, specific data and identifications were removed to allow reach the generic audience and to be useful for the community.<\/em> <em>Post protected by copyright.\u201d<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The replication for ZDLRA works differently than normal DataGuard, but you can reach almost the same level of multiple site protection with that. The replication for ZDLRA is not complicated but can be divided into several steps. Basically, to protect a database (since you have everything configure) is done linking the database with the protection [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[29,77,140,51],"tags":[100,65,139,74],"class_list":["post-776","post","type-post","status-publish","format-standard","hentry","category-database","category-engineeredsystems","category-replication","category-zdlra","tag-engineered-systems","tag-oracle","tag-replication","tag-zdlra"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ZDLRA, Protecting Databases with Replication - Fernando Simon<\/title>\n<meta name=\"description\" content=\"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ZDLRA, Protecting Databases with Replication - Fernando Simon\" \/>\n<meta property=\"og:description\" content=\"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/\" \/>\n<meta property=\"og:site_name\" content=\"Fernando Simon\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-27T20:10:36+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png\" \/>\n<meta name=\"author\" content=\"Simon\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Simon\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"20 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/\"},\"author\":{\"name\":\"Simon\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/#\\\/schema\\\/person\\\/386da956604bca0d5be5dd52210c1dd9\"},\"headline\":\"ZDLRA, Protecting Databases with Replication\",\"datePublished\":\"2020-07-27T20:10:36+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/\"},\"wordCount\":1642,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/07\\\/amagd_vm_048-1.png\",\"keywords\":[\"Engineered Systems\",\"Oracle\",\"Replication\",\"ZDLRA\"],\"articleSection\":[\"Database\",\"Engineered Systems\",\"Replication\",\"ZDLRA\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/\",\"url\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/\",\"name\":\"ZDLRA, Protecting Databases with Replication - Fernando Simon\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/07\\\/amagd_vm_048-1.png\",\"datePublished\":\"2020-07-27T20:10:36+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/#\\\/schema\\\/person\\\/386da956604bca0d5be5dd52210c1dd9\"},\"description\":\"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/07\\\/amagd_vm_048-1.png\",\"contentUrl\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/wp-content\\\/uploads\\\/2020\\\/07\\\/amagd_vm_048-1.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/zdlra-protecting-databases-with-replication\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ZDLRA, Protecting Databases with Replication\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/\",\"name\":\"Fernando Simon\",\"description\":\"Have you hugged your backup today?\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/#\\\/schema\\\/person\\\/386da956604bca0d5be5dd52210c1dd9\",\"name\":\"Simon\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g\",\"caption\":\"Simon\"},\"sameAs\":[\"http:\\\/\\\/www.fernandosimon.com\"],\"url\":\"https:\\\/\\\/www.fernandosimon.com\\\/blog\\\/author\\\/simon\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ZDLRA, Protecting Databases with Replication - Fernando Simon","description":"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/","og_locale":"en_US","og_type":"article","og_title":"ZDLRA, Protecting Databases with Replication - Fernando Simon","og_description":"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.","og_url":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/","og_site_name":"Fernando Simon","article_published_time":"2020-07-27T20:10:36+00:00","og_image":[{"url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png","type":"","width":"","height":""}],"author":"Simon","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Simon","Est. reading time":"20 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#article","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/"},"author":{"name":"Simon","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"headline":"ZDLRA, Protecting Databases with Replication","datePublished":"2020-07-27T20:10:36+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/"},"wordCount":1642,"commentCount":0,"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png","keywords":["Engineered Systems","Oracle","Replication","ZDLRA"],"articleSection":["Database","Engineered Systems","Replication","ZDLRA"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/","url":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/","name":"ZDLRA, Protecting Databases with Replication - Fernando Simon","isPartOf":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#primaryimage"},"image":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#primaryimage"},"thumbnailUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png","datePublished":"2020-07-27T20:10:36+00:00","author":{"@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9"},"description":"The ZDLRA replication work to provide multiple copies of the backupset. Check how replication works for backups and to restore it.","breadcrumb":{"@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#primaryimage","url":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png","contentUrl":"https:\/\/www.fernandosimon.com\/blog\/wp-content\/uploads\/2020\/07\/amagd_vm_048-1.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.fernandosimon.com\/blog\/zdlra-protecting-databases-with-replication\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fernandosimon.com\/blog\/"},{"@type":"ListItem","position":2,"name":"ZDLRA, Protecting Databases with Replication"}]},{"@type":"WebSite","@id":"https:\/\/www.fernandosimon.com\/blog\/#website","url":"https:\/\/www.fernandosimon.com\/blog\/","name":"Fernando Simon","description":"Have you hugged your backup today?","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fernandosimon.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.fernandosimon.com\/blog\/#\/schema\/person\/386da956604bca0d5be5dd52210c1dd9","name":"Simon","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a3dbc48de62fffb1829befb4a588d789ec6dc5e05977afabb3407a5f37a16482?s=96&d=mm&r=g","caption":"Simon"},"sameAs":["http:\/\/www.fernandosimon.com"],"url":"https:\/\/www.fernandosimon.com\/blog\/author\/simon\/"}]}},"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5ofTp-cw","jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/776","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/comments?post=776"}],"version-history":[{"count":0,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/posts\/776\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/media?parent=776"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/categories?post=776"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fernandosimon.com\/blog\/wp-json\/wp\/v2\/tags?post=776"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}