通常在安装补丁集或者补丁之前,强烈建议备份 oracle_home 和 oraInventory 目录。
The inventory is organized as follows:
Central Inventory (oraInventory)
Local Inventory (Oracle Home inventory)
可以分为 冷备 和 热备,一般建议是将数据库的所有进程(实例,监听等)全部关闭,进行冷备。
备份方式可以有很多种,比如 zip,tar,cpio等方式来压缩oracle_home。
参考MOS文档:How to Perform ORACLE_HOME Backup? (Doc ID 565017.1)
二、备份ORACLE_HOME
下面使用 tar 压缩方式来进行备份:
本文使用的是单实例11204数据库。
1、关闭数据库所有进程(可选)
##Non-rac
shutdown immediate
lsnrctl stop
##rac
srvctl stop database -d orcl
srvctl stop listener
srvctl stop scan_listner
2、进入ORACLE_HOME目录所在位置
echo $ORACLE_HOME
cd /u01/app/oracle/product/11.2.0
3、备份ORACLE_HOME(建议使用root用户)
mkdir /backup
cd /u01/app/oracle/product/11.2.0
tar -pcf /backup/oracle_home_backup210421.tar db
三、还原ORACLE_HOME
1、关闭数据库所有进程(必须)
##Non-rac
shutdown immediate
lsnrctl stop
##rac
srvctl stop database -d orcl
srvctl stop listener
srvctl stop scan_listner
2、进入ORACLE_HOME目录所在位置
echo $ORACLE_HOME
cd /u01/app/oracle/product/11.2.0
3、重命名或移走当前ORACLE_HOME
mv db db_backup210421
or
mv db /backup/db_backup210421
4、还原ORACLE_HOME(oracle用户下)
chown -R oracle:oinstall /backup
cd /u01/app/oracle/product/11.2.0
tar -pxf /backup/oracle_home_backup210421.tar
四、开启数据库
##开启数据库实例和监听
##Non-rac
startup
lsnrctl start
--rac
srvctl start database -d orcl
srvctl start listener
srvctl start scan_listener