﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-SIMONE-随笔分类-oracle</title><link>http://www.blogjava.net/wangxinsh55/category/33868.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 21 Jul 2011 07:40:43 GMT</lastBuildDate><pubDate>Thu, 21 Jul 2011 07:40:43 GMT</pubDate><ttl>60</ttl><item><title>Oracle 10g备份时主机身份证明验证不通过</title><link>http://www.blogjava.net/wangxinsh55/archive/2011/07/21/354786.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 21 Jul 2011 07:10:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/07/21/354786.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/354786.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/07/21/354786.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/354786.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/354786.html</trackback:ping><description><![CDATA[<div>在Oracle EM中执行备份操作时，需要提供主机身份证明以用于访问目标数据库的操作系统。但是我们在保证用户名密码争取的情况下，可能仍然报错。这个错误可能是：<span style="color: #ff0000; font-style: italic">以用户Administrator 的身份连接主机失败。Error:Wrong password for user.</span><br style="color: #000000; font-style: italic" /><br /> <br /> <br /> 这个错误会很让人费解，因为我们已经确保用户名密码输入正确了。产生这个问题的原因是需要在Windows系统中将该用户设置为作为批处理作业登录。即打开【本地安全策略】，在【本地策略】－【用户权限分配】下，将连接主机的用户添加到&#8220;作为批处理作业登录&#8221;中。<br />  </div><img src ="http://www.blogjava.net/wangxinsh55/aggbug/354786.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-07-21 15:10 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/07/21/354786.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名 </title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348311.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 14 Apr 2011 11:16:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348311.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/348311.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348311.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/348311.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/348311.html</trackback:ping><description><![CDATA[<p>数据库名、实例名、数据库域名、全局数据库名、服务名，<br />
这是几个令很多初学者容易混淆的概念。相信很多初学者都与我一样被标题上这些个概念搞得一头雾水。我们现在就来把它们弄个明白。</p>
<p><strong>一、数据库名<br />
什么是数据库名？</strong><br />
数据库名就是一个数据库的标识，就像人的身份证号一样。他用参数DB_NAME表示，如果一台机器上装了多全数据库，那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后，参数DB_NAME被写入参数文件之中。格式如下：<br />
DB_NAME=myorcl<br />
...<br />
在创建数据库时就应考虑好数据库名，并且在创建完数据库之后，数据库名不宜修改，即使要修改也会很麻烦。因为，数据库名还被写入控制文件中，控制文件是以二进制型式存储的，用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名，即修改DB_NAME的值。但是在<span class="hilite1">Oracle</span>启动时，由于参数文件中的DB_NAME与控制文件中的数据库名不一致，导致数据库启动失败，将返回ORA-01103错误。</p>
<p><strong>数据库名的作用</strong><br />
数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。<br />
有很多<span class="hilite1">Oracle</span>安装文件目录是与数据库名相关的，如：<br />
winnt: d:\<span class="hilite1">oracle</span>\product\10.1.0\oradata\DB_NAME\...<br />
Unix: /home/app/<span class="hilite1">oracle</span>/product/10.1.0/oradata/DB_NAME/...<br />
pfile:<br />
winnt: d:\<span class="hilite1">oracle</span>\product\10.1.0\admin\DB_NAME\pfile\ini.ora<br />
Unix: /home/app/<span class="hilite1">oracle</span>/product/10.1.0/admin/DB_NAME/pfile/init$<span class="hilite1">ORACLE</span>_SID.ora<br />
跟踪文件目录：<br />
winnt: /home/app/<span class="hilite1">oracle</span>/product/10.1.0/admin/DB_NAME/bdump/...<br />
另外，在创建数据时，careate database命令中的数据库名也要与参数文件中DB_NAME参数的值一致，否则将产生错误。<br />
同样，修改数据库结构的语句alter database，当然也要指出要修改的数据库的名称。<br />
如果控制文件损坏或丢失，数据库将不能加载，这时要重新创建控制文件，方法是以nomount方式启动实例，然后以create controlfile命令创建控制文件，当然这个命令中也是指指DB_NAME。<br />
还有在备份或恢复数据库时，都需要用到数据库名。<br />
总之，数据库名很重要，要准确理解它的作用。</p>
<p><strong>查询当前数据名</strong><br />
方法一:select name from v$database;<br />
方法二：show parameter db<br />
方法三：查看参数文件。</p>
<p><strong>修改数据库名</strong><br />
前面建议：应在创建数据库时就确定好数据库名，数据库名不应作修改，因为修改数据库名是一件比较复杂的事情。那么现在就来说明一下，如何在已创建数据之后，修改数据库名。步骤如下：<br />
1.关闭数据库。<br />
2.修改数据库参数文件中的DB_NAME参数的值为新的数据库名。<br />
3.以NOMOUNT方式启动实例，修建控制文件(有关创建控制文件的命令语法，请参考<span class="hilite1">oracle</span>文档)</p>
<p><strong>二、<span class="hilite2">数据库实例名</span></strong><br />
<strong>什么是<span class="hilite2">数据库实例名</span>？<br />
</strong><span class="hilite2">数据库实例名</span>是用于和操作系统进行联系的标识，就是说数据库和操作系统之间的交互用的是<span class="hilite2">数据库实例名</span>。实例名也被写入参数文件中，该参数为instance_name，在winnt平台中，实例名同时也被写入注册表。<br />
数据库名和实例名可以相同也可以不同。<br />
在一般情况下，数据库名和实例名是一对一的关系，但如果在<span class="hilite1">oracle</span>并行服务器架构(即<span class="hilite1">oracle</span>实时应用集群)中，数据库名和实例名是一对多的关系。这一点在第一篇中已有图例说明。</p>
<p><strong>查询当前<span class="hilite2">数据库实例名</span></strong><br />
方法一：select instance_name from v$instance;<br />
方法二：show parameter instance<br />
方法三：在参数文件中查询。</p>
<p><strong><span class="hilite2">数据库实例名</span>与<span class="hilite1">ORACLE</span>_SID</strong><br />
虽然两者都表是<span class="hilite1">oracle</span>实例，但两者是有区别的。instance_name是<span class="hilite1">oracle</span>数据库参数。而<span class="hilite1">ORACLE</span>_SID是操作系统的环境变量。ORACLD_SID用于与操作系统交互，也就是说，从操作系统的角度访问实例名，必须通过<span class="hilite1">ORACLE</span>_SID。在winnt不台，<span class="hilite1">ORACLE</span>_SID还需存在于注册表中。<br />
且<span class="hilite1">ORACLE</span>_SID必须与instance_name的值一致，否则，你将会收到一个错误，在unix平台，是&#8220;<span class="hilite1">ORACLE</span> not available&#8221;,在winnt平台，是&#8220;TNS:协议适配器错误&#8221;。</p>
<p><strong><span class="hilite2">数据库实例名</span>与网络连接</strong><br />
<span class="hilite2">数据库实例名</span>除了与操作系统交互外，还用于网络连接的<span class="hilite1">oracle</span>服务器标识。当你配置<span class="hilite1">oracle</span>主机连接串的时候，就需要指定实例名。当然8i以后版本的网络组件要求使用的是服务名SERVICE_NAME。这个概念接下来说明。</p>
<p><strong>三、数据库域名<br />
什么是数据库域名？</strong><br />
在分布工数据库系统中，不同版本的数据库服务器之间，不论运行的操作系统是unix或是windows，各服务器之间都可以通过数据库链路进行远程复制，数据库域名主要用于<span class="hilite1">oracle</span>分布式环境中的复制。举例说明如：<br />
全国交通运政系统的分布式数据库，其中：<br />
福建节点： fj.jtyz<br />
福建厦门节点： xm.fj.jtyz<br />
江西： jx.jtyz<br />
江西上饶：sr.jx.jtyz<br />
这就是数据库域名。<br />
数据库域名在存在于参数文件中，他的参数是db_domain.</p>
<p><strong>查询数据库域名</strong><br />
方法一：select value from v$parameter where name = 'db_domain';<br />
方法二：show parameter domain<br />
方法三：在参数文件中查询。</p>
<p><strong>全局数据库名</strong><br />
全局数据库名=数据库名+数据库域名，如前述福建节点的全局数据库名是：oradb.fj.jtyz</p>
<p><strong>四、数据库服务名</strong><br />
<strong>什么是数据库服务名？<br />
</strong>从<span class="hilite1">oracle</span>9i版本开始，引入了一个新的参数，即数据库服务名。参数名是SERVICE_NAME。<br />
如果数据库有域名，则数据库服务名就是全局数据库名；否则，数据库服务名与数据库名相同。</p>
<p><strong>查询数据库服务名</strong><br />
方法一：select value from v$parameter where name = 'service_name';<br />
方法二：show parameter service_name<br />
方法三：在参数文件中查询。</p>
<p><strong>数据库服务名与网络连接<br />
</strong>从<span class="hilite1">oracle</span>8i开如的<span class="hilite1">oracle</span>网络组件，数据库与客户端的连接主机串使用数据库服务名。之前用的是<span class="hilite1">ORACLE</span>_SID,即<span class="hilite2">数据库实例名</span>。</p>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/348311.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-14 19:16 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348311.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ORA-01033: ORACLE 正在初始化或关闭</title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348310.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 14 Apr 2011 11:15:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348310.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/348310.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348310.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/348310.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/348310.html</trackback:ping><description><![CDATA[<p>C:\Documents and Settings\Administrator&gt;sqlplus /nolog</p>
<p>SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 7月 5 09:50:36 2010</p>
<p>Copyright (c) 1982, 2005, Oracle.&nbsp; All rights reserved.</p>
<p>SQL&gt; conn /as sysdba<br />
已连接。<br />
SQL&gt; shutdown normal<br />
ORA-01109: 数据库未打开</p>
<p><br />
已经卸载数据库。<br />
ORACLE 例程已经关闭。<br />
SQL&gt; startup mount<br />
ORACLE 例程已经启动。</p>
<p>Total System Global Area&nbsp; 289406976 bytes<br />
Fixed Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1248576 bytes<br />
Variable Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 83886784 bytes<br />
Database Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 197132288 bytes<br />
Redo Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7139328 bytes<br />
数据库装载完毕。<br />
SQL&gt; alter database open<br />
&nbsp; 2&nbsp; ;<br />
alter database open<br />
*<br />
第 1 行出现错误:<br />
ORA-00600: 内部错误代码, 参数: [kcratr1_lastbwr], [], [], [], [], [], [], []</p>
<p><br />
SQL&gt; alter database noarchivelog;</p>
<p>数据库已更改。</p>
<p>SQL&gt; alter database open;<br />
alter database open<br />
*<br />
第 1 行出现错误:<br />
ORA-00600: 内部错误代码, 参数: [kcratr1_lastbwr], [], [], [], [], [], [], []</p>
<p><br />
SQL&gt; shutdown immediate<br />
ORA-01109: 数据库未打开</p>
<p><br />
已经卸载数据库。<br />
ORACLE 例程已经关闭。<br />
SQL&gt; startup mount<br />
ORACLE 例程已经启动。</p>
<p>Total System Global Area&nbsp; 289406976 bytes<br />
Fixed Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1248576 bytes<br />
Variable Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 83886784 bytes<br />
Database Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 197132288 bytes<br />
Redo Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7139328 bytes<br />
数据库装载完毕。<br />
SQL&gt; recover database;<br />
完成介质恢复。<br />
SQL&gt; alter database open;</p>
<p>数据库已更改。</p>
<p>SQL&gt; exit</p>
<div class="source_link_bottom"><a href="http://www.cnblogs.com/spymaster/archive/2010/11/23/1885345.html"></a></div>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/348310.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-14 19:15 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/14/348310.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle如何附加数据库</title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/11/348072.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Mon, 11 Apr 2011 08:28:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/11/348072.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/348072.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/11/348072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/348072.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/348072.html</trackback:ping><description><![CDATA[前提:从别的计算机得到一份数据库(矿总院药品价表等等数据库).<br />
目的:把数据库里面的数据附加到本地数据库,从而可以查看数据库中的数据,取之应用.<br />
必须了解信息:<br />
原数据库全局数据库名称:oracle,SID:ORCL.<br />
原数据库存放路径:E:\oracle\oracdata\<br />
本地数据库的安装路径是D:\oracle\<br />
<br />
实现步骤：<br />
一、把数据库相关文件copy到本地E:\oracle\oracdata\下面,(确保文件不能缺少).<br />
<br />
二、修改初始化文件init.ora,路径在D:\oracle\admin\oracle\pfile\init.ora<br />
查找control_files = ("D:\oracle\oradata\oracle\control01.ctl", "D:\oracle\oradata\oracle\control02.ctl", "D:\oracle\oradata\oracle\control03.ctl")<br />
<br />
修改为:<br />
control_files = ("E:\oracle\oradata\oracle\control01.ctl", "E:\oracle\oradata\oracle\control02.ctl", "E:\oracle\oradata\oracle\control03.ctl")<br />
<br />
三、重新启动实例.观察E:\oracle\oradata\oracle\下面的控制文件时间是否改变,如如果改变,说明控制文件已经附加成功.<br />
<br />
四、修改字符集.<br />
打开注册表查找: [HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]修改<br />
"NLS_LANG"="AMERICAN_AMERICA.US7ASCII",原来"NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK",<br />
目的是为了避免中文在数据库里面出现乱码的现象.<br />
<br />
五、启动svrmgrl.<br />
Svrmgrl&gt;shutdown immediate;<br />
重新启动实例.<br />
<br />
六、改变数据库文件.<br />
<div class="UBBPanel">
<div class="UBBTitle">&nbsp;引用内容</div>
<div class="UBBContent">SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\INDX01.DBF' to 'E:\oracle\oradata\oracle\INDX01.DBF&#8217;;<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\DR01.DBF' to 'E:\oracle\oradata\oracle\ DR01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\RBS01.DBF' to 'E:\oracle\oradata\oracle\ RBS01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\SYSTEM01.DBF' to 'E:\oracle\oradata\oracle\ SYSTEM01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\TEMP01.DBF' to 'E:\oracle\oradata\oracle\ TEMP01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\USERS01.DBF' to 'E:\oracle\oradata\oracle\ USERS01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\TOOLS01.DBF' to 'E:\oracle\oradata\oracle\ TOOLS01.DBF&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\REDO01.LOGF' to 'E:\oracle\oradata\oracle\ REDO01.LOG&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\REDO02.LOGF' to 'E:\oracle\oradata\oracle\ REDO02.LOG&#8217;;<br />
<br />
SVRMGR&gt; alter database rename file 'D:\oracle\oradata\oracle\REDO02.LOGF' to 'E:\oracle\oradata\oracle\ REDO02.LOG&#8217;;</div>
</div>
<br />
<br />
七、重新启动数据库实例.<br />
八、修改密码文件.pwdorcl.ora(文件名根据SID名称改变),路径D:\oracle\ora81\database.<br />
一般先备份一下密码文件.然后把改文件删除.<br />
然后用orapwd命令重新生成密码文件.<br />
C:\&gt;orapwd file= D:\oracle\ora81\database\pwdorcl.ora password=oracle entries=5;<br />
说明:file是生成的密码文件的完整的路径名称.password是新密码.<br />
<br />
九、重新启动数据库.检查是否可以正常运行,如果运行失败,检查步骤是否全部符合. 
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/348072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-11 16:28 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/11/348072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle的几种启动方式 </title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347812.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 07 Apr 2011 09:08:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347812.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/347812.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347812.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/347812.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/347812.html</trackback:ping><description><![CDATA[Oracle的几种启动方式 <br />
<br />
1、startup nomount <br />
<br />
　　非安装启动，这种方式启动下可执行：重建控制文件、重建数据库。 <br />
<br />
　　读取init.ora文件，启动instance，即启动SGA和后台进程，这种启动只需要init.ora文件。 <br />
<br />
2、startup mount dbname <br />
<br />
　　安装启动，这种方式启动下可执行：数据库日志归档、数据库介质恢复、使数据文件联机或脱机、重新定位数据文件、重做日志文件。 <br />
<br />
　　执行&#8220;nomount&#8221;，然后打开控制文件，确认数据文件和联机日志文件的位置，但此时不对数据文件和日志文件进行校验检查。 <br />
<br />
3、startup open dbname <br />
<br />
　　先执行&#8220;nomount&#8221;，然后执行&#8220;mount&#8221;，再打开包括Redo log文件在内的所有数据库文件，这种方式下可访问数据库中的数据。 <br />
<br />
4、startup，等于以下三个命令 <br />
<br />
　　startup nomount <br />
<br />
　　alter database mount <br />
<br />
　　alter database open 
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/347812.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-07 17:08 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347812.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ALTER DATABASE 与 ALTER TABLESPACE OFFLINE的区别 </title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347792.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 07 Apr 2011 07:35:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347792.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/347792.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347792.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/347792.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/347792.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 一．DataFile脱机或联机的两种方法：&nbsp;&nbsp;&nbsp;&nbsp;①&nbsp;ALTER&nbsp;DATABASE&nbsp;语句修改单独的DataFile&nbsp;&nbsp;&nbsp;&nbsp;②&nbsp;ALTER&nbsp;TABLESPACE&nbsp;语句修改所有的DataFile&nbsp;&nbsp;&nbsp;&nbsp;&nb...&nbsp;&nbsp;<a href='http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347792.html'>阅读全文</a><img src ="http://www.blogjava.net/wangxinsh55/aggbug/347792.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-07 15:35 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347792.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle 移动数据文件的操作方法 </title><link>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347791.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 07 Apr 2011 07:34:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347791.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/347791.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347791.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/347791.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/347791.html</trackback:ping><description><![CDATA[<div style="layout-grid:  15.6pt none" class="Section0">
<p style="line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">将表空间和数据文件从一个位置移动到另一个位置的操作方法</span></p>
<p style="line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; color: #ff0000; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">一．&nbsp;</span><span style="font-family: '宋体'; color: #ff0000; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">OFFLINE</span></p>
<p style="text-align: justify; line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">OFFLINE&nbsp;分为</span><span style="font-family: 'Times New Roman'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">ALTER&nbsp;DATABASE&nbsp;<span style="font-family: 宋体">与&nbsp;</span><span style="font-family: Times New Roman">ALTER&nbsp;TABLESPACE&nbsp;OFFLINE</span><span style="font-family: 宋体">，</span></span></p>
<p style="text-align: justify; line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: 'Times New Roman'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">他们的区别参看<span style="font-family: Times New Roman">blog</span><span style="font-family: 宋体">：</span></span><span><a href="http://blog.csdn.net/tianlesoftware/archive/2009/11/29/4898800.aspx"><span style="font-family: 'Times New Roman'; color: #0000ff; font-size: 10pt; text-decoration: underline; mso-spacerun: 'yes'" class="15">http://blog.csdn.net/tianlesoftware/archive/2009/11/29/4898800.aspx</span></a></span></p>
<p style="text-align: justify; line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: 'Times New Roman'; color: #ff0000; font-size: 12pt; font-weight: bold; mso-spacerun: 'yes'">按数据文件来：</span></p>
<p style="text-align: justify; line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">1.</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">先将</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">相应的数据文件</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;offline</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">ALTER</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">DATABASE</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">DATAFILE</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\ORACLE\ORADATA\DBA\TEST01.DBF'</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">OFFLINE;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">2</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">.</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">把数据文件&nbsp;copy&nbsp;到新位置</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">3.&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">alter</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">database</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">rename</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">file</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\ORACLE\ORADATA\DBA\TEST01.DBF'</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">to</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\TEST01.DBF'</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: '宋体'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">4.&nbsp;</span><span style="font-family: '宋体'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">介质恢复<span style="font-family: Courier">(offline&nbsp;</span><span style="font-family: 宋体">数据文件必须要介质恢复</span><span style="font-family: Courier">)</span></span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">recover</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">datafile</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\TEST01.DBF'</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">5.&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">将相应的</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">数据文件</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;online&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: '宋体'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">ALTER</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">DATABASE</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">DATAFILE</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\TEST01.DBF'</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">ONLINE;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '宋体'; color: #ff0000; font-size: 12pt; font-weight: bold; mso-spacerun: 'yes'">按表空间来：</span></p>
<p style="text-align: justify; line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">1.</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">先将相应的表空间</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">offline</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: '宋体'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">alter</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">tablespace</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">test</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">offline;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">2</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">.</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">把数据文件&nbsp;copy&nbsp;到新位置</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">3.&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">alter&nbsp;tablespace&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">TEST</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;rename&nbsp;datafile&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\TEST01.DBF'</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;to</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">'D:\ORACLE\ORADATA\DBA\TEST01.DBF'</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">4.&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">将表空间&nbsp;online&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;alter</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">tablespace</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">test</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #0000ff; font-size: 10.5pt; mso-spacerun: 'yes'">online;</span><span style="font-family: 'Courier'; background: #c0c0c0; color: #000000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;</span></p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0">&nbsp;</p>
<p style="text-align: left; padding-bottom: 0pt; line-height: 150%; margin-top: 0pt; padding-left: 0pt; padding-right: 0pt; margin-bottom: 0pt; background: #eeeedd; padding-top: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '宋体'; color: #ff0000; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">二．&nbsp;<span style="font-family: Times New Roman">Shutdown&nbsp;</span><span style="font-family: 宋体">数据库</span></span></p>
<p style="line-height: 17.25pt; margin-top: 5pt; margin-bottom: 5pt; word-break: break-all" class="p0"><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">1.&nbsp;关闭数据库</span><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">C:&gt;set&nbsp;ORACLE_SID=DBA</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">C:&gt;sqlplus&nbsp;/nolog</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL*Plus:&nbsp;Release&nbsp;10.2.0.1.0&nbsp;-&nbsp;Production&nbsp;on&nbsp;<span style="font-family: 宋体">星期日&nbsp;</span><span style="font-family: Times New Roman">11</span><span style="font-family: 宋体">月&nbsp;</span><span style="font-family: Times New Roman">29&nbsp;11:14:02&nbsp;2009</span></span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Copyright&nbsp;(c)&nbsp;1982,&nbsp;2005,&nbsp;Oracle.&nbsp;&nbsp;All&nbsp;rights&nbsp;reserved.</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;conn&nbsp;sys/admin&nbsp;as&nbsp;sysdba</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">已连接。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;shutdown&nbsp;immediate</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">数据库已经关闭。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">已经卸载数据库。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">ORACLE&nbsp;<span style="font-family: 宋体">例程已经关闭。</span></span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">2.&nbsp;</span><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">把数据文件&nbsp;copy&nbsp;到新位置</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'"><br />
</span><span style="font-family: '宋体'; color: #ff0000; font-size: 10.5pt; mso-spacerun: 'yes'">3.&nbsp;rename&nbsp;datafile</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;startup&nbsp;mount</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">ORACLE&nbsp;<span style="font-family: 宋体">例程已经启动。</span></span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Total&nbsp;System&nbsp;Global&nbsp;Area&nbsp;&nbsp;289406976&nbsp;bytes</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Fixed&nbsp;Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1248576&nbsp;bytes</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Variable&nbsp;Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;71303872&nbsp;bytes</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Database&nbsp;Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;209715200&nbsp;bytes</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">Redo&nbsp;Buffers&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7139328&nbsp;bytes</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">数据库装载完毕。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;alter&nbsp;database&nbsp;rename&nbsp;file&nbsp;'D:\ORACLE\ORADATA\DBA\TEST01.DBF'&nbsp;to&nbsp;'D:\TEST01</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">.DBF';</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">数据库已更改。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;alter&nbsp;database&nbsp;open;</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">数据库已更改。</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SQL&gt;&nbsp;select&nbsp;file#,name,status&nbsp;from&nbsp;v$datafile;</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;FILE#&nbsp;NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">STATUS</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">--------&nbsp;-------------------------------------------------------</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">---------------</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;1&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">D:\ORACLE\ORADATA\DBA\SYSTEM01&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">SYSTEM</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;2&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">D:\ORACLE\ORADATA\DBA\UNDOTBS0</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;ONLINE</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;3&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">D:\ORACLE\ORADATA\DBA\SYSAUX01&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">ONLINE</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;4&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">D:\ORACLE\ORADATA\DBA\USERS01.&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">ONLINE</span></p>
<p style="margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;5&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">D:\TEST01.DBF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;</span><span style="font-family: '宋体'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;</span><span style="font-family: 'Times New Roman'; font-size: 10.5pt; mso-spacerun: 'yes'">&nbsp;ONLINE</span></p>
</div>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/347791.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2011-04-07 15:34 <a href="http://www.blogjava.net/wangxinsh55/archive/2011/04/07/347791.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle数据库备份删除操作</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/11/05/337300.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Fri, 05 Nov 2010 03:08:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/11/05/337300.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/337300.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/11/05/337300.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/337300.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/337300.html</trackback:ping><description><![CDATA[<p>&nbsp; </p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US">1</span><span style="font-family: 宋体; font-size: 22pt;">、删除多余的归档日志</span><span style="font-size: 22pt;" lang="EN-US"><o:p></o:p></span></p>
<span style="font-family: 宋体;">
<p>在ORACLE10G中，默认的归档路径为$ORACLE_BASE/flash_recovery_area。对于这个路径，ORACLE有一个限制，就是默认只能有2G的空间给归档日志使用，可以使用下面两个SQL语句去查看它的限制：<br />
1. select * from v$recovery_file_dest;<br />
2. show parameter db_recovery_file_dest(这个更友好直观一些)<br />
当归档日志数量大于2G时，那么就会由于没有更多的空间去容纳更多的归档日志会报无法继续归档的错误。<br />
如：&#8220;RA-19809: limit exceeded for recovery files<br />
ORA-19804: cannot reclaim 10017792 bytes disk space from 2147483648 limit<br />
ARC0: Error 19809 Creating archive log file to '/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2007_04_30/o1_mf_1_220_0_.arc' &#8221;这时我们可以修改它的默认限制，比如说将它增加到5G或更多，也可以将归档路径重新置到别的路径，就不会有这个限制了。</p>
<p>　　更改限制语句如下：<br />
alter system set db_recovery_file_dest_size=5368709102&nbsp; (这里为5G 5x1024x1024x1024=5G)<br />
alter system set db_recovery_file_dest_size=10737418240</p>
<p class="MsoNormal"><br />
<br />
进入</p>
</span><span lang="EN-US">rman target username/password@database</span>
<p>&nbsp;</p>
<p class="MsoNormal"><span style="font-family: 宋体;">执行下边的交叉校验</span></p>
<p class="MsoNormal"><span lang="EN-US">crosscheck archivelog all;</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">此时可能会提示校验失败，类似下边的提示：</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; crosscheck archivelog all;</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">释放的通道</span><span lang="EN-US">: ORA_DISK_1</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">分配的通道</span><span lang="EN-US">: ORA_DISK_1</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">通道</span><span lang="EN-US"> ORA_DISK_1: sid=14 devtype=DISK</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">对归档日志的验证失败</span></p>
<p class="MsoNormal"><span lang="EN-US">&#8230;&#8230;&#8230;&#8230;&#8230;.</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">这时，需要执行</span><span lang="EN-US">exit</span><span style="font-family: 宋体;">退出</span><span lang="EN-US">rman</span><span style="font-family: 宋体;">。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">在命令提示符窗口下执行下边的字符集设置</span></p>
<p class="MsoNormal"><span lang="EN-US">C:&gt;set nls_lang=american_america.zhs16gbk</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">然后再进入</span><span lang="EN-US">rman<span>&nbsp; </span></span><span style="font-family: 宋体;">，再执行</span><span lang="EN-US">crosscheck archivelog all;</span><span style="font-family: 宋体;">一般不会再出现这样的问题了。</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">在命令窗口里面执行</span></p>
<p class="MsoNormal"><span lang="EN-US">DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">说明</span></p>
<p class="MsoNormal"><span lang="EN-US">SYSDATA-7</span><span style="font-family: 宋体;">，表明当前的系统时间</span><span lang="EN-US">7</span><span style="font-family: 宋体;">天前，</span><span lang="EN-US">before</span><span style="font-family: 宋体;">关键字表示在</span><span lang="EN-US">7</span><span style="font-family: 宋体;">天前的归档日志，如果使用了闪回功能，也会删除闪回的数据。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">同样道理，也可以删除从</span><span lang="EN-US">7</span><span style="font-family: 宋体;">天前到现在的全部日志，不过这个命令要考虑清楚，做完这个删除，最好马上进行全备份数据库</span></p>
<p class="MsoNormal"><span lang="EN-US">DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">UNIX/LINUX</span><span style="font-family: 宋体;">下也可以通过</span><span lang="EN-US">FIND</span><span style="font-family: 宋体;">找到</span><span lang="EN-US">7</span><span style="font-family: 宋体;">天前的归档数据，使用</span><span lang="EN-US">EXEC</span><span style="font-family: 宋体;">子操作删除</span></p>
<p class="MsoNormal"><span lang="EN-US">find /oraarchive -xdev -mtime +7 -name "*.dbf" -exec rm -f {} ;</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">这样做仍然会在</span><span lang="EN-US">RMAN</span><span style="font-family: 宋体;">里留下未管理的归档文件</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">仍需要在</span><span lang="EN-US">RMAN</span><span style="font-family: 宋体;">里执行下面</span><span lang="EN-US">2</span><span style="font-family: 宋体;">条命令</span></p>
<p class="MsoNormal"><span lang="EN-US">crosscheck archivelog all;</span></p>
<p class="MsoNormal"><span lang="EN-US">delete expired archivelog all;</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">所以还不如上面的方法好用，不过用</span><span lang="EN-US">FIND</span><span style="font-family: 宋体;">的好处就是，可以在条件上，和</span><span lang="EN-US">EXEC</span><span style="font-family: 宋体;">子项上做很多操作，实现更复杂的功能</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US">2</span><span style="font-family: 宋体; font-size: 22pt;">、</span><span style="font-size: 22pt;" lang="EN-US">report obsolete</span><span style="font-family: 宋体; font-size: 22pt;">及</span><span style="font-size: 22pt;" lang="EN-US">delete obsolete</span><span style="font-family: 宋体; font-size: 22pt;">删除过期备份命令</span><span style="font-size: 22pt;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">使用</span><span lang="EN-US">report obsolete</span><span style="font-family: 宋体;">命令报告过期备份</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; report obsolete;</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN retention policy will be applied to the command</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN retention policy is set to redundancy 1</span></p>
<p class="MsoNormal"><span lang="EN-US">Report of obsolete backups and copies</span></p>
<p class="MsoNormal"><span lang="EN-US">Type<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Key<span>&nbsp;&nbsp;&nbsp; </span>Completion Time<span>&nbsp;&nbsp;&nbsp; </span>Filename/Handle</span></p>
<p class="MsoNormal"><span lang="EN-US">-------------------- ------ ------------------ --------------------</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Set<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>125<span>&nbsp;&nbsp;&nbsp; </span>01-NOV-04</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Piece<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>125<span>&nbsp;&nbsp;&nbsp; </span>01-NOV-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/data1/oracle/orabak/full_1_541045804</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Set<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>131<span>&nbsp;&nbsp;&nbsp; </span>04-NOV-04</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Piece<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>131<span>&nbsp;&nbsp;&nbsp; </span>04-NOV-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/data1/oracle/orabak/full_AVATAR2_20041104_131</span></p>
<p class="MsoNormal"><span lang="EN-US">....</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">使用</span><span lang="EN-US">delete obsolete</span><span style="font-family: 宋体;">命令删除过期备份</span><span lang="EN-US">:</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; delete obsolete;</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN retention policy will be applied to the command</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN retention policy is set to redundancy 1</span></p>
<p class="MsoNormal"><span lang="EN-US">using channel ORA_DISK_1</span></p>
<p class="MsoNormal"><span lang="EN-US">Deleting the following obsolete backups and copies:</span></p>
<p class="MsoNormal"><span lang="EN-US">Type<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>Key<span>&nbsp;&nbsp;&nbsp; </span>Completion Time<span>&nbsp;&nbsp;&nbsp; </span>Filename/Handle</span></p>
<p class="MsoNormal"><span lang="EN-US">-------------------- ------ ------------------ --------------------</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Set<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>125<span>&nbsp;&nbsp;&nbsp; </span>01-NOV-04</span></p>
<p class="MsoNormal"><span lang="EN-US">Backup Piece<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>125<span>&nbsp;&nbsp;&nbsp; </span>01-NOV-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/data1/oracle/orabak/full_1_541045804</span></p>
<p class="MsoNormal"><span lang="EN-US">....</span></p>
<p class="MsoNormal"><span lang="EN-US">Archive Log<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>2704<span>&nbsp;&nbsp; </span>17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/opt/oracle/oradata/avatar2/archive/1_2716.dbf</span></p>
<p class="MsoNormal"><span lang="EN-US">Archive Log<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>2703<span>&nbsp;&nbsp; </span>17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/opt/oracle/oradata/avatar2/archive/1_2715.dbf</span></p>
<p class="MsoNormal"><span lang="EN-US">Archive Log<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>2702<span>&nbsp;&nbsp; </span>17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>/opt/oracle/oradata/avatar2/archive/1_2714.dbf</span></p>
<p class="MsoNormal"><span lang="EN-US">Do you really want to delete the above objects (enter YES or NO)? yes</span></p>
<p class="MsoNormal"><span lang="EN-US">deleted backup piece</span></p>
<p class="MsoNormal"><span lang="EN-US">backup piece handle=/data1/oracle/orabak/full_AVATAR2_20041206_173 recid=173 stamp=544156241</span></p>
<p class="MsoNormal"><span lang="EN-US">.....</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">注：在执行删除的时候，可能会提示下边的报错信息：</span></p>
<p class="MsoNormal"><span lang="EN-US">ORA-19554: </span><span style="font-family: 宋体;">配置设备时出错</span><span lang="EN-US">, </span><span style="font-family: 宋体;">设备类型</span><span lang="EN-US">: SBT_TAPE, </span><span style="font-family: 宋体;">设备名称</span><span lang="EN-US">:</span></p>
<p class="MsoNormal"><span lang="EN-US">ORA-27211: </span><span style="font-family: 宋体;">未能加载介质管理库</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">解决方法，运行下边的命令：</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; allocate channel for maintenance type disk;</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; crosscheck archivelog all;</span></p>
<p class="MsoNormal"><span lang="EN-US">RMAN&gt; delete obsolete;</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US">3</span><span style="font-family: 宋体; font-size: 22pt;">、</span><span style="font-size: 22pt;" lang="EN-US">Oracle RMAN</span><span style="font-family: 宋体; font-size: 22pt;">的</span><span style="font-size: 22pt;" lang="EN-US">show,list,crosscheck,delete<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Oracle RMAN</span><span style="font-family: 宋体;">的</span><span lang="EN-US">show,list,crosscheck,delete </span><span style="font-family: 宋体;">命令整理</span></p>
<p class="MsoNormal"><span lang="EN-US">1</span><span style="font-family: 宋体;">、</span><span lang="EN-US">SHOW</span><span style="font-family: 宋体;">命令：</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">显示</span><span lang="EN-US">rman</span><span style="font-family: 宋体;">配置：</span><span lang="EN-US"> RMAN&gt; show all;</span></p>
<p class="MsoNormal"><span lang="EN-US">2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">REPORT</span><span style="font-family: 宋体;">命令：</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.1</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report schema<span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-family: 宋体;">报告目标数据库的物理结构</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt;report need backup days=3;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告最近</span><span lang="EN-US">3</span><span style="font-family: 宋体;">天没有被备份的数据文件；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report need backup days 3 tablespace users;<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">在</span><span lang="EN-US">USERS</span><span style="font-family: 宋体;">表空间上</span><span lang="EN-US">3</span><span style="font-family: 宋体;">天未备份的数据文件</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.4</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report need backup incremental 3;<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告恢复数据文件需要的增量备份个数超过</span><span lang="EN-US">3</span><span style="font-family: 宋体;">次的数据文件</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.5</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report need backup redundancy 2 database;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告备份文件低于</span><span lang="EN-US">2</span><span style="font-family: 宋体;">份的所有数据文件</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt;report need backup redundancy=2;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.6</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report need backup recovery window of 6 days;<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告文件报表的恢复需要超过</span><span lang="EN-US">6</span><span style="font-family: 宋体;">天的归档日志的数据文件</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.7</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report unrecoverable;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告数据库所有不可恢复的数据文件</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.8</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; report obsolete redunndancy 2; </span><span style="font-family: 宋体;">报告备份次数超过</span><span lang="EN-US">2</span><span style="font-family: 宋体;">次的陈旧备份</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>2.9</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt;report obsolete;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">报告多余的备份；</span></p>
<p class="MsoNormal"><span lang="EN-US">3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">LIST</span><span style="font-family: 宋体;">命令：列出备份信息</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.1</span><span style="font-family: 宋体;">、列出数据文件备份集</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt;list backup<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出详细备份；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt;list expired backup<span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出过期备份</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt; list backup of database;<span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出所有数据文件的备份集；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt; list backup of tablespace user01; </span><span style="font-family: 宋体;">列出特定表空间的所有数据文件备份集；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list backup of controlfile<span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出控制文件备份集</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list backup of archivelog all<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出归档日志备份集详细信息</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt;list archivelog all;</span><span style="font-family: 宋体;">　　　　　　列出归档日志备份集简要信息</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.4</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list backup of spfile<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出</span><span lang="EN-US">SPFILE</span><span style="font-family: 宋体;">备份集</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.5</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list copy of datafile 5<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出数据文件映像副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.6</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list copy of controlfile<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出控制文件映像副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.7</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list copy of archivelog all<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出归档日志映像副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.8</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; list incarnation of database<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">列出对应物</span><span lang="EN-US">/</span><span style="font-family: 宋体;">列出数据库副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.9</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt;list backup summary;<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">概述可用的备份；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">　　　　　　　　　　　</span><span lang="EN-US">B</span><span style="font-family: 宋体;">表示</span><span lang="EN-US">backup</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">　　　　　　　　　　　</span><span lang="EN-US">F</span><span style="font-family: 宋体;">表示</span><span lang="EN-US">FULL</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">　　　　　　　　　　　</span><span lang="EN-US">A</span><span style="font-family: 宋体;">表示</span><span lang="EN-US">archive log</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">　　　　　　　　　　　</span><span lang="EN-US">0 1</span><span style="font-family: 宋体;">表示</span><span lang="EN-US">incremental backup</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">　　　　　　　　　　　</span><span lang="EN-US">S</span><span style="font-family: 宋体;">说明备份状态（</span><span lang="EN-US">A</span><span style="font-family: 宋体;">　</span><span lang="EN-US">AVAILABLE</span><span style="font-family: 宋体;">　　　</span><span lang="EN-US">X EXPIRED )</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>3.10</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt;list backup by file<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">按备份类型列出备份；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">按照数据文件备份，归档日志备份，控制文件备份，服务器参数文件备份　列出</span></p>
<p class="MsoNormal"><span lang="EN-US">4</span><span style="font-family: 宋体;">、</span><span lang="EN-US">CROSSCHECK</span><span style="font-family: 宋体;">命令：校验备份信息</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.1</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对所有备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of database<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对所有数据文件的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of tablespace users<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对特定表空间的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.4</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of datafile 4<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对特定数据文件的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.5</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of controlfile<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对控制文件的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.6</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of spfile<span>&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对</span><span lang="EN-US">SPFILE</span><span style="font-family: 宋体;">的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.7</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup of archivelog sequence 3 </span><span style="font-family: 宋体;">核对归档日志的备份集</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.8</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对所有映像副本</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.9</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy of database<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对所有数据文件的映像副本</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.10</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy of tablespace users<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对特定表空间的映像副本</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.11</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy of datafile 6<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">核对特定数据文件的映像副本</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.12</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy of archivelog sequence 4<span>&nbsp; </span></span><span style="font-family: 宋体;">核对归档日志的映像副本</span><span lang="EN-US">;<span>&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.13</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck copy of controlfile <span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></span><span style="font-family: 宋体;">核对控制文件的映像副本</span><span lang="EN-US">;<span>&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.14</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup tag='SAT_BACKUP';</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.15</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup completed after 'sysdate - 2'</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.16</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup completed between 'sysdate - 5' and 'sysdate -2 '</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.17</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck backup device type sBT;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.18</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck archivelog all;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.19</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck archivelog like '%ARC00012.001'</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.20</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck archivelog from sequence 12;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>4.21</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; crosscheck archivelog until sequence 522;</span></p>
<p class="MsoNormal"><span lang="EN-US">5</span><span style="font-family: 宋体;">、</span><span lang="EN-US">DELETE</span><span style="font-family: 宋体;">：删除备份</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.1</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete obsolete;<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除陈旧备份；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete expired backup; </span><span style="font-family: 宋体;">删除</span><span lang="EN-US">EXPIRED</span><span style="font-family: 宋体;">备份</span><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp; </span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete expired copy;<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除</span><span lang="EN-US">EXPIRED</span><span style="font-family: 宋体;">副本；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.4</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete backupset 19;<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除特定备份集；</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.5</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete backuppiece ''d:\backup\DEMO_19.bak''<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除特定备份片</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.6</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete backup<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除所有备份集</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.7</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete datafilecopy ''d:\backup\DEMO_19.bak''<span>&nbsp; </span></span><span style="font-family: 宋体;">删除特定映像副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.8</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete copy<span>&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">删除所有映像副本</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.9</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete archivelog all delete input;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>RMAN&gt; delete backupset 22 format = ''d:\backup\%u.bak'' delete input</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">在备份后删除输入对象</span><span lang="EN-US">;</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp; </span>5.10</span><span style="font-family: 宋体;">、</span><span lang="EN-US">RMAN&gt; delete backupset id;</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US">4</span><span style="font-family: 宋体; font-size: 22pt;">、</span><span style="font-size: 22pt;" lang="EN-US">em</span><span style="font-family: 宋体; font-size: 22pt;">控制台对备份的操作</span><span style="font-size: 22pt;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">使用</span><span lang="EN-US">sys</span><span style="font-family: 宋体;">用户的</span><span lang="EN-US">sysdba</span><span style="font-family: 宋体;">权限进入</span><span lang="EN-US">em</span><span style="font-family: 宋体;">控制台</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">在&#8220;维护&#8221;模块下，点击进入到&#8220;管理当前备份&#8221;操作选项。</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span><span style="font-family: 宋体;">在&#8220;管理当前备份&#8221;选项中可以列出所有的备份集</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">如果要删除备份，可以在下边的列表中选中要删除的备份集，执行&#8220;删除&#8221;命令，这时会有一个确认提示的页面：</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">点击&#8220;是&#8221;按钮，进行删除操作。如果提示操作&#8220;删除&#8221;失败，可以将上一步要执行的命令在命令提示符下使用rman命令来执行。</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size: 22pt;" lang="EN-US">5</span><span style="font-family: 宋体; font-size: 22pt;">、小结</span><span style="font-size: 22pt;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">像归档日志之类的备份，备份的文件夹是在一个叫</span><span lang="EN-US">flash_recovery_area</span><span style="font-family: 宋体;">的目录下边。</span></p>
<p class="MsoNormal"><span lang="EN-US">1</span><span style="font-family: 宋体;">、归档日志备份在</span><span lang="EN-US">ARCHIVELOG </span><span style="font-family: 宋体;">这个文件夹下边，上边对归档日志的操作基本上是对这个文件夹下的文件进行操作。</span></p>
<p class="MsoNormal"><span lang="EN-US">2</span><span style="font-family: 宋体;">、</span><span lang="EN-US">obsolete</span><span style="font-family: 宋体;">删除操作基本上是对</span><span lang="EN-US">AUTOBACKUP</span><span style="font-family: 宋体;">这个文件夹下的文件进行操作。（不是十分的确定）</span></p>
<p class="MsoNormal"><span lang="EN-US">3</span><span style="font-family: 宋体;">、</span><span lang="EN-US">delete backup</span><span style="font-family: 宋体;">操作基本上是对</span><span lang="EN-US">BACKUPSET</span><span style="font-family: 宋体;">文件夹和</span><span lang="EN-US">DATAFILE</span><span style="font-family: 宋体;">文件夹的内容进行操作的。</span></p>
<p class="MsoNormal"><span lang="EN-US">4</span><span style="font-family: 宋体;">、在</span><span lang="EN-US">em</span><span style="font-family: 宋体;">管理后台，最下边有一个&#8220;相关链接&#8221;模块，下有&#8220;作业&#8221;选项链接，可以看到所有数据库备份操作历史作业记录，在此可以对相应的备份作业进行修改操作。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">另外如果要添加备份操作作业时，需要在&#8220;维护&#8221;模块下找到&#8220;调试备份&#8221;链接，推荐使用&#8220;</span><span lang="EN-US">Oracle </span><span style="font-family: 宋体;">建议的备份&#8221;来添加备份操作作业。</span></p>
<p class="MsoNormal"><br />
</p>
<p class="MsoNormal"><span style="font-family: 宋体;">Linux下查看文件夹大小的命令du -sh docname<br />
</span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&nbsp;</o:p></span></p>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/337300.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-11-05 11:08 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/11/05/337300.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>修改计算机名称导致Oracle的em不能用</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337225.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 04 Nov 2010 06:19:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337225.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/337225.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337225.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/337225.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/337225.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000"><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />我是因为修改计算机名称导致Oracle不能用，进行了以下的配置，之后就好了。希望对你有用<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />Oracle&nbsp;安装好后&nbsp;hostname是不能乱改的.<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />How&nbsp;to&nbsp;change&nbsp;the&nbsp;Hostname&nbsp;of&nbsp;the&nbsp;Windows&nbsp;when&nbsp;the10Gwith&nbsp;ASM&nbsp;being&nbsp;used&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />Solution&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />When&nbsp;changing&nbsp;the&nbsp;Hostname,&nbsp;4&nbsp;files&nbsp;would&nbsp;be&nbsp;affected.&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />1)&nbsp;Tnsnames.ora&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2)&nbsp;listener.ora&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />3)&nbsp;Oraclecsservice&nbsp;&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />4)&nbsp;Enterprise&nbsp;Manager&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />1、D:\oracle\product\10.2.0\db_1目录下的&nbsp;原计算机名.orcl------&gt;修改后的计算机名.orcl<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2、D:\oracle\product\10.2.0\db_1\oc4j\j2ee目录下的&nbsp;OC4J_DBConsole_原计算机名_orcl-----&gt;OC4J_DBConsole_修改后的计算机名_orcl<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />3、D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN目录下的&nbsp;listener.ora、sqlnet.ora、tnsnames.ora文件中的local名称<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />4、配置em<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />/*重新配置dbcosole<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />emca&nbsp;-repos&nbsp;drop<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />emca&nbsp;-repos&nbsp;create<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />emca&nbsp;-config&nbsp;dbcontrol&nbsp;db<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />emctl&nbsp;start&nbsp;dbconsole<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />*/&nbsp;&nbsp;&nbsp;基本上是删不干净的，所以使用下面的方法<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />当安装oracle的机器变了机器名，或者变了ip地址。那么原来的dbconsole就起不来了。当在dos下运行：emctl&nbsp;start&nbsp;dbconsole&nbsp;的时候报错。<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />解决办法<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />同样适用于windows,unix,linux其他原因导致DBCONSOLE无法正常启动。<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />1，修改DBSNMP密码：<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />重新配置DBCONSOLE，需要输入DBSNMP密码，但任何密码都会显示错误，需要预先修改。<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;alter&nbsp;user&nbsp;dbsnmp&nbsp;identified&nbsp;by&nbsp;xxx;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2，删除早期DBCONSOLE创建的用户：<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;drop&nbsp;role&nbsp;MGMT_USER;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;drop&nbsp;user&nbsp;MGMT_VIEW&nbsp;cascade;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;drop&nbsp;user&nbsp;sysman&nbsp;cascade;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />3，删除早期DBCONSOLE创建的对象：<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;drop&nbsp;PUBLIC&nbsp;SYNONYM&nbsp;MGMT_TARGET_BLACKOUTS;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />sql&gt;drop&nbsp;public&nbsp;synonym&nbsp;SETEMVIEWUSERCONTEXT;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />4.C:Documents&nbsp;and&nbsp;SettingsAdministrator&gt;emca&nbsp;-config&nbsp;dbcontrol&nbsp;db&nbsp;-repos&nbsp;recreat<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />e&nbsp;-HOST&nbsp;wanglibo<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />&nbsp;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />具体步骤如下：<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />Microsoft&nbsp;Windows&nbsp;XP&nbsp;[版本&nbsp;5.1.2600]<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />(C)&nbsp;版权所有&nbsp;1985-2001&nbsp;Microsoft&nbsp;Corp.<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />C:Documents&nbsp;and&nbsp;SettingsAdministrator&gt;emca&nbsp;-config&nbsp;dbcontrol&nbsp;db&nbsp;-repos&nbsp;recreat<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />e&nbsp;-HOST&nbsp;wanglibo<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />EMCA&nbsp;开始于&nbsp;2009-11-28&nbsp;12:21:41<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />EM&nbsp;Configuration&nbsp;Assistant&nbsp;10.2.0.1.0&nbsp;正式版<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />版权所有&nbsp;(c)&nbsp;2003,&nbsp;2005,&nbsp;Oracle。保留所有权利。<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />输入以下信息:<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />数据库&nbsp;SID:&nbsp;breezyOr<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />监听程序端口号:&nbsp;1521<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />SYS&nbsp;用户的口令:<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />DBSNMP&nbsp;用户的口令:<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />SYSMAN&nbsp;用户的口令:<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />通知的电子邮件地址&nbsp;(可选):<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />通知的发件&nbsp;(SMTP)&nbsp;服务器&nbsp;(可选):<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />-----------------------------------------------------------------<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />已指定以下设置<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />数据库&nbsp;ORACLE_HOME&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.&nbsp;D:oracleproduct10.2.0db_2<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />数据库主机名&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.&nbsp;WANGLIBO<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />监听程序端口号&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.&nbsp;1521<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />数据库&nbsp;SID&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" />.&nbsp;breezyOr<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />通知的电子邮件地址&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />通知的发件&nbsp;(SMTP)&nbsp;服务器&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />-----------------------------------------------------------------<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />是否继续?&nbsp;[yes(Y)/no(N)]:&nbsp;y<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:26:21&nbsp;oracle.sysman.emcp.EMConfig&nbsp;perform<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;正在将此操作记录到&nbsp;D:oracleproduct10.2.0db_2cfgtoollogsemcabreezyOr<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />acleemca_2009-11-28_12-21-41-下午.log。<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:28:00&nbsp;oracle.sysman.emcp.EMReposConfig&nbsp;dropRepository<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;正在删除&nbsp;EM&nbsp;资料档案库&nbsp;(此操作可能需要一段时间)<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:28:02&nbsp;oracle.sysman.emcp.EMReposConfig&nbsp;invoke<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;已成功删除资料档案库<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:28:02&nbsp;oracle.sysman.emcp.EMReposConfig&nbsp;createRepository<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;正在创建&nbsp;EM&nbsp;资料档案库&nbsp;(此操作可能需要一段时间)<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:29:59&nbsp;oracle.sysman.emcp.EMReposConfig&nbsp;invoke<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;已成功创建资料档案库<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:32:40&nbsp;oracle.sysman.emcp.util.DBControlUtil&nbsp;startOMS<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;正在启动&nbsp;Database&nbsp;Control&nbsp;(此操作可能需要一段时间)<img src="http://www.blogjava.net/Images/dot.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:34:40&nbsp;oracle.sysman.emcp.EMDBPostConfig&nbsp;performConfiguration<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;已成功启动&nbsp;Database&nbsp;Control<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:35:08&nbsp;oracle.sysman.emcp.EMDBPostConfig&nbsp;performConfiguration<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />警告:&nbsp;无法创建&nbsp;Database&nbsp;Control&nbsp;快捷方式<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />2009-11-28&nbsp;12:35:22&nbsp;oracle.sysman.emcp.EMDBPostConfig&nbsp;performConfiguration<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />信息:&nbsp;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&nbsp;Database&nbsp;Control&nbsp;URL&nbsp;为&nbsp;http://WANGLIBO:1158/em&nbsp;</span><span style="color: #0000ff">&lt;</span><span style="color: #800000">&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />已成功完成&nbsp;Enterprise&nbsp;</span><span style="color: #ff0000">Manager&nbsp;的配置<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />EMCA&nbsp;结束于&nbsp;2009-11-28&nbsp;12:35:22<br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" />C:Documents&nbsp;and&nbsp;SettingsAdministrator</span><span style="color: #0000ff">&gt;</span><span style="color: #000000"><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><br />
<img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /></span></div>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/337225.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-11-04 14:19 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337225.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>oracle数据库迁移</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337214.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 04 Nov 2010 04:09:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337214.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/337214.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337214.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/337214.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/337214.html</trackback:ping><description><![CDATA[<div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">之前做了一个项目，使用的是oracle数据库，数据库是建在本地测试服务器上的；现需要将整个数据库数据结构及数据放到正式服务器上，现将整个移动过程做一下记录，以做备用。<br />
1、首先需要在正式数据库上创建和测试数据库相同名称的库名CSSP，创建之后可以到$ORACLE_HOME$\product\10.2.0\db_1\network\admin\tnsnames.ora这个文件下看到CSSP库的端口号。<br />
2、打开浏览器进入http://localhost:1158/em&nbsp;此处的端口可以到$ORACLE_HOME$\product\10.2.0\db_1\install\portlist.ini&nbsp;下边查看。使用sys用户的超级管理员权限进入em管理，在&#8220;管理&#8221;模块下的&#8220;表空间&#8221;处创建测试服务器上相同的表空间名称，这里创建了&nbsp;CSSPSPACE。<br />
3、在客户端机器上使用oracle的客户端工具&#8220;Net&nbsp;Configuration&nbsp;Assistant&#8221;创建CSSP连接。<br />
4、安装PL/SQL工具。<br />
5、通过PL/SQL工具使用sys用户的sysdba权限连接CSSP数据库，找到user模块，创建用户duxiu，并给予connect和resource权限，退出PL/SQL程序。<br />
6、使用PL/SQL连接测试服务器的数据库，在&#8220;Tools&#8221;-》&#8220;export&nbsp;user&nbsp;objects&nbsp;<img src="http://www.blogjava.net/Images/dot.gif"  alt="" />&#8221;选项中，导出所有创建表，索引，主键，自增长序列，函数，存储过程，作业等sql命令。<br />
7、使用PL/SQL连接正式数据库，在&#8220;file&#8221;-》&#8220;open&#8221;-》&#8220;command&nbsp;file&#8221;中将上一步导出的脚本导入，并执行；这样数据库的结构都已创建成功了。接下来需要导一些数据进来。<br />
8、使用PL/SQL连接测试服务器的数据库，在&#8220;Tools&#8221;-》&#8220;export&nbsp;tables<img src="http://www.blogjava.net/Images/dot.gif"  alt="" />&#8221;下，选中要导出数据的表，下边导出选项中选择&#8220;PL/SQL&nbsp;Developer&#8221;（&#8220;Oracle&nbsp;Export&#8221;导出选项试过不知道为什么导出之后，无法将导出的数据再导入进去，也没报任何错误提示；&#8220;SQL&nbsp;Inserts&#8221;只是生了插入的sql语句，导出效率等操作太差不推荐使用）。&#8220;compress&nbsp;file&#8221;，&#8220;include&nbsp;storage&#8221;，&#8220;include&nbsp;privileges&#8221;也都选中，在&#8220;Output&nbsp;file&#8221;中选中要导出的文件，点击&#8220;Export&#8221;进行导出。<br />
9、使用PL/SQL连接正式服务器的数据库，在&#8220;Tools&#8221;-》&#8220;Import&nbsp;tables<img src="http://www.blogjava.net/Images/dot.gif"  alt="" />&#8221;选项中找到&#8220;PL/SQL&nbsp;Developer&#8221;选项，在这里只用勾选&#8220;Disable&nbsp;triggers&#8221;和&#8220;Disable&nbsp;foreign&nbsp;key&nbsp;constraints&#8221;，在&#8220;Import&nbsp;file&#8221;选项中找到刚才导出的数据文件，点击&#8220;Import&#8221;按钮将数据导入。<br />
<br />
到此整个迁移过程已完成。</span></div>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/337214.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-11-04 12:09 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/11/04/337214.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>查看oracle 用户执行的sql语句历史记录</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/10/18/335420.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Mon, 18 Oct 2010 02:50:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/10/18/335420.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/335420.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/10/18/335420.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/335420.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/335420.html</trackback:ping><description><![CDATA[<div id="blog_text" class="cnt">
<p>select * from v$sqlarea t order by t.LAST_ACTIVE_TIME desc</p>
<p>注意 ：执行此语句等等一些相关的语句 必须具有DBA 的权限 虽然这条语句很普通 但是需要的时候很管用 能够及时查出一个人执行sql语句情况</p>
<p>-------oracle 查看已经执行过的sql 这些是存在共享池中的 ---------&gt;<br />
select * from v$sqlarea t order by t.LAST_ACTIVE_TIME desc</p>
<p>-----------查看oracle会话----------------------------》</p>
<p>select * from v$session&nbsp;&nbsp;  t order by t.LAST_ACTIVE_TIME desc</p>
<p>-------------查看oracle的权限角色------------------------------&gt;<br />
select&nbsp;&nbsp;  *&nbsp;&nbsp;  from&nbsp;&nbsp;  dba_role_privs;&nbsp;&nbsp;&nbsp;  授予用户和其他角色的角色&nbsp;&nbsp;  <br />
select&nbsp;&nbsp;  *&nbsp;&nbsp;  from&nbsp;&nbsp;  dba_sys_privs;&nbsp;&nbsp;&nbsp;&nbsp;  授予用户和其他角色的系统权限&nbsp;&nbsp;  <br />
select&nbsp;&nbsp;  *&nbsp;&nbsp;  from&nbsp;&nbsp;  dba_tab_privs;&nbsp;&nbsp;&nbsp;&nbsp;  数据库中对象的所有授权<br />
select * from user_role_privs;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  查看当前用户的角色</p>
</div>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/335420.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-10-18 10:50 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/10/18/335420.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle数据库热备份文件过大收缩方法</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/319007.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Wed, 21 Apr 2010 09:36:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/319007.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/319007.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/319007.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/319007.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/319007.html</trackback:ping><description><![CDATA[<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="ProgId" content="Word.Document" />
<meta name="Generator" content="Microsoft Word 12" />
<meta name="Originator" content="Microsoft Word 12" />
<link rel="File-List" href="file:///C:%5CUsers%5Csimone%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" />
<link rel="themeData" href="file:///C:%5CUsers%5Csimone%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" />
<link rel="colorSchemeMapping" href="file:///C:%5CUsers%5Csimone%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" /><!--[if gte mso 9]><xml>
Normal
0
7.8 磅
0
2
false
false
false
EN-US
ZH-CN
X-NONE
MicrosoftInternetExplorer4
</xml><![endif]--><!--[if gte mso 9]><![endif]--><style>
<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:""@宋体";
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{
mso-style-parent:"";
margin:0cm;
margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
font-size:10.5pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{
color:blue;
text-decoration:underline;
text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
{
color:purple;
text-decoration:underline;
text-underline:single;}
.MsoChpDefault
{
mso-bidi-font-family:"Times New Roman";}
/* Page Definitions */
@page
{}
@page Section1
{size:595.3pt 841.9pt;
margin:72.0pt 90.0pt 72.0pt 90.0pt;
layout-grid:15.6pt;}
div.Section1
{page:Section1;}
-->
</style><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{
mso-style-parent:"";
font-size:10.5pt;
font-family:"Calibri","sans-serif";
mso-bidi-font-family:"Times New Roman";}
</style>
<![endif]-->
<p><a href="http://hi.baidu.com/taojia/blog/item/7d5656b5af5165c637d3ca55.html">http://hi.baidu.com/taojia/blog/item/7d5656b5af5165c637d3ca55.html</a></p>
<p><span>ORA-00257: archiver error. Connect internal
only, until freed.</span></p>
<p>Oracle 10g<span style="font-family: 宋体;">数据库物理空间管理方式与以前</span>Oracle<span style="font-family: 宋体;">发生了变化，对归档日志所在的</span>Flash_Recovery_Area<span style="font-family: 宋体;">空间进行了另外限制</span></p>
<p>Flash_Recovery_Area<span style="font-family: 宋体;">空间缺省安装时比较小，只有</span>2GB<span style="font-family: 宋体;">，容易用完</span></p>
<p><span style="font-family: 宋体;">解决过程</span></p>
<p><span style="font-family: 宋体;">　　根据数据库目前可用存储空间情况、</span>FLASH_RECOVERY_AREA<span style="font-family: 宋体;">空间为</span>2GB<span style="font-family: 宋体;">的实际情况，把</span>FLASH_RECOVERY_AREA<span style="font-family: 宋体;">的空间修改为</span>20GB()<span style="font-family: 宋体;">。</span></p>
<p><span>SQL&gt; alter system set
DB_RECOVERY_FILE_DEST_SIZE=20g;</span></p>
<p><span style="font-family: 宋体;">系统已更改。</span></p>
<p>(<span style="font-family: 宋体;">其实问题的本质是归档日志的使用已经达到了</span>spfile<span style="font-family: 宋体;">等启动参数文件中指定的最大值。</span>oracle 10g<span style="font-family: 宋体;">中归档日志默认的存放地是闪回目录，即</span>%ORACLE_BASE%/flash_recovery_area<span style="font-family: 宋体;">的相应实例名下面，这个位置的大小在参数文件中有个限制，解决空间不足的问题可以通过两种方式来实现，一个修改这个大小限制，还有一个就是修改归档日志存放位置。</span>)</p>
<p><span style="font-family: 宋体;">如果不要这些</span>archivelog<span style="font-family: 宋体;">的话，可以删除一些</span></p>
<p><span>rman&gt;DELETE NOPROMPT ARCHIVELOG UNTIL
TIME 'SYSDATE-3'; </span><span style="font-family: 宋体;">直接运行这条</span>
<span style="font-family: 宋体;">这样会只保留三天的归档</span></p>
<p><span>sql&gt; select * from
v$flash_recovery_area_usage;</span></p>
<p>FILE_TYPE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PERCENT_SPACE_USED&nbsp;&nbsp;&nbsp; PERCENT_SPACE_RECLAIMABLE&nbsp;&nbsp; NUMBER_OF_FILES</p>
<p><span>-------------------------------
-------------------------------------<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>-----------------------------------------------------&nbsp;&nbsp; -------------------------------</span></p>
<p>CONTROLFILE<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0</span></p>
<p>ONLINELOG<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0</span></p>
<p>ARCHIVELOG<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6.11<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3</span></p>
<p>BACKUPPIECE<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0</span></p>
<p>IMAGECOPY<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0</span></p>
<p>FLASHBACKLOG<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>0</span></p>
<p><span style="font-family: 宋体;">还可参考：</span><a href="http://www.eygle.com/archives/2004/12/rman_crosscheck.html">http://www.eygle.com/archives/2004/12/rman_crosscheck.html</a></p>
<p>Rman Crosscheck<span style="font-family: 宋体;">删除失效归档</span></p>
<p><span style="font-family: 宋体;">当手工删除了归档日志以后，</span>Rman<span style="font-family: 宋体;">备份会检测到日志缺失，从而无法进一步继续执行。</span></p>
<p><span style="font-family: 宋体;">所以此时需要手工执行</span>crosscheck<span style="font-family: 宋体;">过程，之后</span>Rman<span style="font-family: 宋体;">备份可以恢复正常。</span></p>
<p>1.Crosscheck<span style="font-family: 宋体;">日志</span></p>
<p><span>&nbsp;&nbsp;&nbsp; $
rman target /</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Recovery Manager: Release 9.2.0.4.0 - 64bit Production</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Copyright (c) 1995, 2002, Oracle Corporation.&nbsp;All rights reserved.</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>connected to target database: AVATAR2 (DBID=2480694409)</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt; crosscheck archivelog all;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>using target database controlfile instead of recovery catalog</span></p>
<p>&nbsp;&nbsp;&nbsp; allocated channel: ORA_DISK_1</p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>channel ORA_DISK_1: sid=25 devtype=DISK</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation failed for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2714.dbf
recid=2702 stamp=545107659</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation failed for archived log</span></p>
<p>&nbsp;<span>&nbsp;&nbsp;archive log
filename=/opt/oracle/oradata/avatar2/archive/1_2715.dbf recid=2703
stamp=545108268</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>...........</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation failed for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2985.dbf
recid=2973 stamp=545399327</span></p>
<p><span>&nbsp;&nbsp;&nbsp; validation
succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2986.dbf
recid=2974 stamp=545400820</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2987.dbf
recid=2975 stamp=545401757</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2988.dbf
recid=2976 stamp=545402716</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2989.dbf
recid=2977 stamp=545403661</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2990.dbf
recid=2978 stamp=545404946</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>validation succeeded for archived log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2991.dbf
recid=2979 stamp=545406220</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Crosschecked 278 objects</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt;</span></p>
<p>2.<span style="font-family: 宋体;">使用</span><span>delete expired
archivelog all </span><span style="font-family: 宋体;">命令删除所有过期归档日志</span>:</p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt; delete expired archivelog all;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>released channel: ORA_DISK_1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>allocated channel: ORA_DISK_1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>channel ORA_DISK_1: sid=12 devtype=DISK</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>List of Archived Log Copies</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Key&nbsp;&nbsp;&nbsp; Thrd Seq&nbsp;&nbsp;&nbsp; S Low Time&nbsp;Name</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>------- ---- ------- - --------- ----</span></p>
<p>&nbsp;<span>&nbsp;&nbsp;376<span>&nbsp;&nbsp;&nbsp;
</span>1&nbsp;&nbsp;&nbsp; 2714&nbsp;&nbsp;&nbsp; X 23-NOV-04
=/opt/oracle/oradata/avatar2/archive/1_2714.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>.....</span></p>
<p>3.<span style="font-family: 宋体;">简要介绍一下</span>report obsolete<span style="font-family: 宋体;">命令</span></p>
<p><span style="font-family: 宋体;">使用</span>report obsolete<span style="font-family: 宋体;">命令报告过期备份</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt; report obsolete;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN retention policy will be applied to the command</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN retention policy is set to redundancy 1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Report of obsolete backups and copies</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Key&nbsp;&nbsp;&nbsp; Completion Time&nbsp;&nbsp;&nbsp; Filename/Handle</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>-------------------- ------ ------------------ --------------------</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /data1/oracle/orabak/full_1_541045804</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 131&nbsp;&nbsp;&nbsp; 04-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 131&nbsp;&nbsp;&nbsp; 04-NOV-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/data1/oracle/orabak/full_AVATAR2_20041104_131</span></p>
<p>&nbsp;&nbsp;&nbsp;....</p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 173&nbsp;&nbsp;&nbsp; 06-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 173&nbsp;&nbsp;&nbsp; 06-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/data1/oracle/orabak/full_AVATAR2_20041206_173</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 179&nbsp;&nbsp;&nbsp; 11-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 179&nbsp;&nbsp;&nbsp; 11-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /data1/oracle/orabak/arch544588206.arc</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>.....</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 189&nbsp;&nbsp;&nbsp; 17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/data1/oracle/orabak/arch545106606.arc</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 190&nbsp;&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 190&nbsp;&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /data1/oracle/orabak/arch545106665.arc</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 191&nbsp;&nbsp;&nbsp; 20-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 191&nbsp;&nbsp;&nbsp; 20-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/data1/oracle/orabak/arch_AVATAR2_20041220_194</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2973&nbsp;20-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2985.dbf</span></p>
<p>&nbsp;<span>&nbsp;&nbsp; Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2971&nbsp;20-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2984.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>.....</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2705&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2717.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2704&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2716.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2703&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2715.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2702&nbsp;17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /opt/oracle/oradata/avatar2/archive/1_2714.dbf</span></p>
<p>4.<span style="font-family: 宋体;">使用</span>delete obsolete<span style="font-family: 宋体;">命令删除过期备份</span>:</p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt; delete obsolete;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN retention policy will be applied to the command</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN retention policy is set to redundancy 1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>using channel ORA_DISK_1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Deleting the following obsolete backups and copies:</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Key&nbsp;&nbsp;&nbsp; Completion Time&nbsp;&nbsp;&nbsp; Filename/Handle</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>-------------------- ------ ------------------ --------------------</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /data1/oracle/orabak/full_1_541045804</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>....</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2704&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2716.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2703&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2715.dbf</span></p>
<p><span>&nbsp;&nbsp;&nbsp; Archive
Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2702&nbsp;17-DEC-04<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span>/opt/oracle/oradata/avatar2/archive/1_2714.dbf</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Do you really want to delete the above objects (enter YES or NO)? yes</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>deleted backup piece</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>backup piece handle=/data1/oracle/orabak/full_AVATAR2_20041206_173
recid=173 stamp=544156241</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>.....</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>deleted archive log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2715.dbf
recid=2703 stamp=545108268</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>deleted archive log</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>archive log filename=/opt/oracle/oradata/avatar2/archive/1_2714.dbf
recid=2702 stamp=545107659</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>Deleted 286 objects</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>RMAN&gt; crosscheck archivelog all;</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>released channel: ORA_DISK_1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>allocated channel: ORA_DISK_1</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>channel ORA_DISK_1: sid=19 devtype=DISK</span></p>
<p><span><span>&nbsp;&nbsp;&nbsp;
</span>specification does not match any archive log in the recovery catalog</span></p>
<p>-The End-</p>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/319007.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-04-21 17:36 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/04/21/319007.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle归档日志删除</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/318986.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Wed, 21 Apr 2010 07:14:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/318986.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/318986.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/04/21/318986.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/318986.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/318986.html</trackback:ping><description><![CDATA[http://maincoolbo.javaeye.com/blog/568519<br />
<br />
我们都都知道在controlfile中记录着每一个archivelog的相关信息，当然们在OS下把这些物理文件delete掉后，在我们的
<br />
<br />
controlfile中仍然记录着这些archivelog的信息，在oracle的OEM管理器中有可视化的日志展现出，当我们手工清除
archive目录下的文件后，这些记录并没有被我们从controlfile中清除掉，也就是oracle并不知道这些文件已经不存在了!这时候我们要
做手工的清除的话，下面我经过实验，可以尝试这种方法：
<br />
<br />
1. 进入rman&nbsp;
<br />
<br />
2. connect target /
<br />
<br />
3. crosscheck archivelog all;
<br />
<br />
4. delete expired archivelog all;
<br />
<br />
这时候我们再去OEM中看就一定看不到，如果你的从来没有做过这个动作的话，我们可以比较从这个动作前的controlfile后动作后的
controlfile的大小!
<br />
<br />
ORACLE正确删除归档并回收空间的方法
<br />
<br />
ORACLE正确删除归档并回收空间的方法
<br />
<br />
一个ORACLE归档日志经常满，表现为/oraarchive
这个文件空间占用100％大家一定抱怨ORACLE为何没有归档维护工具，很多人直接删除了事，错了，ORACLE有，而且很智能，可以正确的删除归档和
FLASHBACK，不过切记,ORACLE归档日志对于ORACLE的数据恢复和备份非常重要，不到万不得已不要删除归档日志。
<br />
<br />
删除归档日志的过程
<br />
<br />
以ORACLE用户身份登录到数据库服务器主机或通过网络连接
<br />
<br />
进入ORACLE数据备份工具
<br />
<br />
rman target/
<br />
<br />
或rman target/@orcl
<br />
<br />
在命令窗口里面执行
<br />
<br />
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
<br />
<br />
说明
<br />
<br />
SYSDATA-7，表明当前的系统时间7天前，before关键字表示在7天前的归档日志，如果使用了闪回功能，也会删除闪回的数据。
<br />
<br />
同样道理，也可以删除从7天前到现在的全部日志，不过这个命令要考虑清楚，做完这个删除，最好马上进行全备份数据库
<br />
<br />
DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';
<br />
<br />
<br />
<br />
UNIX/LINUX下也可以通过FIND找到7天前的归档数据，使用EXEC子操作删除
<br />
<br />
<br />
<br />
find /oraarchive -xdev -mtime +7 -name "*.dbf" -exec rm -f {} ;
<br />
<br />
这样做仍然会在RMAN里留下未管理的归档文件
<br />
<br />
仍需要在RMAN里执行下面2条命令
<br />
<br />
crosscheck archivelog all;
<br />
<br />
delete expired archivelog all;
<br />
<br />
所以还不如上面的方法好用，不过用FIND的好处就是，可以在条件上，和EXEC子项上做很多操作，实现更复杂的功能
<br />
<br />
3.简要介绍一下report obsolete命令
<br />
<br />
<br />
<br />
使用report obsolete命令报告过期备份
<br />
<br />
RMAN&gt; report obsolete;
<br />
<br />
RMAN retention policy will be applied to the command
<br />
<br />
RMAN retention policy is set to redundancy 1
<br />
<br />
Report of obsolete backups and copies
<br />
<br />
Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Key&nbsp;&nbsp;&nbsp; Completion Time&nbsp;&nbsp;&nbsp; Filename/Handle
<br />
<br />
-------------------- ------ ------------------ --------------------
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/full_1_541045804
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 131&nbsp;&nbsp;&nbsp; 04-NOV-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 131&nbsp;&nbsp;&nbsp; 04-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/full_AVATAR2_20041104_131
<br />
<br />
....
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 173&nbsp;&nbsp;&nbsp; 06-DEC-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 173&nbsp;&nbsp;&nbsp; 06-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/full_AVATAR2_20041206_173
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 179&nbsp;&nbsp;&nbsp; 11-DEC-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 179&nbsp;&nbsp;&nbsp; 11-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/arch544588206.arc
<br />
<br />
.....
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 189&nbsp;&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/arch545106606.arc
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 190&nbsp;&nbsp;&nbsp; 17-DEC-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 190&nbsp;&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/arch545106665.arc
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 191&nbsp;&nbsp;&nbsp; 20-DEC-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 191&nbsp;&nbsp;&nbsp; 20-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/arch_AVATAR2_20041220_194
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2973&nbsp;&nbsp; 20-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2985.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2971&nbsp;&nbsp; 20-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2984.dbf
<br />
<br />
.....
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2705&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2717.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2704&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2716.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2703&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2715.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2702&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2714.dbf
<br />
<br />
<br />
<br />
4.使用delete obsolete命令删除过期备份:
<br />
<br />
<br />
<br />
RMAN&gt; delete obsolete;
<br />
<br />
<br />
<br />
RMAN retention policy will be applied to the command
<br />
<br />
RMAN retention policy is set to redundancy 1
<br />
<br />
using channel ORA_DISK_1
<br />
<br />
Deleting the following obsolete backups and copies:
<br />
<br />
Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Key&nbsp;&nbsp;&nbsp; Completion Time&nbsp;&nbsp;&nbsp; Filename/Handle
<br />
<br />
-------------------- ------ ------------------ --------------------
<br />
<br />
Backup Set&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04
<br />
<br />
Backup Piece&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 125&nbsp;&nbsp;&nbsp; 01-NOV-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/data1/oracle/orabak/full_1_541045804
<br />
<br />
....
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2704&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2716.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2703&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2715.dbf
<br />
<br />
Archive Log&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2702&nbsp;&nbsp; 17-DEC-04&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/opt/oracle/oradata/avatar2/archive/1_2714.dbf
<br />
<br />
<br />
<br />
Do you really want to delete the above objects (enter YES or NO)?
yes
<br />
<br />
deleted backup piece
<br />
<br />
backup piece handle=/data1/oracle/orabak/full_AVATAR2_20041206_173
recid=173 stamp=544156241
<br />
<br />
.....
<br />
<br />
deleted archive log
<br />
<br />
archive log filename=/opt/oracle/oradata/avatar2/archive/1_2715.dbf
recid=2703 stamp=545108268
<br />
<br />
deleted archive log
<br />
<br />
archive log filename=/opt/oracle/oradata/avatar2/archive/1_2714.dbf
recid=2702 stamp=545107659
<br />
<br />
Deleted 286 objects
<br />
<br />
<br />
<br />
<br />
<br />
RMAN&gt; crosscheck archivelog all;
<br />
<br />
<br />
<br />
released channel: ORA_DISK_1
<br />
<br />
allocated channel: ORA_DISK_1
<br />
<br />
channel ORA_DISK_1: sid=19 devtype=DISK
<br />
<br />
specification does not match any archive log in the recovery catalog
<br />
<br />
<br />
<br />
<br />
<br />
5 在rman中用crosscheck检查归档日志,2个归档日志都是失败的:
<br />
<br />
RMAN&gt; crosscheck archivelog all;
<br />
<br />
<br />
<br />
释放的通道: ORA_DISK_1
<br />
<br />
分配的通道: ORA_DISK_1
<br />
<br />
通道 ORA_DISK_1: sid=14 devtype=DISK
<br />
<br />
对归档日志的验证失败
<br />
<br />
存档日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866
<br />
<br />
683
<br />
<br />
对归档日志的验证失败
<br />
<br />
存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286
<br />
<br />
6931
<br />
<br />
已交叉检验的 2 对象
<br />
<br />
<br />
<br />
6 试着同步一下,看行不行,结果不行,crosscheck还是失败:
<br />
<br />
RMAN&gt; resync catalog;
<br />
<br />
<br />
<br />
正在启动全部恢复目录的 resync
<br />
<br />
完成全部 resync
<br />
<br />
<br />
<br />
RMAN&gt; crosscheck archivelog all;
<br />
<br />
<br />
<br />
释放的通道: ORA_DISK_1
<br />
<br />
分配的通道: ORA_DISK_1
<br />
<br />
通道 ORA_DISK_1: sid=14 devtype=DISK
<br />
<br />
对归档日志的验证失败
<br />
<br />
存档日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866
<br />
<br />
683
<br />
<br />
对归档日志的验证失败
<br />
<br />
存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286
<br />
<br />
6931
<br />
<br />
已交叉检验的 2 对象
<br />
<br />
<br />
<br />
7 用list expired看看是否有失效的archive log,证明没有失效的archive log:
<br />
<br />
RMAN&gt; list expired archivelog all;
<br />
<br />
<br />
<br />
说明与恢复目录中的任何存档日志均不匹配
<br />
<br />
<br />
<br />
8 更改语言环境试试,结果再次crosscheck,2个archive log 都成功了:
<br />
<br />
RMAN&gt; exit
<br />
<br />
<br />
<br />
<br />
<br />
恢复管理器完成。
<br />
<br />
<br />
<br />
C:&gt;set nls_lang=american_america.zhs16gbk
<br />
<br />
<br />
<br />
C:&gt;rman catalogrman/rman@safetarget /
<br />
<br />
<br />
<br />
Recovery Manager: Release 9.2.0.1.0 - Production
<br />
<br />
<br />
<br />
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
<br />
<br />
<br />
<br />
connected to target database: TEST (DBID=1870953724)
<br />
<br />
connected to recovery catalog database
<br />
<br />
<br />
<br />
RMAN&gt; crosscheck archivelog all;
<br />
<br />
<br />
<br />
allocated channel: ORA_DISK_1
<br />
<br />
channel ORA_DISK_1: sid=9 devtype=DISK
<br />
<br />
validation succeeded for archived log
<br />
<br />
archive log filename=D:ORACLEORADATATESTARCHIVE1_47.DBF recid=1
stamp=57286
<br />
<br />
6683
<br />
<br />
validation succeeded for archived log
<br />
<br />
archive log filename=D:ORACLEORADATATESTARCHIVE11_48.DBF recid=2
stamp=5728
<br />
<br />
66931
<br />
<br />
Crosschecked 2 objects
<br />
<br />
<br />
====================================
<br />
oracle隐藏参数字典 x$ksppi x$ksppstvl&nbsp;
<br />
oracle的隐藏参数字典是 x$ksppi，x$ksppstvl基表中，有关隐含参数说明，可以查询这个基表
<br />
<br />
SQL&gt; desc x$ksppi
<br />
名称 是否为空? 类型
<br />
------&nbsp;&nbsp;&nbsp; -----
<br />
ADDR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RAW(4)
<br />
INDX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NUMBER
<br />
INST_ID&nbsp;&nbsp; NUMBER
<br />
KSPPINM&nbsp;&nbsp; VARCHAR2(64)
<br />
KSPPITY&nbsp;&nbsp; NUMBER
<br />
KSPPDESC&nbsp; VARCHAR2(64)
<br />
KSPPIFLG&nbsp; NUMBER
<br />
<br />
SQL&gt;
<br />
<br />
SQL&gt; desc x$ksppcv
<br />
名称 是否为空? 类型
<br />
----------------------------------------- --------
----------------------------
<br />
<br />
ADDR RAW(4)
<br />
INDX NUMBER
<br />
INST_ID NUMBER
<br />
KSPPSTVL VARCHAR2(512)
<br />
KSPPSTDF VARCHAR2(9)
<br />
KSPPSTVF NUMBER
<br />
KSPPSTCMNT VARCHAR2(255)
<br />
<br />
SQL&gt;
<br />
<br />
比如我现在要查询隐含参数
<br />
_allow_resetlogs_corruption /// 这个参数说明允许数据库在不一致的条件下，进行数据库打开
<br />
<br />
<br />
查看隐含参数的值，方式是
<br />
<br />
<br />
SQL&gt; col ksppinm format a30
<br />
SQL&gt; col ksppstvl format a30
<br />
SQL&gt; select ksppinm,ksppstvl from x$ksppcv cv,x$ksppi pi where
cv.indx=pi.indx a
<br />
nd pi.ksppinm like '_allow%';
<br />
<br />
KSPPINM KSPPSTVL
<br />
------------------------------ ------------------------------
<br />
_allow_error_simulation FALSE
<br />
_allow_resetlogs_corruption FALSE
<br />
_allow_terminal_recovery_corru FALSE
<br />
ption
<br />
<br />
_allow_read_only_corruption FALSE
<br />
<br />
SQL&gt;
<br />
<br />
这个参数一般在数据库正常无法恢复了，可以用它来强行打开数据库，把数据文件先备份出来，这是
<br />
一个比较好的办法。
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/318986.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-04-21 15:14 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/04/21/318986.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle 10g schedule job的常用操作</title><link>http://www.blogjava.net/wangxinsh55/archive/2010/01/27/310972.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Wed, 27 Jan 2010 08:58:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2010/01/27/310972.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/310972.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2010/01/27/310972.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/310972.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/310972.html</trackback:ping><description><![CDATA[　　欢迎进入Oracle社区论坛，与200万技术人员互动交流 &gt;&gt;进入 <span id="zoom" class="a14c" twffan="done">&nbsp;&nbsp;&nbsp;&nbsp; Oracle数据库10g schedule job的常用操作:
<p style="text-indent: 2em">-- job 权限 </p>
<p style="text-indent: 2em">grant create job to somebody; </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 创建 </p>
<p style="text-indent: 2em">begin </p>
<p style="text-indent: 2em">dbms_scheduler.create_job ( </p>
<p style="text-indent: 2em">job_name =&gt; 'AGENT_LIQUIDATION_JOB', </p>
<p style="text-indent: 2em">job_type =&gt; 'STORED_PROCEDURE', </p>
<p style="text-indent: 2em">job_action =&gt; 'AGENT_LIQUIDATION.LIQUIDATION', --存储过程名 </p>
<p style="text-indent: 2em">start_date =&gt; sysdate, </p>
<p style="text-indent: 2em">repeat_interval =&gt; 'FREQ=MONTHLY; INTERVAL=1; BYMONTHDAY=1;BYHOUR=1;BYMINUTE=0;BYSECOND=0', -- 按月，间隔为1个(月),每月1号,凌晨1点 </p>
<p style="text-indent: 2em">comments =&gt; '执行代理商清分程序' </p>
<p style="text-indent: 2em">); </p>
<p style="text-indent: 2em">end; </p>
<p style="text-indent: 2em">/ </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 执行时间测试 </p>
<p style="text-indent: 2em">DECLARE </p>
<p style="text-indent: 2em">start_date date; </p>
<p style="text-indent: 2em">return_date_after date; </p>
<p style="text-indent: 2em">next_run_date date; </p>
<p style="text-indent: 2em">BEGIN </p>
<p style="text-indent: 2em">start_date := sysdate;--to_timestamp_tz('10-OCT-2004 10:00:00','DD-MM-YYYY HH24:MI:SS'); </p>
<p style="text-indent: 2em">return_date_after := start_date; </p>
<p style="text-indent: 2em">FOR i IN 1..10 LOOP </p>
<p style="text-indent: 2em">DBMS_SCHEDULER.EVALUATE_CALENDAR_STRING('FREQ=MONTHLY; INTERVAL=1; BYMONTHDAY=1;BYHOUR=1;BYMINUTE=0;BYSECOND=0',start_date, return_date_after, next_run_date); </p>
<p style="text-indent: 2em">DBMS_OUTPUT.PUT_LINE('next_run_date: ' || to_char(next_run_date,'yyyy-mm-dd HH24:MI:SS')); </p>
<p style="text-indent: 2em">return_date_after := next_run_date; </p>
<p style="text-indent: 2em">END LOOP; </p>
<p style="text-indent: 2em">END; </p>
<p style="text-indent: 2em">/ </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 查询 </p>
<p style="text-indent: 2em">select owner, job_name, state from dba_scheduler_jobs; </p>
<p style="text-indent: 2em">select job_name, state from user_scheduler_jobs;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;select * from all_jobs;</p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 启用 </p>
<p style="text-indent: 2em">begin </p>
<p style="text-indent: 2em">dbms_scheduler.enable('BACKUP_JOB'); </p>
<p style="text-indent: 2em">end; </p>
<p style="text-indent: 2em">/ </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 运行 </p>
<p style="text-indent: 2em">begin </p>
<p style="text-indent: 2em">dbms_scheduler.run_job('COLA_JOB',TRUE); -- true代表同步执行 </p>
<p style="text-indent: 2em">end; </p>
<p style="text-indent: 2em">/ </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 停止(不太好用) </p>
<p style="text-indent: 2em">begin </p>
<p style="text-indent: 2em">dbms_scheduler.stop_job(job_name =&gt; 'COLA_JOB',force =&gt; TRUE); </p>
<p style="text-indent: 2em">end; </p>
<p style="text-indent: 2em">/ </p>
<p style="text-indent: 2em"></p>
<p style="text-indent: 2em">-- job 删除(对停job来说好用) </p>
<p style="text-indent: 2em">begin </p>
<p style="text-indent: 2em">dbms_scheduler.drop_job(job_name =&gt; 'COLA_JOB',force =&gt; TRUE);) </p>
<p style="text-indent: 2em">end; </p>
<p style="text-indent: 2em">/ </p>
</span>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/310972.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2010-01-27 16:58 <a href="http://www.blogjava.net/wangxinsh55/archive/2010/01/27/310972.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在ORACLE存储过程中创建临时表</title><link>http://www.blogjava.net/wangxinsh55/archive/2009/02/26/256856.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Thu, 26 Feb 2009 09:29:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2009/02/26/256856.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/256856.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2009/02/26/256856.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/256856.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/256856.html</trackback:ping><description><![CDATA[<p>在ORACLE存储过程中创建临时表
<br />
</p>
<p><span style="color: #0000ff;">存储过程里不能直接使用DDL语句，所以只能使用动态SQL语句来执行</span></p>
<p>--ON COMMIT DELETE ROWS 说明临时表是事务指定，每次提交后ORACLE将截断表（删除全部行）
<br />
--ON COMMIT PRESERVE ROWS 说明临时表是会话指定，当中断会话时ORACLE将截断表。</p>
<p><br />
CREATE OR REPLACE PROCEDURE temptest
<br />
(p_searchDate IN DATE)
<br />
IS
<br />
v_count INT;
<br />
str varchar2(300);
<br />
BEGIN
<br />
v_count := 0;
<br />
str:='drop table SETT_DAILYTEST';
<br />
execute immediate str;
<br />
str:='CREATE GLOBAL TEMPORARY TABLE SETT_DAILYTEST (
<br />
NACCOUNTID NUMBER not null,
<br />
NSUBACCOUNTID NUMBER not null)
<br />
ON COMMIT PRESERVE ROWS';
<br />
<span style="color: #0000ff;">execute immediate str; ----使用动态SQL语句来执行</span>
<br />
str:='insert into SETT_DAILYTEST (select naccountid,nsubaccountid from sett_dailyaccountbalance)';
<br />
<span style="color: #0000ff;">execute immediate str;</span>
<br />
END temptest;</p>
<p>上面建立一个临时表的存储过程</p>
<p>下面是执行一些操作,向临时表写数据。</p>
<p>CREATE OR REPLACE PROCEDURE PR_DAILYCHECK
<br />
(
<br />
p_Date IN DATE,
<br />
p_Office IN INTEGER,
<br />
p_Currency IN INTEGER,
<br />
P_Check IN INTEGER,
<br />
p_countNum OUT INTEGER)
<br />
IS
<br />
v_count INT;
<br />
BEGIN
<br />
v_count := 0;
<br />
IF p_Date IS NULL THEN
<br />
dbms_output.put_line('日期不能为空');
<br />
ELSE
<br />
IF P_Check = 1 THEN
<br />
<span style="color: #0000ff;">insert into SETT_DAILYTEST (select naccountid,nsubaccountid from sett_dailyaccountbalance
<br />
where dtdate = p_Date);</span>
<br />
select
<br />
count(sd.naccountid) into v_count
<br />
from sett_subaccount ss,sett_account sa,sett_dailytest sd
<br />
where sd.naccountid = sa.id and sd.nsubaccountid = ss.id and sa.id = ss.naccountid
<br />
AND sa.nofficeid = p_Office AND sa.ncurrencyid = p_Currency
<br />
and rownum &lt; 2;
<br />
COMMIT;
<br />
p_countNum := v_count;
<br />
dbms_output.put_line(p_countNum);
<br />
END IF;
<br />
IF P_Check = 2 THEN
<br />
<span style="color: #0000ff;">insert into SETT_DAILYTEST (select naccountid,nsubaccountid from sett_dailyaccountbalance
<br />
where dtdate = p_Date);</span>
<br />
select
<br />
count(sd.naccountid) into v_count
<br />
from sett_cfsubaccount ss,sett_account sa,sett_dailytest sd
<br />
where sd.naccountid = sa.id and sd.nsubaccountid = ss.id and sa.id = ss.naccountid
<br />
AND sa.nofficeid = p_Office AND sa.ncurrencyid = p_Currency
<br />
and rownum &lt; 2;
<br />
COMMIT;
<br />
p_countNum := v_count;
<br />
dbms_output.put_line(p_countNum);
<br />
END IF;
<br />
END IF;
<br />
END PR_DAILYCHECK;</p>
<p><br />
</p>
<p><br />
</p>
<p>需要创建一个临时表，请举例说明，谢谢！ &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; --------------------------------------------------------------- &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; <br />
&nbsp; 是TEMPORARY &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; CREATE &nbsp;  &nbsp; GLOBAL &nbsp;  &nbsp; TEMPORARY &nbsp;  &nbsp; TABLE &nbsp;  &nbsp; flight_schedule &nbsp;  &nbsp; ( &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; startdate &nbsp;  &nbsp; DATE, &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; enddate &nbsp;  &nbsp; DATE, &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; cost &nbsp;  &nbsp; NUMBER) &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; <br />
&nbsp; --------------------------------------------------------------- &nbsp;  &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; <br />
&nbsp; create &nbsp;  &nbsp; proecdure &nbsp;  &nbsp; name_pro &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; as &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; str &nbsp;  &nbsp; varchar2(100); &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; begin &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; str:='CREATE &nbsp; &nbsp; GLOBAL &nbsp; &nbsp; TEMPORARY &nbsp; &nbsp; TABLE &nbsp; &nbsp; TABLENAME &nbsp; &nbsp; ON
&nbsp; &nbsp; COMMIT &nbsp; &nbsp; PRESERVE &nbsp; &nbsp; ROWS &nbsp; &nbsp; as &nbsp; &nbsp; select &nbsp; &nbsp; * &nbsp; &nbsp; from &nbsp; &nbsp;
others_table'; &nbsp; &nbsp; &nbsp; <br />
&nbsp; execute &nbsp;  &nbsp; immediate &nbsp;  &nbsp; str; &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; end; &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; / &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 可以把临时表指定为事务相关（默认）或者是会话相关： &nbsp; <br />
&nbsp; ON &nbsp; COMMIT &nbsp; DELETE &nbsp; ROWS：指定临时表是事务相关的，Oracle在每次提交后截断表。 &nbsp; <br />
&nbsp; ON &nbsp; COMMIT &nbsp; PRESERVE &nbsp; ROWS：指定临时表是会话相关的，Oracle在会话中止后截断表。 &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; ================= &nbsp; <br />
&nbsp; 可以创建以下两种临时表： &nbsp; <br />
&nbsp; 1。会话特有的临时表 &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; &lt;TABLE_NAME&gt; &nbsp; (&lt;column &nbsp; specification&gt;) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; PRESERVE &nbsp; ROWS； &nbsp; <br />
&nbsp; ======== &nbsp; <br />
&nbsp; 对全局临时表的总结 &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 在临时表上的操作比在一般的表上的操作要快。因为： &nbsp; <br />
&nbsp; 1创建临时表不需要往编目表中插入条目，临时表的使用也不需要访问编目表，因此也没有对编目表的争用。 &nbsp; <br />
&nbsp; 2仅有创建临时表的app才可存取临时表，所以在处理临时表时没有锁。 &nbsp; <br />
&nbsp; 3如果指定NOT &nbsp; LOGGED选项，在处理临时表时不记日志。所以如果有仅在数据库的一个会话中使用的大量临时数据，把这些数据存入临时表能大大提高性能。 &nbsp; <br />
&nbsp; DECLARE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; TT(C1 &nbsp; INT, &nbsp; C2 &nbsp; CHAR(20))； &nbsp; <br />
&nbsp; 在CONNECT &nbsp; RESET命令后，临时表不再存在。 &nbsp; <br />
&nbsp; 建临时表是动态编译的，所以对临时表的使用也必须放在DECLARE &nbsp; CURSER &nbsp; 后面 &nbsp; <br />
&nbsp; CREATE &nbsp; PROCEDURE &nbsp; INSTT2(P1 &nbsp; INT, &nbsp; P2 &nbsp; CHAR(20)) &nbsp; <br />
&nbsp; BEGIN &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; DECLARE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; TT(C1 &nbsp; INT, &nbsp; C2 &nbsp; CHAR(20)) &nbsp; % &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; INSERT &nbsp; INTO &nbsp; SESSION.TT &nbsp; VALUES(P1, &nbsp; P2); &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; BEGIN &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; DECLARE &nbsp; C1 &nbsp; CURSOR &nbsp; WITH &nbsp; RETURN &nbsp; FOR &nbsp; SELECT &nbsp; * &nbsp; FROM &nbsp; SESSION.TT; &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; END; &nbsp; <br />
&nbsp; END &nbsp; % &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 2。事务特有的临时表 &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; &lt;TABLE_NAME&gt; &nbsp; (&lt;column &nbsp; specification&gt;) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; DELETE &nbsp; ROWS； &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; <br />
&nbsp; &nbsp; &nbsp;
在Oracle中，全局临时表并不会删除，实际上你只需要建立一次，以后直接应用就行了，这与MS和Sybase不一样。实际上在断开数据库连接时，临时
表中数据自动清空，不同的Session之间是隔离的，不许要当心相互影响，不过如果起用了连接共享的话，你要用On &nbsp; Commit &nbsp;
delete &nbsp; rows使数据仅在事物内部有效。</p>
<p> 3建立临时表 &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; 临时表的定义对所有会话SESSION都是可见的,但是表中的数据只对当前的会话或者事务有效. &nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp; 建立方法: &nbsp; <br />
&nbsp; 1) &nbsp; ON &nbsp; COMMIT &nbsp; DELETE &nbsp; ROWS &nbsp; 定义了建立事务级临时表的方法. &nbsp; <br />
&nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; admin_work_area &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; (startdate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; enddate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; class &nbsp; CHAR(20)) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; DELETE &nbsp; ROWS; &nbsp; <br />
&nbsp; EXAMPLE: &nbsp; <br />
&nbsp; SQL&gt; &nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; admin_work_area &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 2 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; (startdate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 3 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; enddate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 4 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; class &nbsp; CHAR(20)) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 5 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; DELETE &nbsp; ROWS; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; create &nbsp; table &nbsp; permernate( &nbsp; a &nbsp; number); &nbsp; <br />
&nbsp; SQL&gt; &nbsp; insert &nbsp; into &nbsp; admin_work_area &nbsp; values(sysdate,sysdate,'temperary &nbsp; table'); &nbsp; <br />
&nbsp; SQL&gt; &nbsp; insert &nbsp; into &nbsp; permernate &nbsp; values(1); &nbsp; <br />
&nbsp; SQL&gt; &nbsp; commit; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp; * &nbsp; from &nbsp; admin_work_area; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp;  &nbsp; * &nbsp; from &nbsp; permernate; &nbsp; <br />
&nbsp;  &nbsp; A &nbsp; <br />
&nbsp; 1 &nbsp; <br />
&nbsp; 2)ON &nbsp; COMMIT &nbsp; PRESERVE &nbsp; ROWS &nbsp; 定义了创建会话级临时表的方法. &nbsp; <br />
&nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; admin_work_area &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; (startdate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; enddate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; class &nbsp; CHAR(20)) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; PRESERVE &nbsp; ROWS; &nbsp; <br />
&nbsp; EXAMPLE: &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 会话1: &nbsp; <br />
&nbsp; SQL&gt; &nbsp; drop &nbsp; table &nbsp; admin_work_area; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; CREATE &nbsp; GLOBAL &nbsp; TEMPORARY &nbsp; TABLE &nbsp; admin_work_area &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 2 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; (startdate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 3 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; enddate &nbsp; DATE, &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 4 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; class &nbsp; CHAR(20)) &nbsp; <br />
&nbsp;  &nbsp;  &nbsp; 5 &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; ON &nbsp; COMMIT &nbsp; PRESERVE &nbsp; ROWS; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; insert &nbsp; into &nbsp; permernate &nbsp; values(2); &nbsp; <br />
&nbsp; SQL&gt; &nbsp; insert &nbsp; into &nbsp; admin_work_area &nbsp; values(sysdate,sysdate,'session &nbsp; temperary'); &nbsp; <br />
&nbsp; SQL&gt; &nbsp; commit; &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp; * &nbsp; from &nbsp; permernate; &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; A &nbsp; <br />
&nbsp; ---------- &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; 1 &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; 2 &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp; * &nbsp; from &nbsp; admin_work_area; &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; STARTDATE &nbsp;  &nbsp; ENDDATE &nbsp;  &nbsp;  &nbsp;  &nbsp; CLASS &nbsp; <br />
&nbsp; ---------- &nbsp; ---------- &nbsp; -------------------- &nbsp; <br />
&nbsp; 17-1&amp;Ocirc;&amp;Acirc; &nbsp; -03 &nbsp; 17-1&amp;Ocirc;&amp;Acirc; &nbsp; -03 &nbsp; session &nbsp; temperary &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 会话2: &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp; * &nbsp; from &nbsp; permernate; &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; A &nbsp; <br />
&nbsp; ---------- &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; 1 &nbsp; <br />
&nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp; 2 &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; SQL&gt; &nbsp; select &nbsp; * &nbsp; from &nbsp; admin_work_area; &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp;  &nbsp; 未选择行. &nbsp; <br />
&nbsp;  &nbsp; <br />
&nbsp; 会话2看不见会话1中临时表的数据. &nbsp; </p>
<p>&nbsp;</p>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/256856.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2009-02-26 17:29 <a href="http://www.blogjava.net/wangxinsh55/archive/2009/02/26/256856.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在hibernate中实现oracle的自动增长[转]</title><link>http://www.blogjava.net/wangxinsh55/archive/2008/08/19/222956.html</link><dc:creator>SIMONE</dc:creator><author>SIMONE</author><pubDate>Tue, 19 Aug 2008 03:43:00 GMT</pubDate><guid>http://www.blogjava.net/wangxinsh55/archive/2008/08/19/222956.html</guid><wfw:comment>http://www.blogjava.net/wangxinsh55/comments/222956.html</wfw:comment><comments>http://www.blogjava.net/wangxinsh55/archive/2008/08/19/222956.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/wangxinsh55/comments/commentRss/222956.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/wangxinsh55/services/trackbacks/222956.html</trackback:ping><description><![CDATA[<p><span style="font-size: 12pt;"><span style="font-family: 宋体;"><span style="font-size: 8pt;"><span style="font-size: 10pt;">在hibernate中实现oracle的自动增长 <br />
<br />
http://kuangbaoxu.javaeye.com/blog/192434<br />
<br />
关键字: hibernate oracle sequence native <br />
根据hibernate的文档，有两种方式实现实体对象的主键自动增长。 <br />
第一种：设置ID的增长策略是sequence，同时指定sequence的名字，最好每个表建一个sequence，此种做法就如同MS-SQL,MY-SQL中的自动增长一样，不需要创建触发器，具体的oracle数据库脚本及hibernate配置文件如下： <br />
<br />
<br />
[1]oracle数据表的创建脚本： <br />
Java代码</span></span></span></span></p>
<span style="font-size: 12pt;"><span style="font-family: 宋体;"><span style="font-size: 8pt;"><span style="font-size: 10pt;">CREATE TABLE DEPARTMENT (&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; ID NUMBER(19,0) DEFAULT '0' NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; NAME VARCHAR2(255) NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; DESCRIPTION CLOB&nbsp;&nbsp; <br />
);&nbsp;&nbsp; <br />
ALTER TABLE DEPARTMENT ADD CONSTRAINT PRIMARY_0 PRIMARY KEY(ID) ENABLE;&nbsp;&nbsp; <br />
ALTER TABLE DEPARTMENT ADD CONSTRAINT UK_DEPARTMENT_1 UNIQUE (NAME);&nbsp;&nbsp; <br />
&nbsp; <br />
CREATE SEQUENCE DEPARTMENT_ID_SEQ MINVALUE 10000 MAXVALUE 999999999999999999999999 INCREMENT BY 1 NOCYCLE;&nbsp; <br />
<br />
创建DEPARTMENT表，并为DEPARTMENT表创建一个单独的SEQUENCE，名字为SEQUENCE_ID_SEQ，并不需要创建触发器。 <br />
<br />
[2]hibernate映射文件的配置： <br />
Java代码 <br />
<br />
&lt;?xml version="1.0"?&gt;&nbsp;&nbsp; <br />
&lt;!DOCTYPE hibernate-mapping PUBLIC&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "-//Hibernate/Hibernate Mapping DTD 3.0//EN"&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"&gt;&nbsp;&nbsp; <br />
&lt;hibernate-mapping package="com.liyanframework.demo.domain"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; &lt;class name="Department" table="DEPARTMENT"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;id name="id" column="ID"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;generator class="sequence"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="sequence"&gt;DEPARTMENT_ID_SEQ&lt;/param&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/generator&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/id&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="name" column="NAME" type="string" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="description" column="DESCRIPTION" type="text" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; &lt;/class&gt;&nbsp;&nbsp; <br />
&lt;/hibernate-mapping&gt;&nbsp; <br />
<br />
在hibernate映射文件中，对ID的生成策略选择sequence，指定sequence的名字DEPARTMENT_ID_SEQ就可以了，当你
保存新对象的时候，hibernate会自动取得DEPARTMENT_ID_SEQ.NEXTVAL作为新对象的ID保存到数据库，所以不需要再使用触
发器再来生成新记录的ID。 <br />
<br />
<br />
第二种：设置ID的增长策略是native，但是需要创建一个名字为hibernate_sequence（这个名字好像是hibernate默认的
sequence名字，不创建会出错的）的全局使用的sequence，然后再对每一个表的ID生成的时候，使用触发器，取得
hibernate_sequence.CURRVAL作为新记录的ID，具体的oracle数据库脚本及hibernate配置文件如下： <br />
<br />
<br />
[1]oracle数据表的创建脚本： <br />
Java代码 <br />
<br />
<br />
CREATE TABLE STAFF (&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; ID NUMBER(19,0) DEFAULT '0' NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; NAME VARCHAR2(255) NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; AGE NUMBER(3,0) NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; BIRTHDAY DATE NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; SALARY NUMBER(10,2) NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; LEVELNESS FLOAT NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; CREATETIME TIMESTAMP NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; ENABLE CHAR(2) DEFAULT 'Y' NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; STATUS VARCHAR2(64) NOT NULL,&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; DEPARTMENT_ID NUMBER(19,0)&nbsp;&nbsp; <br />
);&nbsp;&nbsp; <br />
ALTER TABLE STAFF ADD CONSTRAINT PRIMARY_1 PRIMARY KEY(ID) ENABLE;&nbsp;&nbsp; <br />
ALTER TABLE STAFF ADD CONSTRAINT STAFF_IBFK_0 FOREIGN KEY(DEPARTMENT_ID) REFERENCES DEPARTMENT(ID) ENABLE;&nbsp;&nbsp; <br />
ALTER TABLE STAFF ADD CONSTRAINT UK_STAFF_1 UNIQUE (NAME);&nbsp;&nbsp; <br />
CREATE INDEX IDX_STAFF_STATUS ON STAFF(STATUS);&nbsp;&nbsp; <br />
&nbsp; <br />
CREATE SEQUENCE HIBERNATE_SEQUENCE MINVALUE 90000 MAXVALUE 999999999999999999999999 INCREMENT BY 1 NOCYCLE;&nbsp;&nbsp; <br />
&nbsp; <br />
CREATE OR REPLACE TRIGGER STAFF_ID_TRG BEFORE INSERT ON STAFF&nbsp;&nbsp; <br />
FOR EACH ROW&nbsp;&nbsp; <br />
BEGIN&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; IF INSERTING AND :NEW.ID IS NULL THEN&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SELECT HIBERNATE_SEQUENCE.CURRVAL INTO :NEW.ID FROM DUAL;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; END IF;&nbsp;&nbsp; <br />
END;&nbsp; <br />
<br />
创建STAFF表，但是并没有为STAFF创建相应的主键sequence，而是创建了一个名字为HIBERNATE_SEQUENCE的
sequence，然后创建一个触发器STAFF_ID_TRG，当执行INSERT操作时，hibernate会先执行一次
HIBERNATE_SEQUENCE.NEXTVAL，所以在触发器中只需要取得HIBERNATE_SEQUENCE.CURRVAL作为新记录的
ID。 <br />
<br />
[2]hibernate映射文件的配置： <br />
Java代码 <br />
<br />
<br />
&lt;?xml version="1.0"?&gt;&nbsp;&nbsp; <br />
&lt;!DOCTYPE hibernate-mapping PUBLIC&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "-//Hibernate/Hibernate Mapping DTD 3.0//EN"&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"&gt;&nbsp;&nbsp; <br />
&lt;hibernate-mapping package="com.liyanframework.demo.domain"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; &lt;class name="Staff" table="STAFF"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;id name="id" column="ID"&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;generator class="native" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/id&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="name" column="NAME" type="string" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="age" column="AGE" type="integer" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="birthday" column="BIRTHDAY" type="date" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="salary" column="SALARY" type="big_decimal" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="level" column="LEVELNESS" type="float" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="createTime" column="CREATETIME" type="timestamp" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="enable" column="ENABLE" type="character" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="status" column="STATUS" type="string" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;many-to-one name="department" column="DEPARTMENT_ID" class="Department" /&gt;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; &lt;/class&gt;&nbsp;&nbsp; <br />
&lt;/hibernate-mapping&gt;&nbsp; <br />
<br />
在hibernate映射文件中，对ID的生成策略选择native，hibernate会根据你数据库的触发器来生成新记录的ID。 <br />
</span></span></span></span><u><br />
<span style="font-size: 12pt;"><span style="font-family: 宋体;"><span style="font-size: 8pt;"><span style="font-size: 10pt;">比
较两种做法，第二种做法也就是hibernate在代码中，实现了oracle中的触发器功能。对于不同的情况，选择不懂的做法。如果新的系统，新建的
oracle数据库，推荐使用第一种做法，简单，容易移植到其他支持自动增长的数据库；如果是老的系统，需要把其他数据库转换为oracle的，那就要用
第二种了，使用native的方式，可以不改动配置文件，兼容oracle和mysql之类带有自动增长的数据库。<br />
<br />
<br />
<br />
<br />
</span></span></span></span></u>安装有oracle数据库，创建数据库，总是要创建一个主键ID，唯一标示各条记录，但oracle不支持自动编号，所以还得创建一个SEQUENCE(序列)语句如<br />
&nbsp;&nbsp;&nbsp;&nbsp;
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><span style="color: rgb(0, 0, 255);">create</span><span style="color: rgb(0, 0, 0);"> sequence bign nocycle maxvalue </span><span style="font-weight: bold; color: rgb(128, 0, 0);">9999999999</span><span style="color: rgb(0, 0, 0);"> start </span><span style="color: rgb(0, 0, 255);">with</span><span style="font-weight: bold; color: rgb(128, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">;</span><span style="color: rgb(128, 128, 128);">//</span><span style="color: rgb(0, 0, 0);">增加数据<br />
<br />
</span><span style="color: rgb(0, 0, 255);">insert</span><span style="color: rgb(0, 0, 255);">into</span><span style="color: rgb(0, 0, 255);">table</span><span style="color: rgb(0, 0, 0);"> (ID,..) </span><span style="color: rgb(0, 0, 255);">values</span><span style="color: rgb(0, 0, 0);">(bign.nextval,..)</span></div>
<br />
&nbsp;&nbsp;&nbsp;&nbsp;  在hibernate中的映射文件可这么写<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><span style="color: rgb(0, 0, 255);">&nbsp;&nbsp;  &lt;</span><span style="color: rgb(128, 0, 0);">id </span><span style="color: rgb(255, 0, 0);">name</span><span style="color: rgb(0, 0, 255);">="id"</span><span style="color: rgb(255, 0, 0);"> type</span><span style="color: rgb(0, 0, 255);">="java.lang.Long"</span><span style="color: rgb(255, 0, 0);"> column</span><span style="color: rgb(0, 0, 255);">="ID"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">generator </span><span style="color: rgb(255, 0, 0);">class</span><span style="color: rgb(0, 0, 255);">="sequence"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">param </span><span style="color: rgb(255, 0, 0);">name</span><span style="color: rgb(0, 0, 255);">="sequence"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);">bign</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">param</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">generator</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">id</span><span style="color: rgb(0, 0, 255);">&gt;</span></div>
<br />
或<br />
<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: rgb(238, 238, 238);"><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">id </span><span style="color: rgb(255, 0, 0);">name</span><span style="color: rgb(0, 0, 255);">="id"</span><span style="color: rgb(255, 0, 0);"> type</span><span style="color: rgb(0, 0, 255);">="java.lang.Long"</span><span style="color: rgb(255, 0, 0);"> column</span><span style="color: rgb(0, 0, 255);">="ID"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;</span><span style="color: rgb(128, 0, 0);">generator </span><span style="color: rgb(255, 0, 0);">class</span><span style="color: rgb(0, 0, 255);">="increment"</span><span style="color: rgb(0, 0, 255);">&gt;</span><span style="color: rgb(0, 0, 0);"><br />
&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">&lt;/</span><span style="color: rgb(128, 0, 0);">id</span><span style="color: rgb(0, 0, 255);">&gt;</span></div>
<p><br />
(increment 用与为long，short或者int类型生成唯一标示。只有在没有其他进程忘同一张表中插入数据时才能使用。在集群下不要使用)</p>
<img src ="http://www.blogjava.net/wangxinsh55/aggbug/222956.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/wangxinsh55/" target="_blank">SIMONE</a> 2008-08-19 11:43 <a href="http://www.blogjava.net/wangxinsh55/archive/2008/08/19/222956.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>