当前位置:文档之家› RMAN备份步骤及更改备份模式

RMAN备份步骤及更改备份模式


一、更改状态
a.查看是处于什么模式
select log_mode from v$database;
如果是非归档模式则成:NOARCHIVELOG
如果不是归档模式(Archive)则可以通过以下方法改成归档模式
b.改变归档模式
connect /as sysdba;
1.SQL> shutdown immediate;
2.SQL> startup mount;
3.SQL> alter database archivelog;
4.SQL> alter database open;
现在已经改成归档模式了

恢复
 1.使用命令“svrmgrl”调用行方式服务器管理;

2.输入命令“connect internal”,然后输入命令“startup mount’;

3.输入命令“recover database;”

4.按下ENTER,接受默认值。

5.然后输入命令“alter database open;”完成数据库恢复。


二、分配表空间、建立用户、分配权限并注册到数据库
//备份
了解恢复目录
理解恢复目录,RMAN可以在没有恢复目录(NOCATALOG)下运行,这个时候备份信息保存在控制文件。保存在控制文件的备份信息是很危险的,如果控制文件的破坏将导致备份信息的丢失与恢复的失败,而且,没有恢复目录,很多RMAN的命令将不被支持。所以对于重要的数据库,建议创建恢复目录,恢复目录也是一个数据库,只不过这个数据库用来保存备份信息,一个恢复目录可以用来备份多个数据库。
创建RMAN目录,以下步骤说明了在一个数据库中尽力RMAN目录的过程。
1.为目录创建一个单独的表空间
SQL>Create tablespace tools datafile ‘fielname’ size 50m;
2.创建RMAN用户
SQL>Create user RMAN identified by RMAN default tablespace tools temporary tablespace temp;
3.给RMAN授予权限
SQL>Grant connect , resource , recovery_catalog_owner to RMAN;
4.打开RMAN
$>RMAN
5.连接数据库
RMAN>connect catalog rman/rman
6.创建恢复目录
RMAN>Create catalog tablespace tools
注册目标数据库,恢复目录创建成功后,就可以注册目标数据库了,目标数据库就是需要备份的数据库,一个恢复目录可以注册多个目标数据库,注册目标数据库的命令为:
$>RMAN target internal/password catalog rman/rman@rcdb;
RMAN>Register database;
数据库注册完成,就可以用RMAN来进行备份了,更多命令请参考ORACLE联机手册或《ORACLE8i备份与恢复手册》。
注销数据库不是简单的在RMAN提示下反注册就可以了,需要运行一个程序包,过程如下:
1. 连接目标数据库,获得目标数据库ID
$> RMAN target internal/password catalog rman/rman@rcdb;
RMAN-06005: connected to target database: RMAN (DBID=1231209694)
2. 查询恢复目录,得到更详细的信息
SQL> SELECT db_key, db_id FROM db WHERE db_id = 1231209694;

DB_KEY DB_ID
---------- ---------------
1 1237603294
1 row selected.
3. 运行过程dbms_rcvcat.unregisterdatabase注销数据库,如
SQL> EXECUTE dbms_rcvcat.unregisterdatabase(1

, 1237603294)

三、 使用backup database命令执行备份
RMAN> BACKUP DATABASE;
执行上述命令后将对目标数据库中的所有数据文件进行备份,由于没有显式指定FORMAT参数,rman会自动为每个备份片段命名,并保存在ORACLE_HOME/database目录下。

四、备份归档日志文件

归档日志对于数据库介质恢复相当关键,其虽然不像控制文件那样一旦损坏则数据库马上崩溃但重要性丝毫不减。归档日志文件能确保我们将数据库恢复到备份之前的任意时刻。
利用BACKUP ARCHIVELOG命令备份
RMAN> BACKUP ARCHIVELOG ALL;


五、采用RMAN进行备份
RMAN使用脚本来备份数据库,以下是RMAN进行备份的几个例子。
1.备份整个数据库
backup full tag ‘basicdb’ format ‘/bak/oradata/full_%u_%s_%p’ database;
2.备份一个表空间
backup tag ‘tsuser’ format ‘/bak/oradata/tsuser_%u_%s_%p’ tablespace users;
3.备份归档日志
backup tag ‘alog’ format ‘/bak/archivebak/arcbak_%u_%s_%p’ archivelog all delete input;
4.3.2 维护RMAN
4.3.2.1 查看RMAN的信息
检查现有备份
RMAN>list backup
列出过期备份
RMAN>report obsolete
删除过期的备份
RMAN>allocate channel for maintenance type disk;
RMAN>change backupset id delete;
RMAN>release channel;
4.3.2.2 同步或重置RMAN
如果目标数据库物理对象发生了变化,如添加了一个数据文件,需要用如下命令同步:
RMAN>resync catalog;
如果目标数据库reset了数据库,需要用如下命令同步
RMAN>reset database;
当手工删除了数据库的归档文件后,要执行以下脚本同步
RMAN>allocate channel for maintenance type disk;
RMAN> change archivelog all crosscheck;
RMAN>release channel;
当手工删除了数据库的RMAN备份后,要执行以下脚本来同步
RMAN>allocate channel for maintenance type disk;
RMAN>crosscheck backup;
RMAN>delete expire backup;
RMAN>release channel;


相关主题
文本预览
相关文档 最新文档