完好的oracle rman备份康复的比如(转)ITeye - 娱乐之横扫全球

完好的oracle rman备份康复的比如(转)ITeye

2019年02月23日11时04分35秒 | 作者: 思璇 | 标签: 康复,备份,文件 | 浏览: 710

注:转这个文章的原因是rman很重要,但是到目前为止我还不会用这个玩意儿。

完好的oracle rman备份康复的比如

作者:zhumy
1、 建rman库作为repository
$more createrman_db1.sh
set echo on
spool makedb1.log
create database rman
datafile /export/home/oracle/oradata/rman_data/system.dbf size 50m autoextend
on next 640K
logfile /export/home/oracle/oradata/rman_data/redo0101.log SIZE 10M,
/export/home/oracle/oradata/rman_data/redo0201.log SIZE 10M
maxdatafiles 30
maxinstances 8
maxlogfiles 64
character set US7ASCII
national character set US7ASCII
;
disconnect
spool off
exit

@/export/home/oracle/8.1.6/rdbms/admin/catalog.sql;

REM ********** ALTER SYSTEM TABLESPACE *********
ALTER TABLESPACE SYSTEM
DEFAULT STORAGE ( INITIAL 64K NEXT 64K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCR
EASE 50);
ALTER TABLESPACE SYSTEM
MINIMUM EXTENT 64K;

REM ********** TABLESPACE FOR ROLLBACK **********
CREATE TABLESPACE RBS DATAFILE /export/home/oracle/oradata/rman_data/rbs.dbf s
ize 50m
AUTOEXTEND ON NEXT 512K
MINIMUM EXTENT 512K
DEFAULT STORAGE ( INITIAL 512K NEXT 512K MINEXTENTS 10 MAXEXTENTS UNLIMITED PC
TINCREASE 0 );

REM ********** TABLESPACE FOR TEMPORARY **********
CREATE TABLESPACE TEMP DATAFILE /export/home/oracle/oradata/rman_data/temp.dbf
size 50m
AUTOEXTEND ON NEXT 64K
MINIMUM EXTENT 64K
DEFAULT STORAGE ( INITIAL 64K NEXT 64K MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCR
EASE 0) TEMPORARY;

REM **** Creating four rollback segments ****************
CREATE PUBLIC ROLLBACK SEGMENT RBS_0 TABLESPACE RBS
STORAGE ( OPTIMAL 64000K );
ALTER ROLLBACK SEGMENT "RBS_0" ONLINE;


REM **** SYS and SYSTEM users ****************
alter user sys temporary tablespace TEMP;
alter user system temporary tablespace TEMP;
disconnect
spool off
exit

$more createrman_db3.sh
spool crdb3.log
@/export/home/oracle/8.1.6/rdbms/admin/catproc.sql
@/export/home/oracle/8.1.6/rdbms/admin/caths.sql
@/export/home/oracle/8.1.6/rdbms/admin/otrcsvr.sql
connect system/manager
@/export/home/oracle/8.1.6/sqlplus/admin/pupbld.sql

disconnect
spool off
exit

2、建repository寄存的表空间和rman用户
$more createrman_db4.sh
connect internal
create tablespace rman_ts
datafile /export/home/oracle/oradata/rman_data/rman_ts.dbf
size 20M default storage (initial 100K next 100K pctincrease 0);
create user rman_hainan identified by rman_hainan
temporary tablespace TEMP
default tablespace rman_ts quota unlimited on
rman_ts;
grant recovery_catalog_owner to rman_hainan;
grant connect ,resource to rman_hainan;

3、建catalog,注册方针数据库
$more createrman_db5.sh
rman catalog rman_hainan/rman_hainan@rman msglog=rman.log
create catalog ;
exit;
rman target sys/oracle@db1
connect catalog rman_hainan/rman_hainan@rman
register database;
exit;

4、能够开端做备份了。
5、做全备
$more rmanshell
. /export/home/oracle/.profile
rman rcvcat rman_hainan/rman_hainan@rman target / cmdfile /export/home/oracle/ba
ckup_level0.rcv log /export/home/oracle/backup.log

$more backup_level0.rcv
resync catalog;
run {
allocate channel t1 type disk;
backup
incremental level 0
skip inaccessible
tag hot_db_bk_level0
filesperset 3
format /export/home/oracle/bk_%s_%p_%t.bk
(database);
sql alter system archive log current;
backup
filesperset 10
format /export/home/oracle/a1_%s_%p_%t.ac
(archivelog all delete input);
backup
format /export/home/oracle/df_t%t_s%s_p%p.ct
current controlfile ;
}

6、做增备
$more rmanshell1
rman rcvcat rman_hainan/rman_hainan@rman target / cmdfile backup_level1.rcv log
backup.log

$more backup_level1.rcv
resync catalog;
run {
allocate channel t1 type disk;
backup
incremental level 1
skip inaccessible
tag hot_db_bk_level1
filesperset 3
format bk_%s_%p_%t.bk1
(database);
sql alter system archive log current;
backup
filesperset 10
format a1_%s_%p_%t.ac1
(archivelog all delete input);
backup current controlfile;
}

1、 删去旧的全备
$rman rcvcat rman_hainan/rman_hainan@rman target /

Recovery Manager: Release 8.1.6.0.0 - Production

RMAN-06005: connected to target database: TEST (DBID=1692992254)
RMAN-06008: connected to recovery catalog database

RMAN list backupset;

RMAN-03022: compiling command: list

List of Backup Sets
Key Recid Stamp LV Set Stamp Set Count Completion Time
-
38 145 399987408 0 399987406 153 11-JUN-00

依据key来删去旧的备份。

RMAN allocate channel for maintenance type disk;
RMAN change backupset 169 delete; THIS IS THE COMMAND TO REMOVE THE ENTRY OS FILE

做完后能够看到list backupset和操作系统的文件都没有了。

2、 康复
(1) 将数据库启动到nomount状况:
$svrmgrl

Oracle Server Manager Release 3.1.6.0.0 - Production

Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.

Oracle8i Enterprise Edition Release 8.1.6.0.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.6.0.0 - Production

SVRMGR connect internal
Connected.
SVRMGR startup nomount;
ORACLE instance started.
Total System Global Area 339275684 bytes
Fixed Size 94116 bytes
Variable Size 318685184 bytes
Database Buffers 16384000 bytes
Redo Buffers 4112384 bytes
SVRMGR exit
Server Manager complete.
(2) 康复操控文件:
$rman rcvcat rman_hainan/rman_hainan@rman target /

Recovery Manager: Release 8.1.6.0.0 - Production

RMAN-06006: connected to target database: test (not mounted)
RMAN-06008: connected to recovery catalog database

RMAN run {
2 allocate channel d1 type disk;
3 restore controlfile;
4 release channel d1;
5 }

(3) 康复数据文件

RMAN run {
2 allocate channel d1 type disk;
3 sql "alter database mount";
4 restore datafile 1;
5 restore datafile 2;
6 restore datafile 3;
7 restore datafile 4;
8 release channel d1;
9 }

(4) 康复日志文件

RMAN run {
2 set archivelog destination to /export/home/oracle/admin/test/arch;
3 allocate channel d1 type disk;
4 restore archivelog all;
5 release channel d1;
6 }
会把一切的日志文件康复。

(5) 依据日志做recover
$svrmgrl

Oracle Server Manager Release 3.1.6.0.0 - Production

Copyright (c) 1997, 1999, Oracle Corporation. All Rights Reserved.

Oracle8i Enterprise Edition Release 8.1.6.0.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.6.0.0 - Production

SVRMGR connect internal
Connected.
SVRMGR recover database using backup controlfile until cancel;
ORA-00279: change 51054 generated at 06/11/2000 11:38:37 needed for thread 1
ORA-00289: suggestion : /export/home/oracle/admin/test/arch/arch_1_3.arc
ORA-00280: change 51054 for thread 1 is in sequence #3
Specify log: {=suggested | filename | AUTO | CANCEL}
Log applied.
ORA-00279: change 51058 generated at 06/11/2000 11:38:44 needed for thread 1
ORA-00289: suggestion : /export/home/oracle/admin/test/arch/arch_1_4.arc
ORA-00280: change 51058 for thread 1 is in sequence #4
ORA-00278: log file /export/home/oracle/admin/test/arch/arch_1_3.arc no longer
needed for this recovery
Specify log: {=suggested | filename | AUTO | CANCEL}

Log applied.
ORA-00279: change 51074 generated at 06/11/2000 11:40:20 needed for thread 1
ORA-00289: suggestion : /export/home/oracle/admin/test/arch/arch_1_5.arc
ORA-00280: change 51074 for thread 1 is in sequence #5
ORA-00278: log file /export/home/oracle/admin/test/arch/arch_1_4.arc no longer
needed for this recovery
Specify log: {=suggested | filename | AUTO | CANCEL}
cancel
Media recovery cancelled.
SVRMGR alter database open resetlogs;
Statement processed.
康复完结。
SVRMGR select table_name from user_tables;
TABLE_NAME

BONUS
DEPT
EMP
SALGRADE
TEST
TEST_ZMY
ZMY
ZMY_DEPT
ZMY_EMP
9 rows selected.
能够查看看到,一切的都康复了,包含全备份后的业务。(只需有归档日志,都能够康复)。

3、 康复后rman数据库的同步
$rman rcvcat rman_hainan/rman_hainan@rman target /

Recovery Manager: Release 8.1.6.0.0 - Production

RMAN-06005: connected to target database: TEST (DBID=1692992254)
RMAN-06008: connected to recovery catalog database

RMAN reset database;

RMAN-03022: compiling command: reset
RMAN-03023: executing command: reset
RMAN-08006: database registered in recovery catalog
RMAN-03023: executing command: full resync
RMAN-08029: snapshot controlfile name set to default value: ?/dbs/snapcf_@.f
RMAN-08002: starting full resync of recovery catalog
RMAN-08004: full resync complete

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表娱乐之横扫全球立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1
  • 2

    系統狀態办理ITeye

    费用,程式,效果
  • 3

    XMLITeye

    数据,运用,文档
  • 4
  • 5

    SQL PLUS简单忘记之指令ITeye

    指令,文件,缓冲区
  • 6
  • 7

    Oracle一些辅佐指令ITeye

    成果,数据类型
  • 8
  • 9

    初识oraclecsdn

    参数,文件,指令
  • 10

    oracle登录验证机制mingxing

    数据库,体系,用户