说明:11g数据库现在新部署的数量也很多的,对于10g数据库,现在整理一下10g到11g的升级过程。10.2.0.2以上版本才能升级到11.2.0.3版本。
升级说明:10.2.0.5(64)―> 升级到11.2.0.3(64)
一、环境介绍
1. 数据库环境
操作系统版本:OEL5.8 x64
数据库版本:10.2.0.5 x64
数据库sid名:orcl
1)Oracle 10g 10.2.0.5(64bit)安装按照标准文档环境进行安装。
/u01/app/oracle/product/10.2.0/db_1
/u01/app/oracle/admin/orcl/{adump,bdump,cdump,ddump,udump}
/u01/app/oracle/oradata/orcl
/u01/app/oracle/flash_recovery_area/ORCL
2)Oracle 11g 11.2.0.3(64bit)安装文件
p10404530_112030_Linux-x86-64_1of7.zip
p10404530_112030_Linux-x86-64_2of7.zip
2. 升级思路
1)在数据库服务器上关闭10.2.0.5x64数据库监听与数据库。
2)创建Oracle 11.2.0.3数据库相关环境变量与目录。
3) 在Oracle 10.2.0.5x64数据库服务器上安装Oracle 11.2.0.3x64数据库数据库软件。
4)在Oracle 11.2.0.3环境变量下执行dbua升级。
二、升级前配置
1. 关闭10g数据库
1)关闭数据库
# su - oracle
$ sqlplus / as sysdba;
SQL> shutdown immediate;
SQL> quit
2)关闭监听
$ lsnrctl stop
2. 查看用户组与用户
1)创建用户组和用户的命令如下,数据库用户10g已经创建,这里不需要再创建。
# id oracle
uid=500(oracle) gid=500(oinstall) groups=500(oinstall),501(dba)
2)创建Oracle 11g数据库目录
mkdir -p /u01/app/oracle/product/11.2.0/db_1
chmod -R 775 /u01/app
chown -R oracle:oinstall /u01
3. 修改11g 内核支持
说明: 注释掉10g内核参数。
# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
# sysctl -p 执行生效
4. 修改与添加文件描述符
cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
EOF
5. 配置oracle环境变量
# su - oracle
$ vi .bash_profile
说明: 注释掉11g环境变量,创建11g环境变量
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG="Simplified Chinese_china.ZHS16GBK"
export LANG=en_US
export LC_ALL=en_US
export LD_LIBRARY_PATH=/lib:/usr/lib:$ORACLE_HOME/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
umask 022
生效11g环境变量
# source .bash_profile
三、升级数据库
1. 拷贝oracle 11g 到linux系统中
# mv p10404530_112030_Linux-x86-64_1of7.zip /u01/app/
# mv p10404530_112030_Linux-x86-64_2of7.zip /u01/app/
# unzip p10404530_112030_Linux-x86-64_1of7.zip
# unzip p10404530_112030_Linux-x86-64_2of7.zip
# 解压在/u01/app/database下
# chown -R oracle:oinstall /u01/app/database
安装oracle11g数据库软件
# xhost +
access control disabled, clients can connect from any host
$ su - oracle
$ cd /u01/app/database
$ ./runInstallar
2. 开始升级
本机安装方式,使用Oracle用户登陆,接上面操作。
$ su - oracle
$ cd /u01/app/database
$ ./dbua
按向导进行升级,升级过程超过1个小时。
3. 修改数据库兼容参数
# su - oracle
$ sqlplus /nolog
SQL*Plus: Release 11.2.0.3.0 Production on 星期六 7月 27 14:51:30 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
SQL> conn / as sysdba;
已连接。
SQL> alter system set compatible='11.2.0.3.0' scope=spfile;
系统已更改。
SQL> show parameter compatible
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
compatible string 10.2.0.5.0
SQL>
重启数据库。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area 622149632 bytes
Fixed Size 2230912 bytes
Variable Size 239076736 bytes
Database Buffers 377487360 bytes
Redo Buffers 3354624 bytes
数据库装载完毕。
数据库已经打开。
SQL>
SQL> show parameter compatible
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
compatible string 11.2.0.3.0
SQL>
SQL>
4. 测试数据库
归档模式
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 13
Next log sequence to archive 15
Current log sequence 15
原来帐号与数据
SQL> conn abc/abc;
Connected.
SQL> select * from tab;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
ABC TABLE
查看数据库版本情况
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production