PSR
はい、今回試験環境と本番環境でOracleDBのバージョンが異なるため
Oracleのマイナーバージョンアップをすることとなりました。
Linux X86アーキテクト OracleDB をバージョン10.2.0.1.0から10.2.0.3.0に上げます。
なんか、アプリの不具合が出てて上記バージョンの違いのせいじゃないか試験
環境で検証したいんですって。
その手順を以下に示します。
Oracle internet Support Center(通称OiSC)にてOracleDB 10.2.0.3.0の
パッチファイルを入手します。
#ちなみにOiSCはサポート登録必要です。
#ちなみにこのパッチは累積パッチです。
パッチをインストールする前にバックアップを取りましょうね。
そしたらOracleプロセスとそれを掴むもの全てサービスを停止します。以下例。
$ emctl stop dbconsole
$ isqlplusctl stop
$dbshut
$lsnrctl stop
次にDBを停止します。
$sqlplus "/as sysdba"
SQL >shutdown (immediate)
さて、インストーラを起動します。のでXアプリケーションを用いる準備をしてください。
$xhost +
次にパッチを展開したファイルに移動してインストーラを上げます。
$ cd patchset_directory/Disk1
$ ./runInstaller
インストーラにてインストール名とORACLE_HOMEを入力。
#すでに入力されている。
インストールのための環境チェックをパスしてインストールする。
完了し、$ORACLE_HOME/root.shの実行を促される場合に実行する。
インストーラを閉じてリスナーを起動する。
$lsnrctl start
Oracle Database Upgrade Assistant(以下DBUA)を起動する。
$dbua
DBUA内、アップグレードするDBを選択し、無効なオブジェクトの再コンパイルオプション
を選択する。
アップグレードを開始する。
DBUAを終了する。
次にDB自体をアップグレードする。
DBを起動して以降の出力をpatch.logに吐き出させながらDBアップグレードクエリ
を流し込む。
それからDB再起動。
$sqlplus "/as sysdba"
SQL> STARTUP UPGRADE
SQL> SPOOL patch.log
SQL> @?/rdbms/admin/catupgrd.sql
SQL> SPOOL OFF
SQL> shutdown (immediate)
SQL> startup
次にINVALIDステータスとなっている PL/SQL パッケージを再コンパイルする。
最後にパッチで作成されたディレクトリ、ファイルのアクセス権限を適正に直す。
$ cd $ORACLE_HOME/install
$./changePerm.sh
以上で終わりです。私の環境では所要時間2時間ちょいかかりました。
長かった。