2月12日 LINUX ORACLE10.2.0.4小版本升级详细记录 推荐
2011-02-14 16:37
381 查看
1. 准备工作
1.1. 介质准备
一、下载介质[/b]p6810189_10204_Linux-x86-64.zip
[/b]
二、上传并解压介质[/b]
unzip p6810189_10204_Linux-x86-64.zip
实例:[/b][/b]
[root@L-DB-128-36 patch]# cd /home/oracle/patch
[root@L-DB-128-36 patch]# ls -lt |grep 10204
-rw-r--r-- 1 oracle oinstall 1195551830 02-12 15:09 p6810189_10204_Linux-x86-64.zip
1.2. 备份
一、[/b]软件备份[/b]$ cd /home/oracle/product
$ tar cvf /u01/bak/softbak/product_201102.tar 10.2.0
实例:[/b]
[root@L-DB-128-36 product]# tar cvf /u01/bak/softbak/product_201102.tar 10.2.0
10.2.0/
10.2.0/db_1/
10.2.0/db_1/sqlj/
10.2.0/db_1/sqlj/lib/
10.2.0/db_1/sqlj/lib/runtime12.jar
……
二、[/b]数据备份[/b]
1、 [/b]逻辑备份[/b]
停止[/b]wms\ chicago[/b]相关应用,在备份服务器上[/b]exp[/b]备份数据后关闭数据库[/b][/b]
exp WMS/***@IDC_172.16.3.5 file=h:\dbback\oracle\data\WMS%date:~11,14%.dmp log=h:\dbback\oracle\log\WMS%date:~0,10%.log owner=WMS compress=n buffer=8092
exp chicago/***@IDC_172.16.3.5 file=h:\dbback\oracle\data\chicago%date:~11,14%.dmp log=h:\dbback\oracle\log\chicago%date:~0,10%.log owner=chicago compress=n buffer=8092
2[/b]、物理备份[/b][/b]
rman>backup database format '/u01/bak/rman/shport_full_backup_%P_%T';
实例:[/b]
RMAN> backup database format '/u01/bak/rman/shport_full_backup_%P_%T';
Starting backup at 2011-02-12 23:42:49
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=522 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00001 name=+DGROUP1/shport/datafile/system.256.732734315
input datafile fno=00003
……
备份[/b]oracle[/b]数据库软件[/b][/b]
$ cd /home/oracle/product
$ tar cvf /u01/bak/softbak/product_201102.tar 10.2.0
备份数据库[/b] [/b]
rman>backup format '/u01/bak/rman/shport_full_backup_%P_%T';
检查升级前无效对象[/b][/b]
SQL> select owner,object_name,subobject_name,object_type,status from dba_objects where status<>'VALID'
[/b]
第二步,[/b] [/b]关闭数据库[/b][/b]
emctl stop dbconsole
isqlplusctl stop
lsnrctl stop
shutdown immediate;
检查是否有进程使用[/b]oracle[/b]的相关库或程序[/b][/b]
$ps -ef | grep ora
[/b]
第三步,解压[/b]p6810189_10204_Linux-x86-64.zip[/b],安装补丁包[/b][/b]
unzip p6810189_10204_Linux-x86-64.zip
2. 实施
2.1. 环境检查
一、检查升级前无效对象[/b][/b]SQL> select owner,object_name,subobject_name,object_type,status from dba_objects where status<>'VALID'
2.2. 停数据库相关进程
一、[/b]停进程[/b]1、emctl stop dbconsole
2、 isqlplusctl stop
3、 lsnrctl stop
4、 shutdown immediate;
二、[/b]检查是否有进程使用[/b]oracle[/b]的相关库或程序[/b][/b]
1、$ps -ef | grep oracle
2、KILL -9 杀掉可能影响的进程(别把自己的SSH给KILL掉)
注:$fuser 指定目录是官方推荐的用法,但实际实施过程中有时候不管用
2.3. 升级
一、[/b]图形界面准备[/b]确保用户能打开图形界面,可用root用户运行
export DISPLAY=IP:0.0
xhost +
如果出现界面乱码现象,执行命令:export LANG=en[/b]
二、[/b]执行[/b]runInstaller[/b]
以oracle用户执行Disk1下的runInstaller
./runInstaller
注:[/b]
1、 将安装包改成用户为oracle用户所有,之前已是就不用改了.
chown -R oracle:dba 解压目录/Disk1
在runInstaller时可能报子目录oui权限错误,原因一般为其他进程在用目录或权限问题
解决方法:[/b]把该软件包全部改成可执行chown -R 755 oracle:ointsll Disk1
也可能需要KILL掉相应进程。
2[/b]、[/b]出现图形界面后和windows上一样,选择oracle_home只有一个数据库的话默认即可。
完了最后会让你以root用户运行一个root.sh的脚本,该脚本会提示是否覆盖已存在的目录,默认为否即可。
三、以upgrade[/b]方式打开数据库[/b]
Startup upgrade;
以sys用户登录,检查system表空间情况:
select tablespace_name, sum(bytes)/(1024*1024) as free_space
from dba_free_space
where tablespace_name = 'SYSTEM'
group by tablespace_name;
如果该值小于50,则需要加大SYSTEM表空间;不建议使用resize方式而是使用添加文件的方式。
alter tablespace system add datafile '/opt/app/oradata/orcl/system02.dbf'size 300m;
四、设置[/b]SHARED_POOL_SIZE and JAVA_POOL_SIZE[/b]初始化参数[/b][/b]
SQL> ALTER SYSTEM SET SHARED_POOL_SIZE='150M' SCOPE=spfile;
SQL> ALTER SYSTEM SET JAVA_POOL_SIZE='150M' SCOPE=spfile;
注:[/b]检查shared_pool_size和java_pool_size大小,可适当增大(我们这里都设置成了150M,默认是0)。否则更新脚本因pool空间不够而无法升级成功。
如果启用自动sga管理,保证sga_max_size和sga_target在400M以上,如果是ASM系统则JAVA_POOL_SIZE不能设置。[/b]
[/b]
五、[/b]执行升级脚本[/b][/b]
[/b]SQL> STARTUP UPGRADE
SQL> SPOOL patch.log
SQL> @?/rdbms/admin/catupgrd.sql
SQL> SPOOL OFF
注:[/b]
执行catupgrd.sql[/b]是个很耗时的过程。内存足够的话运行时间半个小时左右[/b][/b]
检查 /opt/app/patch.log[/b]是否有报错[/b],如果有错误可以重新执行该脚本[/b][/b]
六、[/b]编译无效对象[/b]
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
SQL> @?/rdbms/admin/utlrp.sql
注:运行utlrp.sql[/b]以重新编译所有无效的PL/SQL[/b]程序包[/b]
正常运行结果:[/b][/b]
ERRORS DURING RECOMPILATION[/b]
---------------------------[/b]
0[/b]
[/b]
七、检查无效对象,必须无,至少比升级前要少[/b][/b]
SQL> select owner,object_name,subobject_name,object_type,status from dba_objects where status<>'VALID'
[/b]实例:[/b]36[/b]数据库升级前[/b]30[/b]个无效对象,升级后[/b]0[/b]个无效对象[/b][/b]
2.4. 升级后确认
一、[/b]升级结束,启动数据库及相关服务[/b]emctl start dbconsol
isqlplusctl start
start
sqlplus / as sysdba
[/b]
二、检查版本[/b][/b]
select comp_name,version from dba_registry;
全是[/b]10.2.0.4.0[/b],升级成功[/b][/b]
[/b]
三、连接检查[/b][/b]
SQLPLUS[/b]
[/b]应用连接检查[/b][/b]
相关文章推荐
- linux环境下oracle版本升级(10.2.0.1-10.2.0.4)
- Linux6.3_64安装Oracle10.2.0.1数据库并升级至10.2.0.4版本
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- 各版本Linux下安装实验ORACLE+10gR2+ASM+升级到10.2.0.5+单实例
- ORACLE11.2.0.4 版本升级ORA-39700: database must be opened with UPGRADE option问题解决记录
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- ORACLE 10.2.5垮版本升级11.2.2 for windows 详细文档
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- ORACLE 10.2.5垮版本升级11.2.2 for windows 详细文档
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- Linux5.3_x86_64上oracle10.2.0.1升级到10.2.0.4
- VMware中linux环境下oracle安装图文教程(二)ORACLE 10.2.05版本的升级补丁安装
- Linux (CenteOS 4.7)平台安装Oracle 9i的过程详细记录
- Linux下Oracle 10.2.0.1升级到10.2.0.4总结
- linux环境Oracle10.2.0.1到10.2.0.4的升级
- linux平台下oracle从10.2.0.1升级到10.2.0.4
- 一次linux系统内核升级记录 推荐
- linux平台下oracle从10.2.0.1升级到10.2.0.4