[OracleDatabase19c]OracleDB構築①インストール編(OracleLinux8)

oracle

今回はOracleLinux8でOracleDBをインストールする方法をご説明します。

以前は手動でユーザ作成やグループ作成を行っていたのですが、現在のOracle Linuxは「Oracle Preinstallation RPM」を使用した設定が推奨となります。「Oracle Preinstallation RPM」を使用すると、必要なパッケージのインストールやカーネル・バラメータの設定、ユーザー作成など関連するOSの設定を自動的に実施してくれます。

「Oracle Preinstallation RPM」が行う自動設定
・Oracle Grid Infrastructure及びOracle Databaseのインストールに必要な追加のRPMパッケージの自動ダウンロード/インストール
・oracleユーザの作成、そのユーザのoraInventory(oinstall)およびOSDBA(dba)グループの作成
・必要に応じて、sysctl.confの設定、システム起動パラメータおよびドライバ・パラメータの値が、Oracle Database Preinstallation RPMプログラムの推奨値に基づいて設定
・ハードリソース制限およびソフトリソース制限を設定
・カーネル・バージョンに応じて、他の推奨パラメータを設定
・Linux x86_64マシンのカーネルでnuma=offを設定
※参考リンク(オラクル公式ドキュメント)

Oracle Preinstallation RPM インストール

Oracle Preinstallation RPM インストール

それではまず「Oracle Preinstallation RPM」をインストールします。以下のコマンドをrootユーザで(またはsudoで)実行します。

# dnf install oracle-database-preinstall-19c -y

oracleユーザの確認とパスワード変更

oracleユーザが作成されているか確認します。

id oracle

oracleユーザのパスワードを変更します。

passwd oracle

インストール用のディレクトリを作成

インストールに必要なディレクトリを作成していきます。一応任意のディレクトリでも可能なのですが、ここではガイドラインに沿って同じ構成で作成します。※Oracle公式PDF

mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/
chmod -R 775 /u01/app

Oracle Database インストール

Oracle Database ダウンロード

Oracle Database 19cのRPMパッケージを公式サイトからダウンロードします。今回は19.3をインストールします。※なおダウンロードするにはオラクルアカウントが必要です。

オラクル・データベース・ソフトウェアのダウンロード | オラクル | Oracle 日本
Windows、LinuxのOracle Solaris、IBM AIX、HP-UXおよび多くのための最新のデータベース・ソフトウェアである19c、またはすべての以前のバージョン18c、12cおよび11gをダウンロードしてください。

Oracle Database インストーラ配置

先ほどダウンロードしたzipを配置するディレクトリを作成します。(ここでは/home/oracle/tmpに配置します)※ここからはoracleユーザで実施します。

$ mkdir /home/oracle/tmp

次に前項でダウンロードしたzipを/home/oracle/tmpへ格納します。方法は色々あると思いますが(ftp/scpなど…)ここでは割愛します。

所有者はoracle/所有グループはoinstallとなるようにしてください。

zip解凍

配置したzipを解凍します。以下コマンドを実行します。

$ cd /home/oracle/tmp
$ unzip LINUX.X64_193000_db_home.zip -d /u01/app/oracle/product/19.3.0/dbhome_1

※↑たくさん出力されます。

Oracle Database インストーラ起動

ORACLE_HOME上にあるインストーラーのOUI(Oracle Universal Installer)を起動します。まずOUIの画面表示を日本語に設定したいので以下を実行します。

$ export LANG=ja_JP.utf8

INS-08101エラー対応のため以下を実行します。

$ number=`cat /etc/os-release | grep VERSION_ID | awk -F"\"" '{print $2}'`
$ export CV_ASSUME_DISTID=OEL${number}

Oracleホームディレクトリへ移動し以下コマンドを実行しインストーラを起動します。

$ cd /u01/app/oracle/product/19.3.0/dbhome_1
$ ./runInstaller

なお、以下のように文字化け(豆腐問題)やINS-08101エラーが発生する場合は下記のリンクを参照してください。

[OracleDatabase19c]OUIエラー対応(OracleLinux8)
OracleLinux8でOracleDBをインストールする際、OUIでエラーが発生しましたので備忘として記載いたします。※本稿はOracle Linux8、Oracle Database19.3(ファイル名:LINUX.X64_19300...

インストーラが起動しました。

Oracle Database インストール

構成オプションを選択(1/11)
「ソフトウェアのみの設定」にチェックを入れます。

データベース・インストール・オプションの選択(2/11)
「単一インスタンス・データベースのインストール」にチェックを入れます。

データベース・エディションの選択(3/11)
「Enterprise・Edition」を選択する。

インストール場所の指定(4/11)
Oracleベースが「/u01/app/oracle」となっていることを確認する。

インベントリの作成(5/11)
インベントリ・ディレクトリが「/u01/app/oraInventory」となっていること、グループ名が「oinstall」となっていることを確認する。

権限のあるオペレーティング・システム・グループ(6/11)
デフォルトのまま次へを押下する。

rootスクリプトの実行構成(7/11)
OracleDBのインストール作業の中でrootユーザーとして実行する作業があります。手動で実行するか、インストーラにより自動的に実行されるように選択できます。
ここではrootユーザとして実行するため、「構成スクリプトを自動的に実行」→「rootユーザーの資格証明を使用」を選択し、rootユーザのパスワードを入力し次へを押下します。

前提チェックの実行(8/11)
前提チェックの結果を確認します。「詳細」を押すことで内容を確認できます。
※ここでは「すべて無視」にチェックを入れて次に進みます。

ちなみに「すべて無視」にチェックを入れると以下が表示されます。

サマリー(9/11)
インストールする内容を確認し、問題なければ「インストール」を押下する。

製品のインストール(10/11)
インストールが開始される。

rootユーザーの資格証明を使用してスクリプトを実行するを選択した場合は、以下が表示されますので「はい」を押下します。

終了(11/11)
インストールが完了しました。「閉じる」を押下します。

環境変数の設定

.bash_profileに記載

Oracle Databaseのインストール・ユーザー(oracle)の環境変数を.bash_profile に設定します。なお設定後、再度ログインすることで環境変数が反映されます。
viエディタで設定します。

$ vi ~/.bash_profile

以下を追記します。

umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATH
export LANG=ja_JP.UTF-8
export NLS_LANG=Japanese_Japan.AL32UTF8

追記前


追記後

viエディタで追記後保存して終了してください。(:wq!)
catコマンド等で追記できたか確認してください。

環境変数設定確認

一度ログアウトし、再度oracleユーザでログインします。
その後以下コマンドを実行し.bash_profileが正しく読み込まれているか確認します。

$ echo $ORACLE_HOME

「/u01/app/oracle/product/19.3.0/dbhome_1」と表示されていれば、正しく読み込まれていることが確認できます。

長くなりましたが、今回はここまでです。次回はDBCAを使用してデータベースを実際に作成していきます。ここまでお読みいただきありがとうございました。それでは。

コメント