[转帖]恢复之单个数据文件损坏_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4725 | 回复: 0   主题: [转帖]恢复之单个数据文件损坏        下一篇 
kim
注册用户
等级:中校
经验:1729
发帖:222
精华:0
注册:2011-7-21
状态:离线
发送短消息息给kim 加好友    发送短消息息给kim 发消息
发表于: IP:您无权察看 2011-9-21 7:52:47 | [全部帖] [楼主帖] 楼主

一般Oracle在建立时,至少会设置两个控制文件。因此,如果仅仅损坏一个控制文件是很容易恢复的。

控制文件损坏,Oracle会自动关闭,这时用多个控制文件中没有受损的控制文件来进行恢复就可以了。这里控制文件的损坏仍然是通过ULTRAEDIT的修改造成的。

SQL> ALTER SYSTEM CHECKPOINT;
ALTER SYSTEM CHECKPOINT
*


ERROR 位于第 1 行:
ORA-03113: 通信通道的文件结束

SQL> CONN YANGTK/YANGTK@TEST
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
SQL> CONN /@TEST AS SYSDBA


已连接到空闲例程。

SQL> HOST COPY F:ORACLEORADATATESTCONTROL01.CTL F:ORACLEORADATATESTCONTROL03.CTL
SQL> STARTUP


ORACLE 例程已经启动。

Total System Global Area 76619308 bytes
Fixed Size 454188 bytes
Variable Size 50331648 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes


数据库装载完毕。
数据库已经打开。

如果受损控制文件原来的存放位置已经不可用,则需要修改初始化参数文件来指向新的位置。

SQL> ALTER SYSTEM CHECKPOINT;
ALTER SYSTEM CHECKPOINT
*


ERROR 位于第 1 行:
ORA-03113: 通信通道的文件结束

SQL> CONN /@TEST AS SYSDBA


已连接到空闲例程。

SQL> CREATE PFILE='F:ORACLEADMINTESTPFILEINITTEST.ORA' FROM SPFILE;


文件已创建。

修改初始化参数中CONTROL_FILE的值为*.control_files='F:oracleoradatatestCONTROL01.CTL','F:oracleoradatatestCONTROL02.CTL','F:oracleoradatatestCONTROL04.CTL'

然后将未受损控制文件拷贝到新的位置:

SQL> HOST EDIT F:ORACLEADMINTESTPFILEINITTEST.ORA
SQL> HOST EDIT F:ORACLEADMINTESTPFILEINITTEST.ORA
SQL> HOST COPY F:ORACLEORADATATESTCONTROL01.CTL F:ORACLEORADATATESTCONTROL04.CTL
SQL> STARTUP PFILE=F:ORACLEADMINTESTPFILEINITTEST.ORA


ORACLE 例程已经启动。

Total System Global Area 76619308 bytes
Fixed Size 454188 bytes
Variable Size 50331648 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes


数据库装载完毕。
数据库已经打开。

SQL> CREATE SPFILE FROM PFILE='F:ORACLEADMINTESTPFILEINITTEST.ORA';


文件已创建。

SQL> SHUTDOWN IMMEDIATE


数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。

SQL> STARTUP


ORACLE 例程已经启动。

Total System Global Area 76619308 bytes
Fixed Size 454188 bytes
Variable Size 50331648 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes


数据库装载完毕。
数据库已经打开。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论