Prerequisites
- Know the dSource and Group you need to repair from
- Make sure that your retention policy is set correctly so that the ingested logs are within retention
Procedure
Log into the Delphix Engine as an Admin user. Go to TimeFlow and then list. Find the TimeFlow that needs to be repaired.
ssh delphix_admin@<yourengine> delphix > timeflow delphix timeflow > ls
Go to oracle/log and list the missing logs for the TimeFlow. The maximum number of logs reported is controlled by the value of the pageSize argument; if there are a very large number of missing logs, you may need to increase this value. Note the start and end scn of the missing log.
delphix timeflow oracle log> list timeflow=example missing=true pageSize=1000
If the output from the above command does not list any logs as missing, but there are one or more sequences reported as missing by the Delphix Admin browser-based app, please contact Delphix Technical Support for assistance.
Stage the missing logs.
Verify that there is sufficient free space.
Copy or restore the missing archive logs into an empty directory on a server the Delphix Engine can access via the network. All files in the directory are examined so starting with an empty directory speeds up the process.
Verify that the user being specified in the next step has permissions to read these archive log files in the directory.
delphix timeflow oracle log > fetch delphix timeflow oracle log fetch *> set type=TimeflowLogFetchParameters delphix timeflow oracle log fetch *> set timeflow=example delphix timeflow oracle log fetch *> set directory=[directory where you restored the log file] delphix timeflow oracle log fetch *> set endLocation=[end SCN of the sequence] delphix timeflow oracle log fetch *> set startLocation=[start SCN of the sequence] delphix timeflow oracle log fetch *> set host=[hostname or IP of the host you restored the file to] delphix timeflow oracle log fetch *> set username=[a user that can read the file] delphix timeflow oracle log fetch *> edit credentials delphix timeflow oracle log fetch *> set type=PasswordCredential delphix timeflow oracle log fetch *> set password=[password for this user]
Commit the changes.
delphix timeflow oracle log fetch *> commit
Only do ONE repair job at a time.
NOTE:
It is possible for there to be more than one TimeFlow visible for a given container/source. If that is the case, you can verify the current TimeFlow being used with:
delphix > database delphix database > select 'example' delphix database "example"> ls
Look for the currentTimeflow
value.