您的位置:首页 > 数据库 > Oracle

升级oracle10.2.0.1 到oracle10.2.0.5.9

2015-12-15 08:39 471 查看
在分保和等保测评中,各单位的系统都会被检查出各种漏洞,解决的办法就是对各种系统进行升级和打补丁,此文特针对oracle10.2.0.1扫描出的漏洞问题进行升级与打补丁到oracle10.2.0.5.9。具体步骤是先从10.2.0.1升级到10.2.0.5再通过打补丁的方式最终升级到10.2.0.5.9

1.升级包说明:

升级到10.2.0.5.9共需要3个升级包:

p8202632_10205_LINUX.zip 是10.2.0.5.0的升级补丁包;

p14275629_10205_LINUX--DB--10.2.0.5.9.zip是10.2.0.5的小版本补丁包;

p6880880_102000_LINUX.zip是从10.2.0.5.0升级到10.2.0.5.9需要的补丁包工具升级包

上述包可从百度云搜索来寻找,否则很难找到,除非你有oracle metlike 账号

并上传上述包到oracle服务器/home/oracle/oraclepatch目录下减压

#su - oracle

$cd /home/oracle/oraclepatch

$unzip p8202632_10205_LINUX.zip //减压后的目录为Disk1

$unzip p14275629_10205_LINUX--DB--10.2.0.5.9.zip
//减压后的目录为14275629

$unzip p6880880_102000_LINUX.zip
//减压后的目录为OPatch

2.数据备份

2.1.确认字符集

$export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"

$echo $NLS_LANG

2.2.数据库备份

$mkdir -p /home/oracle/db_databackup/

$cd /home/oracle/db_databackup/

$exp "'sys/mypasswd as sysdba'" full=y file=backfull_20151213.dmp log=backfullexport_20151213.log

$exp myaccount/mypasswd owner=myaccount file=/home/oracle/db_databackup/myaccount_20151213.dmp log=/home/oracle/db_databackup/myaccount_20151213exp.log

2.3.关闭所有oracle服务进程

$ emctl stop dbconsole // 停止OEM

$ isqlplusctl stop // 停止isqlplus

$ lsnrctl stop // 停止监听

$ sqlplus "/ as sysdba"

SQL> shutdown immediate // 停止数据库实例

2.4oracle系统备份

复制oracle安装的目录和数据库到其他目录,已备升级失败后恢复使用

cp -dpR /DBsoft /orabak

3.安装升级补丁包(升级到10.2.0.5)

3.1--==静默方式==----

3.1.1修改/home/oracle/oraclepatch/Disk1/response/patchset.rsp文件

按情况修改如下变量:

UNIX_GROUP_NAME="oinstall"

ORACLE_HOME="/DBSoft/app/oracle/product/10.2.0/db_1"

ORACLE_HOME_NAME="OraDb10g_home1"

RESTART_SYSTEM=false //升级完后不重新启动

DECLINE_SECURITY_UPDATES=true //免去升级过程输入用户信息

3.1.2升级oracle系统软件

cd /home/oracle/oraclepatch/Disk1

$./runInstaller -silent -responseFile /home/oracle/oraclepatch/Disk1/response/patchset.rsp

以root用户执行root.sh

#/DBSoft/app/oracle/product/10.2.0/db_1/root.sh

3.1.3数据库升级

sqlplus / as sysdba

SQL>startup upgrade

SQL>spool patch.log

SQL>@$ORACLE_HOME/rdbms/admin/catupgrd.sql //数据库升级

SQL>spool off

SQL>shutdown immediate

SQL>startup

SQL>@$ORACLE_HOME/rdbms/admin/utlrp.sql //检查升级状态

3.1.4自启动修改

本人系统升级前已经是自启动,如果你的不是还得参考其他自启动文档

$cd $ORACLE_HOME/bin

$vi dbstart

将ORACLE_HOME_LISTNER=$1 改为

ORACLE_HOME_LISTNER=$ORACLE_HOME

3.2--==图形方式==----

3.2.1vnc-view进行图形界面安装

具体见vnc配置,进去后

3.2.2 设定字符集

$export LANG="en_AU.UTF-8"

$cd /home/oracle/oraclepatch/Disk1

$./runInstaller,按照提示进行安装:

以下什么都不要填,选NEXT

以root用户执行root.sh

#/DBSoft/app/oracle/product/10.2.0/db_1/root.sh

3.2.3升级数据库 执行dbua

4.安装升级补丁(升级到10.2.0.5.9)

4.1.升级打补丁工具(p6880880_102000_LINUX.zip)

$mv /DBSoft/app/oracle/product/10.2.0/db_1/OPatch /DBSoft/app/oracle/product/10.2.0/db_1/OPatch_old

$mv /home/oracle/oraclepatch/OPatch /DBSoft/app/oracle/product/10.2.0/db_1/OPatch

升级完毕

4.2.判断当前环境是否符合补丁需求

$cd /home/oracle/oraclepatch/

$/DBSoft/app/oracle/product/10.2.0/db_1/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir ./14275629

4.3.打补丁

$cd /home/oracle/oraclepatch/14275629

$/DBSoft/app/oracle/product/10.2.0/db_1/OPatch/opatch apply

4.4. 运行更改 SQL 文件

cd $ORACLE_HOME/rdbms/admin

$ sqlplus /nolog

SQL> CONNECT / AS SYSDBA

SQL> STARTUP

SQL> @catbundle.sql psu apply

SQL> @utlrp.sql

SQL> select * from v$version;

SQL> select comp_name,version,status from dba_registry;

4.5.检查ORACLE所打补丁版本

/DBSoft/app/oracle/product/10.2.0/db_1/OPatch/opatch lsinventory
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: