设为首页 加入收藏

TOP

[20190130]删除tab$记录的恢复2.txt(一)
2019-09-17 18:07:27 】 浏览:111
Tags:20190130 删除 tab 记录 恢复 2.txt

[20190130]删除tab$记录的恢复2.txt

--//前面链接写好了脚本,开始测试删除后的恢复.千万不要在生产系统做这样的测试!!
--//参考链接:http://blog.itpub.net/267265/viewspace-2565245/=>[20190130]删除tab$记录的恢复.txt

1.环境:
SCOTT@book> @ ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

create table ORACHK001 tablespace system  as select * from sys.tab$;

SYS@book> create table ORACHK001 tablespace system  as select * from sys.tab$;
Table created.

SYS@book> select count(*) from sys.tab$;
  COUNT(*)
----------
      2966

SYS@book> select count(*) from orachk001;
  COUNT(*)
----------
      2965

--//这样建立的表不包含orachk001.

SYS@book> select * from sys.tab$ minus select * from orachk001;
...
SYS@book> select  OBJ# ,  DATAOBJ# from sys.tab$ minus select OBJ# ,  DATAOBJ# from orachk001;
      OBJ#   DATAOBJ#
---------- ----------
     91090      91090

SYS@book> insert into orachk001 select * from sys.tab$ where (OBJ#,DATAOBJ#) in ((91090,91090));
1 row created.

SYS@book> commit ;
Commit complete.

2.做一个冷备份:
--//关闭数据库略.
$ cp -r /mnt/ramdisk/book /home/oracle/backup/
--//重启数据库.
SYS@book> startup
ORACLE instance started.
Total System Global Area  643084288 bytes
Fixed Size                  2255872 bytes
Variable Size             205521920 bytes
Database Buffers          427819008 bytes
Redo Buffers                7487488 bytes
Database mounted.
Database opened.

SYS@book> delete from sys.tab$;
2966 rows deleted.

SYS@book> commit ;
Commit complete.

SYS@book> alter system checkpoint ;
System altered.

SYS@book> alter system checkpoint ;
System altered.

SYS@book> alter system checkpoint ;
System altered.

SYS@book> shutdown immediate ;
ORA-00957: duplicate column name

SYS@book> shutdown abort ;
ORACLE instance shut down.
--//再保留一份坏的备份.

$ mv /home/oracle/backup/book /home/oracle/backup/book_20190122_good
`/home/oracle/backup/book' -> `/home/oracle/backup/book_20190122_good'

$ cp -r /mnt/ramdisk/book /home/oracle/backup/
$ mv /home/oracle/backup/book /home/oracle/backup/book_20190122_bad
`/home/oracle/backup/book' -> `/home/oracle/backup/book_20190122_bad'

3.开始恢复:
--//执行如下脚本,自己建立目录/home/oracle/zzz430,zdate,rlbbed是别名.看前面的链接.
--//脚本scan.sh:
#! /bin/bash
/bin/rm /home/oracle/zzz430/bbed/scan*.txt
cd /home/oracle/zzz430/bbed

echo "process 1 start : `zdate` scan dba 1,144 ,  create scan1.txt about ktetbdba,ktetbnbk"
echo "p /d dba 1

首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/13/13
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇[20190213]学习bbed-恢复删除的数.. 下一篇[20190212]删除tab$记录的恢复3.t..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目