一 使用 rman 备份之前对数据库归档模式对应的数据库模式要求:
1.1
如果目标数据库是归档模式
数据库必须
mount
或
open
使用当前的控制文件。
如果
backup
的时候数据库是
open
状态但是不一致,你必须在恢复不一致的
backup
之后应用
redo
日志文件来使数据库一致。
1.2
如果目标数据库是非归档模式
你必须在
backup
之前使数据库正常关闭之后启动到
mount
状态,
shutdown
命令必须是
NORMAL
,
IMMEDIATE,
或者
TRANSACTIONAL
模式;
你不能在数据库实例失败或使用
shutdown abort
之后使用
rman
来备份非归档数据库
二 连接 rman target 的方式:
2.1可以使用一下方式连接:
% rman target '"/ as sysdba"'
% rman target '"/ as sysbackup"'
rman target /
2.2也可以使用以下方式连接:
2.2.1 sdba被赋予sysdba权限后连接:
% rman target '"sdba@prod1 as sysdba"'
2.2.2 sbu被赋予sysbackup权限后连接:
% rman target '"sbu@prod1 as sysbackup"'
target database Password: password
connected to target database: PROD1 (DBID=39525561)
备份指定PDB:
BACKUP PLUGGABLE DATABASE sales, hr;
三 使用 rman 连接目标数据库
3.1使用默认nocatalog模式登录rman
% rman
RMAN> CONNECT TARGET /
rman备份整库:
RMAN> BACKUP DATABASE;
此时连接进去时,数据库默认使用nocatalog模式,当你使用catalog模式连接时,产生报错信息:
RMAN> CONNECT CATALOG rco@catdb
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-06445: cannot connect to recovery catalog after NOCATALOG has been used
3.2如果要使用catalog模式连接到target数据库,使用如下命令:
% rman
RMAN> CONNECT TARGET;
connected to target database: PROD (DBID=39525561)
RMAN> CONNECT CATALOG rco@catdb;
recovery catalog database Password: password
connected to recovery catalog database
RMAN> CONNECT AUXILIARY "sbu@dupdb AS SYSBACKUP";
auxiliary database Password: password
connected to auxiliary database: DUPDB (not mounted)
3.3连接到PDB作为本地用户:
例子中连接到
PDB hr_pdb
作为本地用户
sbu_pdb,
同时该用户需要被赋予
sysbackup
权限。
hrpdb
是
hr_pdb
对应的
service name
%rman
RMAN> CONNECT TARGET "sbu_pdb@hrpdb AS SYSBACKUP";
四 使用 rman 备份 root
4.1连接到root的方法
使用本地用户连接到CDB:
rman target sys
target database Password: password
connected to target database: CDB (DBID=659628168)
使用操作系统用户连接:
rman target /
connected to target database: CDB (DBID=659628168)
使用网络service name连接到CDB:
rman target c##bkuser@sales
target database Password: password
connected to target database: CDB (DBID=659628168)
4.2备份root:
BACKUP DATABASE ROOT;
五 使用 rman 备份 PDB
5.1使用共同的具有sysdba或sysbackup权限的用户连接到root
确定你要备份的PDB例如:sales,hr这两个PDB,使用如下命令:
BACKUP PLUGGABLE DATABASE sales, hr;
5.2使用具有sysdba或sysbackup权限的用户连接到你要导出的PDB
使用如下命令备份:
BACKUP DATABASE;
六 备份 PDB 中的表空间和数据文件:
6.1使用具有sysdba或sysbackup权限的用户连接到你要导出的PDB
使用如下命令备份表空间:
BACKUP TABLESPACE users, examples;
使用如下命令备份数据文件:
BACKUP DATAFILE 10, 13;
七 备份归档重做日志( archive redo log )
7.1备份归档重做日志的前提:
在CDB中,只有当你使用sysdba或sysbackup权限的用户连接到root时,才能备份归档重做日志文件。
当你用本地用户使用sysdba或sysbackup连接PDB时,你不能备份或删除归档重做日志
如果你的归档重做日志被复制到多个目的地,当你连接并使用rman备份时,它只会拷贝一份归档重做日志文件。当你用root连接到CDB时,你可以开关归档重做日志文件。
7.2备份CDB的归档重做日志:
使用sysdba或sysbackup权限的用户连接到root,使用rman备份命令:
1. BACKUP ARCHIVELOG ALL;
2.BACKUP ARCHIVELOG
FROM SEQUENCE 121
UNTIL SEQUENCE 125;
3.BACKUP DATABASE PLUS ARCHIVELOG;