UJP - 技術情報

Life is fun and easy!

不正IP報告数

Okan Sensor
 
メイン
ログイン
ブログ カテゴリ一覧

     

Oracle8i 8.1.7へ8.1.7.3.0のパッチを適用する 〜for W2K〜

Oracle8i 8.1.7へ8.1.7.3.0のパッチを適用する

〜for W2K〜


0.改訂履歴

  • 2002.08.11 新規作成
  • 2003.04.03 途中まで作ったまま放置してたので完成させてみたが後半はかなり忘れてるので正確じゃないと思う.

1.はじめに

 このドキュメントでは,Windows2000上で稼働するOracle8i 8.1.7へ,8.1.7.3.0のパッチを適用する手順を説明する.

2.事前作業

  • パッチ適用を行う前に,次の作業を行っておく.
    • administratorユーザでログオン.
    • パッチの入手.
    • 対象となるOracleのシャットダウン
      • なお,この手順では作業中にサービスを停止している.

3.手順

  • 入手したパッチのファイルを確認する.
  • 約100MBである.
  • ZIPファイルを展開する.
  • すると,次のようなファイルができる.
  • setup.exeを実行する.

  • 先ほど展開したディレクトリにあるjarファイルを指定する.

  • ファイルを確認する.
  • Oracleを停止していない場合,このようなダイアログが表示される.
  • このダイアログはおいといて,サービスマネージャを開く.
  • 停止する.
  • 停止が確認できたら,先ほどのダイアログに戻る.

  • 再試行する.

  • 無視する.
    • ODBCドライバ関連のファイルらしい.

  • ひたすら,待つ.

  • 終了.

  • 接続して確認してみる.

  • v$versionビューを確認するとバージョンが8.1.7.3.0になっている事が確認できた.

4.システムトリガーの無効化

  • パッチを当てる時にトリガが動かないようにするため?,init.oraファイルを編集してシステムトリガーを無効にする.

  • 編集した後は,Oracleの再起動を行う.

  • サービスの再起動でよい.

5.システムカタログの更新など

  • SQL*Plusを起動して,select文を流す.
Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.

C:\>sqlplus internal/oracle@testdb

SQL*Plus: Release 8.1.7.0.0 - Production on 火 May 21 11:27:48 2002

(c) Copyright 2000 Oracle Corporation.  All rights reserved.

Oracle8i Release 8.1.7.3.0 - Production
JServer Release 8.1.7.3.0 - Production
に接続されました。
SQL> select * from duc$
  2    where PACK='JIS$INTERCEPTOR$';

レコードが選択されませんでした。

SQL>
  • 何か選択された場合は次に示すSQL文を実行して選択された行を削除する.
delete from duc$ where PACK='JIS$INTERCEPTOR$' ;
commit;
  • Event 10520を設定する
    • これの意味は不明.
SQL> alter session set events
  2    '10520 TRACE NAME CONTEXT FOREVER,LEVEL 10';

セッションが変更されました。

SQL>
  • カタログの更新を行う.
SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql
SQL>
  • Oracle Replication利用している場合は,次のSQL文も実行する.
SQL> @?/rdbms/admin/catrep.sql

  • Event 10520を無効化したりする.
SQL> CONNECT / AS SYSDBA;   
SQL> update obj$ set status=5 where type#=29 and owner#!=0;
SQL> commit; 
SQL> ALTER SESSION SET EVENTS '10520 TRACE NAME CONTEXT OFF';
  • Javaを利用している場合は,次のSQL文を実行する.
SQL> insert into duc$
  2  ( OWNER,PACK,PROC,FIELD1,OPERATION#,SEQ)
  3  VALUES
  4  ('SYS','JIS$INTERCEPTER$','USER_DROPPED',0,1,1)
  5  ;

1行が作成されました。

SQL> commit;

コミットが完了しました。

SQL>
  • PL/SQLパッケージのリコンパイルを行う.
SQL> @?/rdbms/admin/utlrp.sql

PL/SQLプロシージャが正常に完了しました。

SQL>
  • InterMedia Text使用している場合は、別のスクリプトを実行する。
SQL> @?/rdbms/admin/utlrp.sql
  • システムトリガの有効かを行う.



広告スペース
Google