环境
操作系统版本
[root@cluster3 ~]# uname -a
Linux cluster3 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
数据库版本
[oracle@cluster3 bin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.5.0 - Production on Fri Aug 1 17:37:21 2014
Copyright (c) 1982, 2010, Oracle. All Rights Reserved.
11203数据库软件包
[root@cluster3 software]# ll
total 2442060
drwxr-xr-x. 8 oracle oracle 4096 Sep 22 2011 database
-rwxr-xr-x. 1 root root 1358454646 Aug 1 14:04 p10404530_112030_Linux-x86-64_1of7.zip
-rwxr-xr-x. 1 root root 1142195302 Aug 1 14:05 p10404530_112030_Linux-x86-64_2of7.zip
这里是11.2.0.3的安装包中的1of7和2of7。同时也是数据库安装包。参见下图
升级思路
Oracle的升级方式有很多种。这里采用如下思路。
- 安装11.2.0.3到新的ORACLE_HOME
- 运行dbua升级程序升级数据库
升级步骤
1,万事备份为先
2,停止老版本数据库及监听
3,.bash_profile文件中添加新版本数据库的路径配置
替换掉老版本的路径等配置信息
4,创建新版本数据库的目录,并授权
mkdir -p data1/app/oracle/product/11.2/db_1
5,修改系统级参数文件
修改sysctl.conf limits.conf
6,运行runinstaller安装新版本数据库
./runInstaller -silent -debug -force \
-ignoreSysPrereqs -ignorePrereq \
FROM_LOCATION=/opt/software/database/stage/products.xml \
oracle.install.option=UPGRADE_DB \
UNIX_GROUP_NAME=oracle \
ORACLE_HOME=/data1/app/oracle/product/11.2/db_1 \
ORACLE_HOME_NAME="OraDb11g_Home1" \
ORACLE_BASE=/data1/app/oracle \
oracle.install.db.InstallEdition=EE \
oracle.install.db.isCustomInstall=false \
oracle.install.db.DBA_GROUP=dba \
oracle.install.db.OPER_GROUP=dba \
DECLINE_SECURITY_UPDATES=true
注意目录的授权者和参数中指定的要一致。
7,拷贝pfile文件
将老版本的pfile文件拷贝到新版本的dbs目录下。
8,运行dbua升级数据库
、
等待大概一小时左右。数据库升级完毕。已经处于open状态