164 lines
10 KiB
HTML
164 lines
10 KiB
HTML
|
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<!DOCTYPE html
|
||
|
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
<html lang="en-us" xml:lang="en-us">
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
|
<meta name="security" content="public" />
|
||
|
<meta name="Robots" content="index,follow" />
|
||
|
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
||
|
<meta name="DC.Type" content="task" />
|
||
|
<meta name="DC.Title" content="Recommended recovery procedures after eliminating save-outage time" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu348.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../rzai8/rzai8overview.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../rzaiu/rzaiurestoreobj.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu347.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="../rzaki/rzakikickoff.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiubackupbacking.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu313.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu365.htm" />
|
||
|
<meta name="DC.Relation" scheme="URI" content="rzaiurzaiu328.htm" />
|
||
|
<meta name="copyright" content="(C) Copyright IBM Corporation 2004, 2006" />
|
||
|
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 2004, 2006" />
|
||
|
<meta name="DC.Format" content="XHTML" />
|
||
|
<meta name="DC.Identifier" content="rzaiu358" />
|
||
|
<meta name="DC.Language" content="en-us" />
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
||
|
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
||
|
<title>Recommended recovery procedures after eliminating save-outage time</title>
|
||
|
</head>
|
||
|
<body id="rzaiu358"><a name="rzaiu358"><!-- --></a>
|
||
|
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
|
<h1 class="topictitle1">Recommended recovery procedures after eliminating save-outage time</h1>
|
||
|
<div><div class="section"> <p>If you perform save-while-active operations to eliminate save
|
||
|
outage time and you specified *NOCMTBDY for the SAVACTWAIT pending record
|
||
|
changes value, you can be left with objects that are saved with partial transactions.
|
||
|
It is recommended that you use Backup, Recovery, and Media Services (BRMS)
|
||
|
to automate your backup and recovery operations. BRMS automatically applies
|
||
|
changes to objects with partial transactions and restores them to a usable
|
||
|
state.</p>
|
||
|
<p>The following provides some recommended recovery procedures
|
||
|
after restoring from the save-while-active media. The following procedure
|
||
|
is a recommendation only. Your recovery procedures may need to be somewhat
|
||
|
different depending upon your applications and your particular application
|
||
|
dependencies.</p>
|
||
|
<p>The recovery for journaled objects may include Apply
|
||
|
Journaled Changes (APYJRNCHG) and Remove Journaled Changes (RMVJRNCHG) operations.
|
||
|
The following recommendation uses the APYJRNCHG command exclusively. The APYJRNCHG
|
||
|
command is the most common recovery operation that brings journaled objects
|
||
|
to application boundaries. However, you can use the RMVJRNCHG command instead
|
||
|
of the APYJRNCHG to bring the journaled objects to an application boundary.
|
||
|
Use the RMVJRNCHG command if you are removing changes from the journaled object.
|
||
|
You can use the RMVJRNCHG command if you are journaling before images for
|
||
|
the journaled object. </p>
|
||
|
<p>If you need to use the APYJRNCHG command for
|
||
|
the recovery, you must specify a known application boundary for either the
|
||
|
ending sequence number (TOENT) parameter or the ending large sequence number
|
||
|
(TOENTLRG) parameter but not both. Specify the FROMENTLRG parameter regardless
|
||
|
of whether all objects reached a checkpoint together. You must run multiple
|
||
|
APYJRNCHG commands if the objects are journaled to different journals.</p>
|
||
|
<p>The
|
||
|
following steps give a general recommendation to follow for recovery procedures: </p>
|
||
|
</div>
|
||
|
<ol><li class="stepexpand"><span>If some of the objects you are restoring are journaled objects,
|
||
|
make sure that the necessary journals are on the server.</span></li>
|
||
|
<li class="stepexpand"><span></span> If all necessary journals are not on the server, restore
|
||
|
the journals first. The server automatically restores the journals first if
|
||
|
both items below are true: <ul><li>The journals are in the same library as the objects you are restoring.</li>
|
||
|
<li>You used the same save request to save the journals and the objects.</li>
|
||
|
</ul>
|
||
|
</li>
|
||
|
<li class="stepexpand"><span>Restore objects from the save-while-active media.</span></li>
|
||
|
<li class="stepexpand"><span></span> If some of the objects restored are journaled objects,
|
||
|
restore any required journal receivers that do not already exist on the server.
|
||
|
<ol type="a"><li>Start by restoring receivers that contain the start of save journal entries
|
||
|
for the journaled objects.</li>
|
||
|
<li>Continue restoring receivers until you restore the receiver that contains
|
||
|
the journal entry that is the desired application boundary. These receivers
|
||
|
need to be online for each of the journals used to journal the restored objects. </li>
|
||
|
</ol>
|
||
|
</li>
|
||
|
<li class="stepexpand"><span>If all of the application-dependent objects are journaled, skip
|
||
|
to step 9. If only some or none of the application-dependent objects are journaled,
|
||
|
go to step 6.</span></li>
|
||
|
<li class="stepexpand"><span>If some application-dependent objects are not journaled objects,
|
||
|
and one of the following scenarios is true, go to step 7. Otherwise, go to
|
||
|
step, 8.</span> <ol type="a"><li id="rzaiu358__a"><a name="rzaiu358__a"><!-- --></a>All of the objects are in the same library and are saved using
|
||
|
SAVACT(*LIB). </li>
|
||
|
<li id="rzaiu358__b"><a name="rzaiu358__b"><!-- --></a>All objects in all of the libraries are saved using SAVACT(*SYNCLIB).</li>
|
||
|
</ol>
|
||
|
</li>
|
||
|
<li class="stepexpand"><span>You can perform the recovery procedures in Example: Restore libraries
|
||
|
after reducing save-outage time. </span> All of the objects reached a
|
||
|
checkpoint together and the restored objects are in a consistent state in
|
||
|
relationship to each other. However, if you need to bring the objects forward
|
||
|
to some defined application boundary, you can only use the APYJRNCHG command
|
||
|
for the journaled objects. For objects that are not journaled,
|
||
|
you must perform user-defined recovery procedures.</li>
|
||
|
<li class="stepexpand"><span>If neither of the scenarios in 6 are true, then the objects are
|
||
|
not saved in a consistent state in relationship to each other. Use the APYJRNCHG
|
||
|
command to bring the journaled objects forward to some common application
|
||
|
boundary. For objects that are not journaled, you must perform user-defined
|
||
|
recovery procedures.</span></li>
|
||
|
<li class="stepexpand"><span> If all of the application-dependent objects are journaled, and
|
||
|
all of the application-dependent objects are under commitment control, skip
|
||
|
to step 11. Otherwise, go to step 10.</span></li>
|
||
|
<li class="stepexpand"><span>If all application-dependent objects are journaled objects but
|
||
|
all of the changes made to the objects are not made under commitment control,
|
||
|
then you must use APYJRNCHG command to bring all of the objects to an application
|
||
|
boundary.</span></li>
|
||
|
<li class="stepexpand"><span>If all of the application-dependent objects are under commitment
|
||
|
control and the objects exist in different libraries go to step 12. Otherwise,
|
||
|
go to step 13.</span></li>
|
||
|
<li class="stepexpand"><span>If the objects exist in different libraries, then the objects restored
|
||
|
are at commitment boundaries. However, not all of the objects will be at the
|
||
|
same common commitment boundary. Bring the objects to the same common commitment
|
||
|
boundary with the APYJRNCHG command. Specify the CMTBDY(*YES) parameter to
|
||
|
bring the objects forward to some common application boundary. </span> <p>By
|
||
|
specifying CMTBDY(*YES), you ensure that the apply operation starts on a commitment
|
||
|
boundary. You also ensure that the server applies complete transactions up
|
||
|
through the sequence number that you specified to correspond with your application
|
||
|
boundary.</p>
|
||
|
</li>
|
||
|
<li class="stepexpand"><span></span> If all application-dependent objects are journaled
|
||
|
objects that exist in the same library, and the files are only updated under
|
||
|
commitment control, the server restores the files as they existed at some
|
||
|
common commitment boundary when you saved the data. <p>Use the APYJRNCHG
|
||
|
command specifying the CMTBDY(*YES) parameter to bring the files forward to
|
||
|
some defined application boundary if one of the following is true: </p>
|
||
|
<ul><li>The common commitment transaction boundary is not an application boundary.</li>
|
||
|
<li>Additional transactions exist in the journal that you want to apply to
|
||
|
the objects.</li>
|
||
|
</ul>
|
||
|
<p>By specifying CMTBDY(*YES), you can ensure that the apply operation
|
||
|
starts on a commitment boundary. You also ensure that the server applies complete
|
||
|
transactions up through the specified sequence number that corresponds to
|
||
|
your application boundary.</p>
|
||
|
<p>If the commitment boundary is an application
|
||
|
boundary, then no additional recovery procedures are necessary.</p>
|
||
|
</li>
|
||
|
</ol>
|
||
|
</div>
|
||
|
<div>
|
||
|
<div class="familylinks">
|
||
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzaiurzaiu348.htm" title="Use the save-while-active function to eliminate your save-outage time.">Eliminate your save-outage time</a></div>
|
||
|
</div>
|
||
|
<div class="relconcepts"><strong>Related concepts</strong><br />
|
||
|
<div><a href="rzaiurzaiu347.htm">Example: Restore libraries after reducing save-outage time</a></div>
|
||
|
<div><a href="rzaiubackupbacking.htm">Back up a logical partition</a></div>
|
||
|
<div><a href="rzaiurzaiu313.htm" title="This information tells you what happens when you use the save-while-active function to eliminate your save-outage time.">Eliminating save-outage time: Overview</a></div>
|
||
|
<div><a href="rzaiurzaiu365.htm">Considerations for recovery procedures after eliminating save-outage time</a></div>
|
||
|
<div><a href="rzaiurzaiu328.htm">Timestamp processing with save-while-active</a></div>
|
||
|
</div>
|
||
|
<div class="relinfo"><strong>Related information</strong><br />
|
||
|
<div><a href="../rzai8/rzai8overview.htm" target="_blank">BRMS</a></div>
|
||
|
<div><a href="../rzaiu/rzaiurestoreobj.htm">Example: Restoring objects with partial transactions</a></div>
|
||
|
<div><a href="../rzaki/rzakikickoff.htm">Journal management</a></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|