适用范围
在项目实施过程,有可能会因为主机故障或在相同型号的主机安装多次oracle,为了减少大家安装或配置数据库的时间。它特别适用于对数据库打过n次patch的数据库。因为这样你克隆后。就不要再重复打patch了。此方法适用于相同型号的主机。
操作流程
1, 确认你在克隆数据库时,数据库已经关闭
sqlplus “/as sysdba”
shutdown immediate
lsnrctl stop
emctl stop dbconsole
2, 对$ORACLE_HOME目录进行备份,注意这里不用对admin和flash_recovery_area及oradata进行备份。这些目录会在以后建库时构建
cd $ORACLE_HOME
zip –r db_1.zip * -- 或tar cvf db_1.tar *
3,把以上zip或tar文件ftp到目标主机(可以是不同目录下)
4,unzip –d你要解压的目标主机目录db_1.zip
5,删除$ORACLE_HOME/admin/network下面的ora文件
cd $ORACLE_HOME/admin/network
rm *.ora
6,运行$ORACLE_HOME/oui/bin/runinstaller –silent –clone ORACLE_HOME=”目录主机oracle_home目录” ORACLE_HOME_NAME=”DB10gR2”
注:运行以上命令,会出现一个字符界面的进度条,全部运行完后。会提示 你运行一个脚本root.sh,以root运行,一路回车就ok了。
7,运行dbca建库
8,运行netca或netmgr(二者为图形界面)配置监听及网络服务名
9,附注:
经测试:在同一个主机上,可以在不同目录创建安装多个数据库软件
另外在配置数据库实例(也就是dbca建库)时,service_name or sid不 要超过8个字符
要是在同一个主机上要配置多个数据库软件,为了简化。你可以
cp源oracle主目录/.profile 安装新的数据库软件的主目录,然后只要修改其中的ORACLE_BASE和ORACLE_SID就行了。
要是你对源主机的数据库找了n次或n个patch(就是为某个版本数据库修复bug或升级版本),必须在clone数据库前,运行以下命令
$ORACLE_HOME/Opatch ORACLE_HOME=ORACLE_HOME_USING_PATCH
$ORACLE_HOME/Opatch opatch lsinventory