SQL>archive log list;(rman需运行在归档模式下)
rman target / #以操作系统验证方式进入目标数据库
RMAN> show all #显示rman的永久配置情况
#-----列出备份----#
RMAN> list backup summary; #概述可用的备份
RMAN> list backup; #列出详细备份
RMAN>list expired backup; #列出过期的备份
RMAN>list backup of datafile 1; #列出数据文件的备份
RMAN>list archivelog all;#列出归档日志信息
RMAN> list backup of archivelog all; #列出归档日志的备份信息
RMAN> list backup of controlfile; #列出控制文件的备份信息
RMAN> list backup of spfile;#列出spfile的备份信息
############################################
RMAN> report obsolete; #报告丢弃的备份,如果使用了保存策略,备份会被标记为丢弃状态
RMAN> delete obsolete; #删除丢弃状态的备份
#####################################################
crosscheck命令
a, 备份集有两种状态A(Available,RMAN认为该项存在于备份介质上) X(Expired,备份存在于控制文件或回复目录中,但是并没有存在于备份介质上)
b. crosscheck的目的是检查rman的目录以及物理文件,如果物理文件不存在于介质上,将标记为Expired.如果物理文件存在,将维持Available。如果原先标记为Expired的备份集再次存在于备份介质上(如恢复了损坏的磁盘驱动器后),crosscheck将把状态重新从Expired标记为Available.
c. crosscheck输出分两部分。第一部分列出存在于备份介质上的所有备份集片,第二部分列出不存在与备份介质上的备份集片,并标记为Expired.当设置备份保存策略后,对于过期(obsolete)的备份,crosscheck标记其状态依然为Available。
示例:
RMAN> crosscheck backup; #交叉检查所有的备份
RMAN> crosscheck backup of datafile 1;
RMAN> crosscheck backup of tablespace users;
RMAN> crosscheck backup of controlfile;
RMAN> crosscheck backup tag='TAG20161120T121243';
RMAN> crosscheck backup completed after 'sysdate-2';
RMAN> crosscheck backup completed between 'sysdate-5' and 'sysdate-2';
RMAN> crosscheck archivelog all; #交叉检查所有的归档日志
RMAN> crosscheck archivelog like 'o1_mf_1_6%';
RMAN> crosscheck archivelog from sequence 5;
RMAN> crosscheck archivelog until sequence 8;
###################################################################
validate命令
a,. 验证备份集片是否能够被还原
b. 可以先通过list backup summary得到备份集的主键ID,然后在validate backupset ID;
RMAN> validate backupset 2;
可以用于校验备份集的有效性,常用命令如下:
restore validate controlfile;
restore validate database;
################################################################
6. delete命令,删除备份
注意:如果被判断为废弃的备份是一个单独数据文件的镜像复制,那么在执行delete命令时将直接删除这个景象复制文件。
如果被判断为废弃的备份是一个备份集中的一部分,则必须等到整个备份集中其他文件都被废弃之后,才能删除这个备份集。
RMAN> report obsolete;
RMAN> delete obsolete; #删除陈旧备份
RMAN> delete backupset 3; #删除指定编号的备份集,noprompt参数表示直接删除,不提示输入yes或no
RMAN> delete backuppiece '/home/oracle/backup/DEMO.bak'; #删除指定的备份片
RMAN> delete backup; #删除所有的备份
RMAN> delete copy; #删除映像副本
RMAN> delete datafilecopy '/home/oracle/backup/demo.bak'; #删除指定映像副本
RMAN> delete datafilecopy 1;
RMAN> delete backupset 1,2,3; #删除多个备份集,用逗号隔开
RMAN> delete archivelog all; #删除所有归档
############################################################
crosscheck archivelog all;
delete noprompt expired archivelog all; #无提示删除所有过期的归档日志
delete noprompt archivelog all completed before 'sysdate - 1';
startup nomount pfile='/u01/app/oracle/product/12.2.0/dbs_1/dbs/inithadb.ora'; #指定初始化参数文件以nomount方式启动
RECOVER DATABASE UNTIL AVAILABLE REDO;
alter database open resetlogs;
restore controlfile from 'ctl';
CATALOG START WITH 'backupdata' #注册备份目录到控制文件
run{
allocate channel d1 type disk;
switch datafile all; #切换数据文件
release channel d1;
}
[grid@orahost123 ~]$ asmcmd lsdg #查看磁盘组
delete noprompt expired backup ;
获取原库的pfile,并修改
SQL>create pfile='/home/oracle/initappdb27.ora' from spfile;
##############################################################
rac集群:关闭顺序:关闭数据库---停止集群----
shutdown immediate;
su - root
srvctl stop database -d appdb #关闭整个数据库
crsctl stat res -t #查看集群的状态
crsctl check cluster -all #检查整个集群件的状态
crsctl stop cluster -all #关闭集群件的集群服务
crsctl stop has - f #停止高可用服务
crsctl start cluster -all #启动整个集群的服务
crsctl config crs #自启动集群服务检查
##################################
启动顺序:开始集群---启动数据库
crsctl start cluster -all
srvctl start database -d appdb
####################################
————————————————
原文链接:https://blog.csdn.net/gumengkai/article/details/5328387