ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzaiu_5.4.0.1/rzaiurzaiu358.htm

164 lines
10 KiB
HTML
Raw Normal View History

2024-04-02 14:02:31 +00:00
<?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>