言語
ホーム
論壇
ログイン
重要
サイトを収蔵
ドキュメントセンター
ダウンロードセンター
BLOG
输入您的搜索字词
提交搜索表单
Web
www.mmug.cn
ホーム
論壇のホーム
登録
ログイン
近日の新記事
近日の新回事
ランク
ホットメッセージ
ロケーション׃
论坛首页
数据库经验交流
帖子浏览
新規投稿
投票への参加
论坛跳转...
ColdFusion基础编程经验
ColdFusion高级编程经验
ColdFusion.Udfs.Cfcs.Tags
CF+Flash编程经验交流
Flex编程经验交流
Adobe其他技术园地
数据库经验交流
会员闲谈场所
站务公布
工作机会
概観者の数:743
前のトピックを表示
次のトピックを表示
トピック:【分享】oracle 9i升级到oracle9208数据库
天机
ログイン:373
積分:10780
新の記事:367
返の記事:196
投票:0
頂:6
重要:24
特殊な奨励:0
登録日:2005-11-25
楼主
返信
E-メール
本站内标注为[原创]的作品若要转载请首先和管理员取得联系,获得授权后方可转载。
背景:在windows2003server上安装了Oracle9.2.0.1.0,现打算将其升级到9.2.0.8版本,并打上最新的安全补丁April2008版。
1.升级oracle(administrator用户权限)
(1)到metalink下载升级压缩包,patch号为4547809,压缩包名称为 p4547809_92080_WINNT.zip,for windows 32bit。
(2)解压缩zip,下边包含一个Disk1和readme.html文件。安装升级补丁之前,在管理中停掉所有的oracle相关服务,在命令提示符中lsnrctl stop,停掉监听器。
(3)在双击Disk下的setup.exe前,确保环境变量中有ORACLE_HOME变量,并已正确设置。否则会出现错误(错误忘了)。
(4)双击setup.exe,自动升级到9.2.0.8,命令提示符提示安装完成后,说明组件已经安装上。
(5)4步并没有update组件,所以还需要update.此时需要开启Oracle的服务,最好是重起电脑,Oracle默认服务会自启动。
(6)以sysdba身份登录数据库后,SQL>startup 安装oracle有有jvm和xdb的用户确保init.ora中的参数SHARED_POOL_SIZE 和JAVA_POOL_SIZE 为150m。方法是查看现有两个参数大小
SQL>SHOW PARAMETER SHARED_POOL_SIZE
SQL>SHOW PARAMETER JAVA_POOL_SIZE
如果大小不是150m,进行设置:
SQL> ALTER SYSTEM SET SHARED_POOL_SIZE='150M' SCOPE=spfile;
SQL> ALTER SYSTEM SET JAVA_POOL_SIZE='150M' SCOPE=spfile;
设置成功后shutdown immediate关闭数据库。
(7)以sysdba登录数据库
执行 SQL> STARTUP MIGRATE
SQL> SPOOL patch.log
SQL> @ORACLE_BASE\ORACLE_HOME\rdbms\admin\catpatch.sql
SQL> SPOOL OFF
spool patch.log是把做升级日志到patch.log,供以后察看。
其中ORACLE_BASE\ORACLE_HOME表示你的oracle目录,假设oracle安装目录为c:\oracle\ora92,则第三句应为:
SQL>@c:\oracle\ora92\rrdbms\admin\catpatch.sql 其中@表示执行以下脚本。
这个过程持续大概20分钟。
(8)完成后shutdown数据库,然后startup,执行另外一个脚本
SQL> @ORACLE_BASE\ORACLE_HOME\rdbms\admin\utlrp.sql,完成后升级补丁打完!!
(8)重起数据库,登陆后select * from v$version;可以看到oracle升到了9208。
2.oracle打安全补丁
(1)补丁信息:Critical Patch Update Note Release 9.2.0.8 for Microsoft Windows (32-Bit),patch号为6867138。
(2)CPU是过渡性补丁,需要用Oracle的安装工具opatch安装。
安装CPU之前,查看相应的opatch版本应为1.0.0.0.57,9.2.0.1版oracle自带版本为55的,到metalink下载57版本的,压缩包名为p2617419_10102_GENERIC。解压缩后将OPATCH目录覆盖%oracle_home%\opatch就行了。
(3)在用OPATCH安装安全补丁之前,停掉所有的oracle服务,但是实践中发现,进程中仍会有相关的dll被未知(我未知)的程序占用,导致couldn't copy一些.dll文件。因此建议重启服务器,进入安全模式进行。
(4)在安全模式下,在命令提示符中直接Opatch apply %补丁所在位置%,比如在我的电脑中补丁在 D:\software\oracle9\p6867138_92080_WINNT\6867138中,则我在命令提示符中输入 Opatch apply D:\software\oracle9\p6867138_92080_WINNT\6867138,自动安装安全补丁。
(5)安装完成后,补丁还不算打成功,都快哭了~~~~。咬牙,接着来
跑remove_demo.js脚本来移除不稳定的Oracle HTTP Server demos.命令提示符中cd到6867138目录。
>cscript. //nologo remove_demo.js
(6)把修改过的 .sql文件导入数据库:
启动oracle服务,cd %ORACLE_HOME%\cpu\CPUApr2008 然后以sysdba登录后执行SQL>@catcpu.sql
如果在这个过程中报有invalid的对象,则需要执行(7),否则直接执行(8).
(7)cd %ORACLE_HOME%\rdbms\admin后以sysdba登录,执行@utlrp.sql,之后你可以用
SQL> SELECT OBJECT_NAME FROM DBA_OBJECTS WHERE STATUS= 'INVALID';检查,可以看到已没有invalid对象。
(8)重新编译数据库中的视图
cd %ORACLE_HOME%\cpu\view_recompile然后sysdba登录,执行SQL> @recompile_precheck_jan2008cpu.sql 这个是计算下需要执行的时间等。
shutdown数据库,以migrate方式startup,SQL>startup migrate 然后SQL> @view_recompile_jan2008cpu.sql 关闭数据库。如果有invalid对象,手动compile,但是一般没有。
总结:oracle不同的补丁还有不同的打法,实在是很不智能,所以之前要仔细的阅读readme,是个很郁闷的活!而且安装完了不是真正的安装完!!崩溃了吧~~~上边的操作是新建数据库之后就直接进行的,因此也没有考虑到数据库备份等工作。如果你已经在使用数据库做了一些工作,建议先备份数据库,以免补丁没有打上,影响数据库的使用。
[由于本人签名过于华丽,被斑竹屏蔽了,正在协商中]
投稿の時間:2009-07-10 14:00:02
No:
1
-
1
Total:
1
会社紹介
地図
自分のE-メール
メッセージを返上
登録の::31
©2004-2006 Mmug, Inc. All rights reserved. Use of this website signifies your agreement to the Terms of Use.
京ICP备05049696号