目次
(4)インストーラの進行
(4-1)セキュリティUpdate構成
(4-2)インストールオプション選択
(4-3)Gridインストールオプション
(4-4)製品言語の選択
(4-5)データベースEditionの選択
(4-6)インストール場所の指定
(4-7)インベントリの作成
(4-8)権限のあるOSグループ
(4-9)前提条件チェックの実行
(4-10)サマリー
(4-11)インストールの進捗状況
(4-12)エラー対応
(4-13)構成スクリプトの実行
(4-14)インストール完了
概要
掲題の通り、LinuxにOracleDB(11g)をインストールする方法について書きます。
「(その1)」の続編記事です。
https://rainbow-engine.com/2017/04/24/linux_oracledb/
(4-1)セキュリティUpdate構成
My Oracle Supportからセキュリティ通知を受け取るか否かの設定です。
①受け取りたい:E-mailアドレス、MOSのパスワードを入力
②受け取りたくない:入力せずに進む
今回は②で進めます。
警告が出ますが、”Yes”を押下し続行。
>目次に戻る
(4-2)インストールオプション選択
選択肢は以下。今回は②で進行させ、DB作成は別途実施(その3)します。
①データベースの作成および構成
>Oracleソフトウェア+DB作成
②データベース・ソフトウェアのみインストール
>Oracleソフトウェアのみ
③既存のデータベースをアップグレード
>目次に戻る
(4-3)Gridインストールオプション
選択肢は以下。今回は①で進行させる。
①単一インスタンス・データベースのインストール
②Oracle Real Application Clusters(*注)データベースのインストール
(*注)通常DB1つに対してInstanceが1つ対応しますが、RAC DBでは複数Instanceで1つのDBファイルを共有することができます。
>目次に戻る
(4-4)製品言語の選択
日本語と英語を選択し進行する。
>目次に戻る
(4-5)データベースEditionの選択
選択肢は以下。今回は②で進行させます。
①Enterprise Edition
>パラレルクエリに対応している、オンラインでINDEX再構成/表再構成ができる
②Standard Edition
>パラレルクエリ不可、オフラインでINDEX再構成/表再構成ができる
③Standard Edition One
>目次に戻る
(4-6)インストール場所の指定
OracleベースとOracle DBソフトウェアのインストール場所のパスを指定します。デフォルトはそれぞれORACLE_BASE、ORACLE_HOMEの値をデフォルト表示します。
ORACLE_BASEはOracleディレクトリ構造のトップディレクトリです。
ORACLE_HOMEはOracleのソフトウェアをインストールするディレクトリです。BASE配下が推奨されています。
今回はデフォルト値で進行します。
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
>目次に戻る
(4-7)インベントリの作成
インベントリディレクトリとは、いままでインストールしたOracle製品の記録が保存される場所です。
例えば、インストール時の情報や製品情報等が記録されます。コンピュータに初めてOracle製品をインストールする際に作成され、今後導入する全てのOrace製品でも同じディレクトリが利用されます。今回は本サーバでの初めてのOracle製品導入であるため、設定画面が表示されますが、2回目以降は表示されません。
今回は下記設定で進行します。
Inventory Directory = /u01/app/oraInventory
oraInventoryに対し、書き込み権限を有するグループ:oinstall
>目次に戻る
(4-8)権限のあるOSグループ
OracleDBにはOS認証と呼ばれる仕組みがあり、DBのユーザ名/パスワードを利用する代わりに、OSユーザを利用してDBに対する認証を行うことができます。その認証を利用できるのが、OSDBA・OSOPERグループに加入しているOSユーザになります。
ここではOSDBA・OSOPERのグループを設定しており、今回は”dba”、”oinstall”とします。
>目次に戻る
(4-9)前提条件チェックの実行
インストール時の前提条件チェックが走ります(①)。要件を満たさない場合は「修正スクリプト」の実行依頼が表示されます(②)。修正スクリプトを実行(③)すると、システムパラメータの一部がOracle推奨値に設定されOS構成が完了します。
①
②
③
④
再度チェックを実行しても、まだパッケージの”Failed”が残っています。
CentOS 6の場合、このようにパッケージのチェックでFailする事がありますが、これらは実際にインストールされているバージョンが推奨要件よりも上のバージョンである事により発生しており、”Ignore”(無視)しても問題なく、”Ignore all”にチェックを入れて進めます。
⑤
>目次に戻る
(4-10)サマリー
今まで選択した項目のまとめが表示されます。”Finish”を押下するとインストールが開始されます。
>目次に戻る
(4-11)インストールの進捗状況
インストールの進捗が表示されます。今回は②のエラーに遭遇しました。
Error in invoking target 'install' of makefile. '/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk'.See '/u01/app/oraInventory/logs/installActionsYYYY-MM-DD-XX-XX-XXPM.log' for dtails.
①
②
>目次に戻る
(4-12)エラー対応
主に下記対応をしました。正直、この辺はググってやったものの、あまり理解できていません。有識者に補足いただけると嬉しいです。
①ログファイルの確認
GLIBCPP_3.2というキーワードから”libstdc++”のインストールを検討・実施。
yum provides libstdc++.so.5
②libstdc++インストール
yum install compat-libstdc++-33-3.2.3-69.el6.i686
③”ins_emagent.mk”修正
vi $ORACLE_HOME/sysman/lib/ins_emagent.mk
の下記文言を修正(ORACLE_HOMEは各自設定したディレクトリ)。
/*修正前*/ $(MK_EMAGENT_NMECTL) /*修正後*/ $(MK_EMAGENT_NMECTL) -lnnz11
①
②
③
④”cus_ctx.mk”修正
vi $ORACLE_HOME/ctx/lib/ins_ctx.mk
の下記文言を修正(ORACLE_HOMEは各自設定したディレクトリ)
/*修正前*/ ctxhx: $(CTXHXOBJ) $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /*修正後*/ ctxhx: $(CTXHXOBJ) -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)
①
②修正前
③修正後
>目次に戻る
(4-13)構成スクリプトの実行
ソフトウェアインストール後、以下のスクリプトの実行をする必要があります。
root.sh
orainstRoot.sh
②root.sh
cd /u01/app/oracle/product/11.2.0/dbhome_1/ ./root.sh
③orainstRoot.sh
cd /u01/app/oraInventory /orainstRoot.sh
(4-14)インストール完了
下記の画面でインストール完了を確認。
>目次に戻る