- 最后登录
- 2014-6-18
- 在线时间
- 0 小时
- 威望
- 0
- 金钱
- 5
- 注册时间
- 2014-6-18
- 阅读权限
- 10
- 帖子
- 2
- 精华
- 0
- 积分
- 0
- UID
- 1878
|
1#
发表于 2014-6-18 20:10:04
|
查看: 3644 |
回复: 2
刘大,
我下载了RPM 测试在误删除 系统表数据的情况下恢复,根据使用白皮书,我删除了 ts$里的数据,最后恢复的时候有问题,请刘大帮忙看下(数据库版本为: 10.2.0.1, linux 5.4):
1. 删除数据ts$
SQL> select name, ts# from ts$;
NAME TS#
------------------------------ ----------
SYSTEM 0
UNDOTBS1 1
SYSAUX 2
TEMP 3
USERS 4
UNDOTBS2 5
T1 6
EXAMPLE 7
OCMINDEX 8
TEST 9
10 rows selected.
SQL> delete from ts$;
10 rows deleted.
SQL> commit;
Commit complete.
2. 数据库重启
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 184549376 bytes
Fixed Size 1218412 bytes
Variable Size 67111060 bytes
Database Buffers 113246208 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced
SQL> exit
[oracle@oracledb1 ocm1]$ tail -10 /u01/oracle/admin/ocm1/bdump/alert_ocm1.log
Thu Jun 19 02:26:07 2014
SMON: enabling cache recovery
Thu Jun 19 02:26:07 2014
Errors in file /u01/oracle/admin/ocm1/udump/ocm1_ora_14565.trc:
ORA-30012: undo tablespace 'UNDOTBS1' does not exist or of wrong type
Thu Jun 19 02:26:07 2014
Error 30012 happened during db open, shutting down database
USER: terminating instance due to error 30012
Instance terminated by USER, pid = 14565
ORA-1092 signalled during: ALTER DATABASE OPEN...
[oracle@oracledb1 ocm1]$
3.拷贝数据库的所以数据文件到本地进行PRM 恢复,如下:
参考步骤是:
1. Recovery Wizard
2. 选择字典模式 Dictionary Mode
3. 合理选择Big或者Little Endian
4. 加入数据文件并点击Load
5. 根据实际需求恢复表中的数据
操作步骤截图见附件,
最后抽取 ts$ 里都是0条记录,ts$被删掉掉的数据如何恢复呢? |
-
2.png
(24.85 KB, 下载次数: 428)
-
3.png
(29.44 KB, 下载次数: 441)
-
4.png
(32.33 KB, 下载次数: 432)
-
5.png
(25.33 KB, 下载次数: 432)
-
6.png
(34.66 KB, 下载次数: 431)
|