5. oracle rdbms bugs 修复与升级 (25 页)

26
Oracle RDBMS BUG修复与升级 赵元杰 北京群环域科技有限公司 2012.2

Upload: wasecurity

Post on 17-Jun-2015

429 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

Oracle RDBMS

BUG修复与升级

赵元杰

北京群环域科技有限公司

2012.2

Page 2: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 2

内容提要

♠ 升级必要性问题

♠ Oracle系统的版本

♠ Oracle系统支持平台

♠ Oracle的Metalink网站

♠ 有关补丁的下载方法

♠ 有关补丁的安装方法

♠ 小结

Page 3: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 3

Oracle系统升级必要性问题

♠Oracle系统版本技术支持有效期:

♠从销售、提供服务到中止服务一般5年:

Page 4: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 4

Oracle系统升级必要性问题

♠Oracle系统版本技术支持有效期:

♠从销售、提供服务到中止服务一般5年:

Page 5: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 5

Oracle系统升级必要性问题

♠Oracle系统版本BUG等:

♠如果Oracle系统存在BUG,你的应用经常触发这些错误,那你就得升级;

♠有时性能也需用升级;

♠你的服务器平台升级导致你也要升级;

Page 6: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 6

Oracle系统升级版本限制问题

♠ Oracle系统版本与升级:

♠ Oracle系统升级一般不能跨两个版本;

Page 7: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 7

Oracle系统升级版本限制问题

♠ Oracle系统版本与升级:

♠ EXP/IMP仍然是个好方法;

Page 8: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 8

Oracle系统升级版本限制问题

♠ Oracle系统版本与升级:

♠有多种升级的方法;

方法 优缺点

Oracle Database Update

Assistant(GUI) 方便简单,但是不能对过低的版本升级

手工升级 掌握许多的内部技术与脚本方法等

Full EXP & IMP 可跨平台与版本,但速度慢

用SQL*Plus 拷贝

CTAS 与脚本 表与索引可从创建,但是存储过程只能从查询

Page 9: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 9

Oracle 系统版本与平台

♠ Oracle系统的版本:

♠ 5位数字、维护版本、服务器版本号等

9.2.0.1.0

主数据库版本号

Main Database

Release Number

维护版本号

Main

Maintenance

Release

Number

应用服务版本号

Application

Server

Release

Number

平台细节版本号

Platform specific

Release Number

部件细节版本号

Component

specific

Release Number

Page 10: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 10

Oracle系统支持的平台

♠ Oracle系统支持多个平台:

♠流行的硬件提供商;

♠各种流行的OS:

Page 11: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 11

Oracle公司的Metalink网站

♠ Oracle公司提供的针对购买服务的网站:

♠可以查看产品的BUG;

♠升级的补丁;

♠安全补丁;

♠ Oracle系统问题的解答:

♠主要产品的问题解释;

Page 12: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 12

Oracle公司的Metalink网站

♠ OracleMetaLink网站:

♠ 1.登录到Metalink;

Page 13: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 13

Oracle公司的Metalink网站

♠ OracleMetaLink网站:

♠ 2.点击Login To Metalink ,进入“登录”用户画面,如图(输入完成用户意见名及口令后,点“Sign In”进入):

Page 14: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 14

Oracle补丁下载方法

♠ 在OracleMetaLink网站:

♠ 1.在Quick Find 中选择Patch number,并在后面栏目输入rdbms,再点“Go”:

Page 15: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 15

Oracle补丁下载方法

♠ 在OracleMetaLink网站: ♠ 2.点“Simple Search”进入查询选择窗口,如图:

♠ 3.在图4-3上,Product or Family 、RDBMS Server、Oracle 9.2.0.6、Patchset/Minipack及Solaris Operating System ( SPARC 64-bit ),然后点“GO”可查出需要的升级包。

♠ 4.点“3948480”,然后选择“Download”即可下载升级p3948480_9206_solaris64.zip包了。

Page 16: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 16

Oracle补丁安装方法

♠ 主要步骤1: ♠ 假设下载的包已完成;

♠ 假设ORACLE_HOME=/export/home/oracle/product/9.2.0;

♠ 将p3948480_9206_solaris64.zip拷贝到/export/home/oracle/temp目录上

♠ cd /export/home/oracle/temp

♠ 解压到/export/home/oracle/temp目录上:

♠ $ unzip p3948480_9206_solaris64.zip

♠ (解压完成后会产生两个目录 Disk1和 Translations )

Page 17: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 17

Oracle补丁安装方法

♠主要步骤2-设置环境变量:

♠要在Solaris下设置下面参数,并确保有效(Bourne, Bash, Korn shell ):

$ ORACLE_HOME=oracle_home

$ ORACLE_SID=sid

$DISLAY=192.168.3.6:0.0

$ export ORACLE_HOME ORACLE_SID DISPLAY

Page 18: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 18

Oracle补丁安装方法

♠主要步骤3-关闭Oracle与监听器:

SQL>connect /as sysdba

SQL>

SQL>shutdown immediate

SQL>exit

$

$lsnrctl stop

Page 19: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 19

Oracle补丁安装方法

♠主要步骤4-备份Oracle 系统:

SQL>connect /as sysdba

SQL>shutdown immediate

SQL>exit

--用cp拷贝/export/home/oracle/目录到 /4/目录上:

cp /export/home/oracle /4/

Page 20: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 20

Oracle补丁安装方法

♠主要步骤5-运行升级包:

♠ $cd /export/home/oracle/temp/Disk1

♠ $ ./runInstaller

( 此时会出现 Oracle 10g 的安装画面 )

Page 21: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 21

Oracle补丁安装方法

♠主要步骤6-表空间的要求:

♠ SYSTEM表空间和XDB表空间要有足够的空间

SQL>connect / as sysdba

SQL>spool /export/home/oracle/oper0930

SQL>startup

SQL> alter tablespace system add datafile '/4/oradata/system02.dbf' size 500m;

Tablespace altered.

SQL> alter tablespace xdb add datafile '/4/oradata/xdb02.dbf' size 200m;

Tablespace altered.

Page 22: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 22

Oracle补丁安装方法

♠主要步骤7-修改实例的参数: ♠ 共享池 ( S H A R E D _ P O O L _ S I Z E ) 和 J a v a 池

(JAVA_POOL_SIZE)设置至少150MB以上 :

SQL> ALTER SYSTEM SET SHARED_POOL_SIZE='150M'

SCOPE=spfile;

SQL> ALTER SYSTEM SET JAVA_POOL_SIZE='150M' SCOPE=spfile;

Page 23: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 23

Oracle补丁安装方法

♠主要步骤8-升级操作:

♠连接到Oracle 帐户上,然后进行下面的操作

$ lsnrctl start

$ sqlplus /nolog

SQL>--连接到sysdba

SQL> CONNECT / AS SYSDBA

SQL>--将升级过程所产生的提示信息记录到patch文件中:

SQL>spool /export/home/oracle/patch.log

SQL>

SQL>--用STARTUP MIGRATE命令来执行升级:

SQL> STARTUP MIGRATE

SQL> --执行catpatch.sql创建Oracle内部数据字典、包等:

SQL>--运行catpatch.sql脚本需要至少1小时

SQL> @?/rdbms/admin/catpatch.sql

Page 24: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 24

Oracle补丁安装方法

♠主要步骤9-升级操作:

♠当提示“ SQL>”后,表明升级操作完成,可关闭Oracle实例然后再启动:

SQL> SHUTDOWN

SQL>--然后再启动Oracle实例:

SQL> STARTUP

SQL>--运行utlrp.sql重编译无效PL/SQL包:

SQL> @?/rdbms/admin/utlrp.sql

PL/SQL procedure successfully completed.

Page 25: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 25

Oracle补丁安装方法

♠主要步骤10-无效对象的处理方法:

♠当使utlrp.sql脚本编译后,可能还存在个别对象还是无效,这些可能是由于新环境的缺少权限导致,建议授予相关权限再编译;再就是对源代码进行修改:

SQL>--授予xx权限给用户:

SQL>GRANT PUBLIC TO USER01;

SQL>

SQL> SELECT dbms_metada.get_ddl(‘PROCEDURE’,’PROC1’) from dual;

Page 26: 5. Oracle RDBMS BUGS 修复与升级 (25 页)

2012年2月18日 Oracle 数据库维护技巧 26

Oracle系统升级小结

♠ Oracle系统升级考虑的关键: ♠ 应用是否能停止使用;

♠ 停止使用的最多时间与升级或迁移需要的最小时间;

♠ 非停机升级或迁移的方法与技术实现;

♠ Oracle系统升级模拟与演练: ♠ 搭建类似的平台(硬件与软件);给出可性的方案;

♠ 将升级或迁移写完整的步骤与脚本;

♠ 按照预先的方案试验与记录任何问题;

♠ 对存在问题进行解决,再试验到成功并试运行应用;

♠ Oracle系统升级的时机: ♠ 必须选择各方都能认可的时间段,做好各种进退准备;

♠ 各方技术人员的协调;

♠ 确认成功并逐步放开使用,并观察与及时解决问题。