Oracle升级10.2.0.5到11.2.0.3

自己做了一把10g升级11g实验.以下是实验过程.我的环境如下:

操作系统:Oracle Enterprise Linux 5.4        数据库:10.2.0.5        SID:db10g        Archive Mode:No Archived

1.安装11g软件前的设置.
在安装11g软件的时候需要把软件包,内核参数都修成11g需求的.按照官方文档调整下列参数.

修改内核参数/etc/sysctl.conf

kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=1048576
net.core.rmem_max= 4194304
net.core.wmem_default=262144
net.core.wmem_max= 1048586
fs.file-max = 6851744
fs.suid_dumpable = 1
fs.aio-max-nr = 1048576

在/etc/security/limits.conf下增加

oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  4096
oracle              hard    nofile  65536
oracle              soft    stack   10240

安装下列软件包

rpm -Uvh binutils-2.*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh compat-libstdc++-33*.i386.rpm
rpm -Uvh elfutils-libelf*
rpm -Uvh gcc-4.*
rpm -Uvh gcc-c++-4.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh glibc-devel-2.*
rpm -Uvh glibc-headers-2.*
rpm -Uvh ksh*
rpm -Uvh libaio-0.*
rpm -Uvh libaio-devel-0.*
rpm -Uvh libgomp-4.*
rpm -Uvh libgcc-4.*
rpm -Uvh libstdc++-4.*
rpm -Uvh libstdc++-devel-4.*
rpm -Uvh make-3.*
rpm -Uvh sysstat-7.*
rpm -Uvh unixODBC-2.*
rpm -Uvh unixODBC-devel-2.*
rpm -Uvh numactl-devel-*

给Oracle用户添加组

[root@db10g Server]# id oracle
uid=500(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
[root@db10g Server]# groupadd oper
[root@db10g Server]# groupadd asmadmin
[root@db10g Server]# usermod -g oinstall -G dba,oper,asmadmin oracle
[root@db10g Server]# id oracle
uid=500(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(oper),504(asmadmin)

增加11g安装目录和环境变量

[oracle@db10g db_1]$ mkdir -p /oracle/app/oracle/product/11.2.0/db_1
[oracle@db10g ~]$ cp .bash_profile   .11bash_profile
[oracle@db10g ~]$ vi .11bash_profile
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
ORACLE_SID=db10g; export ORACLE_SID
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

2.开始安装11g.

安装的时候先source .11bash_profile,安装过程中前面都一样的,在这个地方记得选择Upgrade an existing database

image

image

image

image

image

image

[root@db10g oracle]# /oracle/app/oracle/product/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g

The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME=  /oracle/app/oracle/product/11.2.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)
[n]: y
Copying coraenv to /usr/local/bin ...

Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

3.运行完root.sh后会出现2个配置助手,一个是监听,另外一个是dbua

image

image

这里还可以配置tns连接串

image

image

image

image

image

这里提示需要处理的地方.

a.数据库存在资料库.这个无所谓,我们升级完了也可以重建资料库.事实上升级完后资料库也重新创建了.

b.Oracle推荐收集数据字典的统计信息.然后再进行升级.

exec DBMS_STATS.GATHER_DICTIONARY_STATS (estimate_percent=>100, Degree=>8, Cascade=>TRUE, Granularity=>'ALL');

c.数据库设置了event或者是_trace_event初始化参数,这里我去查了一下,我并没设置这些,所以这个也是可以忽略的.可以用下列语句查询.

show parameter event

SELECT a.ksppinm "Parameter",b.ksppstvl "Session Value",c.ksppstvl "Instance Value"
FROM x$ksppi a,x$ksppcv b,x$ksppsv c
WHERE a.indx = b.indx AND a.indx = c.indx AND a.ksppinm LIKE '%_trace_event%'

image

因为是做实验,实验环境的硬盘设置有限,所以这里我没有开backup database.如果是生产环境的话,建议打开,进行备份.如果你的库开了归档的话,上面界面会多一个选项,在线期间关闭归档功能,这个功能最好勾上.

这里报临时表空间不足,我们增加一下再回来点retry就好.

image

SQL> alter database tempfile '/oracle/app/oracle/oradata/db10g/temp01.dbf' resize 200M;

Database altered.

image

image

image

image

image

image

EM也是可以访问的.

4.升级完成之后,我们可以做进一步的检查

首先我们把环境变量彻底的修改成11g的.

[oracle@db10g ~]$ mv .11bash_profile .bash_profile
[oracle@db10g ~]$
[oracle@db10g ~]$ source .bash_profile
[oracle@db10g ~]$
[oracle@db10g ~]$ echo $ORACLE_HOME
/oracle/app/oracle/product/11.2.0/db_1
[oracle@db10g ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Tue May 29 14:41:16 2012

Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

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
SQL> select COMP_NAME,VERSION,STATUS from DBA_REGISTRY;
COMP_NAME                                VERSION                        STATUS
---------------------------------------- ------------------------------ -------
Oracle Enterprise Manager                11.2.0.3.0                     VALID
OLAP Catalog                             11.2.0.3.0                     VALID
Spatial                                  11.2.0.3.0                     VALID
Oracle Multimedia                        11.2.0.3.0                     VALID
Oracle XML Database                      11.2.0.3.0                     VALID
Oracle Text                              11.2.0.3.0                     VALID
Oracle Data Mining                       11.2.0.3.0                     VALID
Oracle Expression Filter                 11.2.0.3.0                     VALID
Oracle Rules Manager                     11.2.0.3.0                     VALID
Oracle Workspace Manager                 11.2.0.3.0                     VALID
Oracle Database Catalog Views            11.2.0.3.0                     VALID
Oracle Database Packages and Types       11.2.0.3.0                     VALID
JServer JAVA Virtual Machine             11.2.0.3.0                     VALID
Oracle XDK                               11.2.0.3.0                     VALID
Oracle Database Java Packages            11.2.0.3.0                     VALID
OLAP Analytic Workspace                  11.2.0.3.0                     VALID
Oracle OLAP API                          11.2.0.3.0                     VALID
17 rows selected.

至此,整个升级过程完成!

分享到: 更多

Post a Comment

Your email is never published nor shared. Required fields are marked *