1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>db_recover</title>
<link rel="stylesheet" href="apiReference.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Berkeley DB C++ API Reference" />
<link rel="up" href="utilities.html" title="Appendix A. Berkeley DB Command Line Utilities" />
<link rel="prev" href="db_printlog.html" title="db_printlog" />
<link rel="next" href="db_replicate.html" title="db_replicate" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 11.2.5.3</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">db_recover</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="db_printlog.html">Prev</a> </td>
<th width="60%" align="center">Appendix A.
Berkeley DB Command Line Utilities
</th>
<td width="20%" align="right"> <a accesskey="n" href="db_replicate.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="db_recover"></a>db_recover</h2>
</div>
</div>
</div>
<pre class="programlisting">db_recover [-cefVv] [-h home] [-P password] [-t [[CC]YY]MMDDhhmm[.SS]]] </pre>
<p>
The <span class="command"><strong>db_recover</strong></span> utility must be run after an unexpected application,
Berkeley DB, or system failure to restore the database to a consistent
state. All committed transactions are guaranteed to appear after
<span class="command"><strong>db_recover</strong></span> has run, and all uncommitted transactions will be
completely undone.
</p>
<p>
Note that this utility performs the same action as if the
environment is opened with the
<a class="link" href="envopen.html#envopen_DB_RECOVER">DB_RECOVER</a>
flag. If <code class="literal">DB_RECOVER</code> is specified on environment open,
then use of this utility is not necessary.
</p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>
<p>
If the application(s) that use the environment make use of
any of the following methods:
</p>
<table class="simplelist" border="0" summary="Simple list">
<tr>
<td>
<a class="xref" href="envadd_data_dir.html" title="DbEnv::add_data_dir()">DbEnv::add_data_dir()</a>
</td>
</tr>
<tr>
<td>
<a class="xref" href="envset_data_dir.html" title="DbEnv::set_data_dir()">DbEnv::set_data_dir()</a>
</td>
</tr>
<tr>
<td>
<a class="xref" href="envset_lg_dir.html" title="DbEnv::set_lg_dir()">DbEnv::set_lg_dir()</a>
</td>
</tr>
</table>
<p>
then in order for this utility to run correctly, you need a
<a href="../../programmer_reference/env_db_config.html#env_db_config.DB_CONFIG" class="olink">DB_CONFIG</a>
file which sets the proper paths using the
<a class="xref" href="add_data_dir_parameter.html" title="add_data_dir">add_data_dir</a>, or
<a class="xref" href="set_lg_dir_parameter.html" title="set_lg_dir">set_lg_dir</a>
configuration parameters.
</p>
</div>
<p>
The options are as follows:
</p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>
<span class="bold"><strong>-c</strong></span>
</p>
<p>
Perform catastrophic recovery instead of normal recovery.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-e</strong></span>
</p>
<p>
Retain the environment after running recovery. This
option will rarely be used unless a <a href="../../programmer_reference/env_db_config.html#env_db_config.DB_CONFIG" class="olink">DB_CONFIG</a> file is
present in the home directory. If a <a href="../../programmer_reference/env_db_config.html#env_db_config.DB_CONFIG" class="olink">DB_CONFIG</a> file is
not present, then the regions will be created with default
parameter values.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-f</strong></span>
</p>
<p>
Display a message on the standard output showing the percent of
recovery completed.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-h</strong></span>
</p>
<p>
Specify a home directory for the database environment; by default, the
current working directory is used.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-P</strong></span>
</p>
<p>
Specify an environment password. Although Berkeley DB utilities
overwrite password strings as soon as possible, be aware there may be
a window of vulnerability on systems where unprivileged users can see
command-line arguments or where utilities are not able to overwrite
the memory containing the command-line arguments.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-t</strong></span>
</p>
<p>
Recover to the time specified rather than to the most current possible
date. The timestamp argument should be in the form
<code class="literal">[[CC]YY]MMDDhhmm[.SS]</code> where each pair of letters represents the
following:
</p>
<div class="itemizedlist">
<ul type="circle">
<li>
<p>
<span class="bold"><strong>CC</strong></span>
</p>
<p>
The first two digits of the year (the century).
</p>
</li>
<li>
<p>
<span class="bold"><strong>YY</strong></span>
</p>
<p>
The second two digits of the year. If "YY" is specified, but "CC" is not, a
value for "YY" between 69 and 99 results in a "CC" value of 19. Otherwise, a
"CC" value of 20 is used.
</p>
</li>
<li>
<p>
<span class="bold"><strong>MM</strong></span>
</p>
<p>
The month of the year, from 1 to 12.
</p>
</li>
<li>
<p>
<span class="bold"><strong>DD</strong></span>
</p>
<p>
The day of the month, from 1 to 31.
</p>
</li>
<li>
<p>
<span class="bold"><strong>hh</strong></span>
</p>
<p>
The hour of the day, from 0 to 23.
</p>
</li>
<li>
<p>
<span class="bold"><strong>mm</strong></span>
</p>
<p>
The minute of the hour, from 0 to 59.
</p>
</li>
<li>
<p>
<span class="bold"><strong>SS</strong></span>
</p>
<p>
The second of the minute, from 0 to 61.
</p>
</li>
</ul>
</div>
<p>
If the "CC" and "YY" letter pairs are not specified, the values
default to the current year. If the "SS" letter pair is not
specified, the value defaults to 0.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-V</strong></span>
</p>
<p>
Write the library version number to the standard output, and exit.
</p>
</li>
<li>
<p>
<span class="bold"><strong>-v</strong></span>
</p>
<p>
Run in verbose mode.
</p>
</li>
</ul>
</div>
<p>
In the case of catastrophic recovery, an archival copy — or
<span class="emphasis"><em>snapshot</em></span> — of all database files must be
restored along with all of the log files written since the database
file snapshot was made. (If disk space is a problem, log files may be
referenced by symbolic links).
<span>
For further information on creating a database snapshot, see
<a href="../../programmer_reference/transapp_archival.html" class="olink">Archival Procedures</a>.
For further information on performing recovery, see
<a href="../../programmer_reference/transapp_recovery.html" class="olink">Recovery Procedures</a>.
</span>
</p>
<p>
If the failure was not catastrophic, the files present on the system
at the time of failure are sufficient to perform recovery.
</p>
<p>
If log files are missing, <span class="command"><strong>db_recover</strong></span> will identify the missing log
file(s) and fail, in which case the missing log files need to be
restored and recovery performed again.
</p>
<p>
The <span class="command"><strong>db_recover</strong></span> utility uses a Berkeley DB
environment (as described for the <span class="bold"><strong>-h</strong></span>
option, the environment variable
<span class="bold"><strong>DB_HOME</strong></span>, or because the utility
was run in a directory containing a Berkeley DB environment).
In order to avoid environment corruption when using a Berkeley DB
environment, <span class="command"><strong>db_recover</strong></span> should always be given the chance to detach
from the environment and exit gracefully. To cause <span class="command"><strong>db_recover</strong></span> to
release all environment resources and exit cleanly, send it an
interrupt signal (SIGINT).
</p>
<p>
The <span class="command"><strong>db_recover</strong></span> utility exits 0 on success, and >0 if an error
occurs.
</p>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="idp10763200"></a>Environment Variables</h3>
</div>
</div>
</div>
<div class="sect3" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h4 class="title"><a id="idp10796384"></a>DB_HOME</h4>
</div>
</div>
</div>
<p>
If the <span class="bold"><strong>-h</strong></span> option is not specified and
the environment variable DB_HOME is set, it is used as the path of the
database home, as described in the
<a class="xref" href="envopen.html" title="DbEnv::open()">DbEnv::open()</a>
method.
</p>
</div>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="db_printlog.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="utilities.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="db_replicate.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">db_printlog </td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top"> db_replicate</td>
</tr>
</table>
</div>
</body>
</html>
|