The procedure is typically used in these situations:
To resume replication when the source, target or both have failed, there must be the following in place at the onset of replication:
The following diagram depicts a DR configuration at the onset of replication. There is a source production instance and a mirrored source DR instance that is kept current by Oracle Data Guard. Similarly, there is a production target instance and a mirrored DR target instance that is kept current by Oracle Data Guard.
This example illustrates one of the potential failure/recovery scenarios, in this case where the production target instance fails. The recovery path is shown as the diagonal, orange dotted line in the DR configuration at the onset of replication diagram.
The following diagram illustrates the configuration and the names that are used in this example.
Figure 3: Normal replication and mirroring configuration
The Target PROD target fails, as represented by the red X across it in the following diagram. SharePlex can no longer replicate to Target PROD, as represented by the red X over the original replication data stream.
Because Target PROD is offline, Oracle Data Guard can no longer keep Target DR up to date. However, SharePlex can. SharePlex (SPO in the diagram) is able to resume replication from Source PROD to Target DR, thus resuming data availability.
Figure 4: Failure and recovery by SharePlex (SPO)
In this procedure you will do the following to direct SharePlex to recover replication:
Note: This procedure requires the following:
To resume replication
Note: In these instructions, the source and target systems are whichever source and target are operational after the failover.
Shut down SharePlex on the source system, if it is still running.
On the target, start sp_cop if it is not running already.
$ /productdir/bin/sp_cop &
On the target, use the qstatus command to make certain that all of the message in the queues are posted to the target database. The command output should show 0 backlog in the post queue.
From the command line of the target, run the show_scn utility from the bin subdirectory of the SharePlex product directory. For ORACLE_SID use the ORACLE_SID of the target database.
$ /productdir/bin/show_scn ORACLE_SID
Shut down sp_cop on the source and target.
Run ora_cleansp on the source and target to clean out the queues.
Start sp_cop on the source and target.
$ /productdir/bin/sp_cop &
On the target, stop Post.
sp_ctrl> stop post
On the source, issue the activate config command with the scn option to activate the configuration. For scn_value, use the value that is shown in the output of the show_scn utility on the line that states On source activate to scn=nnnnnnn.
sp_ctrl> activate config configname scn=scn_value
sp_ctrl> activate config myconfig scn=510012416
On the target, copy the first reconcile command from the show_scn output and then execute it in sp_ctrl. Then do the same for the second reconcile command, and work your way down the list.
sp_ctrl> reconcile queue spx11 for o.ora112-o.ora112 scn 235690
sp_ctrl> reconcile queue pq1 for o.ora112-o.ora112 scn 132436
sp_ctrl> reconcile queue pq2 for o.ora112-o.ora112 scn 246843
sp_ctrl> reconcile queue pq3 for o.ora112-o.ora112 scn 123457
The reconcile command may seem stalled until new data comes in. However, the command is working.
On the target, start Post.
sp_ctrl> start post
This chapter contains instructions for making datbase changes, or performing system and software maintenance, on systems where SharePlex replication is active.
Many procedures that change an element of the replication environment will also involve changing the SharePlex configuration file. The recommended method to modify an active configuration file is to make a copy of the file first using a new file name. For example, append the date to the file name. By copying the file first, you preserve the original file in case it is needed again or you encounter a problem with the new file. By copying the file first, you also can control when to activate the new configuration file.
In most cases, activation of an edited configuration is less time-consuming than the original activation if you do not deactivate the original configuration. The activation of the new configuration automatically deactivates the original configuration, and SharePlex only needs to analyze the new, changed, and removed objects. If you deactivate the original configuration before you activate a new one, SharePlex re-analyzes all of the objects.
To change a configuration file, see Add or change objects in an active configuration.
This section provides instructions for adding a supported object to replication, or changing the specifications of an object, while replication is active.
Note: To add sequences to replication, see Add Oracle sequences to an active replication configuration.
If you are using wildcards and an object that you are adding satisfies the wildcard specification, it is not necessary to add the object to the configuration file if the source is Oracle. Any new objects that match the wildcard criteria are automatically added into replication. Only add objects that must be explicitly stated by name.
Important! Do not deactivate the original configuration.
In sp_ctrl, issue the copy config command to make a copy of the active configuration file.
sp_ctrl> copy config filename to newname
Where: filename is the name of the active file and newname is the name of the new one.
Issue the edit config command to open the new configuration file in the default text editor.
sp_ctrl> edit config newname
Add the entries for the new tables or change existing entries.
Note: To change partitioned replication, see Change Partitioned Replication.
Activate the new configuration. This deactivates the original configuration. Only the new or changed tables are activated, so the activation should not be as long as the initial activation.
sp_ctrl> activate config newname