前提
- Oracle Database(以下、Oracle DB) については OTN ライセンス使用
- Red Hat Enterprise Linux 7.3 について
- OSインストール時のシステム構成: サーバー(GUI 使用)
- Oracle DB インストール用の zip ファイルが手元にあること
- Oracle DB 自体のインストールはローカルのデスクトップ環境で GUI を使用して行う
パッケージインストール
■事前にインストールが必要なパッケージ
- bc
- binutils
- compat-libcap1
- compat-libstdc++-33
- glibc
- glibc-devel
- ksh
- libaio
- libaio-devel
- libX11
- libXau
- libXi
- libXtst
- libXrender-devel
- libXrender
- libgcc
- libstdc++
- libstdc++-devel
- libxcb
- make
- smartmontools
- sysstat
- nfs-utils ※Oracle ACFSの場合
- net-tools ※Oracle RACおよびOracle Clusterwareの場合
- python ※Oracle ACFS Remoteの場合
- python-configshell ※Oracle ACFS Remoteの場合
- python-rtslib ※Oracle ACFS Remoteの場合
- python-six ※Oracle ACFS Remoteの場合
- targetcli ※Oracle ACFS Remoteの場合
- unzip ※Orcle DB の zip ファイル解凍で使用
■ Oracle DB インストール中の環境チェックで引っかかったパッケージ
- gcc-c++
compat-libstdc++-33 パッケージについて

RHEL 7 では以下のコマンドでリポジトリを追加する必要がある。
subscription-manager repos --enable=rhel-7-server-optional-rpms
まとめて yum でインストール用コマンド
※ 上のリストの「22.sysstat」までとgcc-c++をインストールする場合
yum install -y bc binutils compat-libcap1 compat-libstdc++-33 glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender-devel libXrender libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat gcc-c++
グループ作成
■ Oracle ユーザー環境構成のチェックリスト
■ Oracle Inventory グループの作成
グループ作成コマンド
groupadd -g 54321 oinstall
■ オペレーティング・システム権限のグループの作成
グループ作成コマンド
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
groupadd -g 54330 racdba
ユーザ設定
■ユーザに関するチェックリスト
ユーザの作成
■ Oracle ソフトウェア所有者ユーザの作成
ユーザ作成コマンド
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba,oper oracle
※ 公式ドキュメントに記載のコマンドから oper グループへの所属設定を追加
oracle ユーザのパスワード設定
passwd oracle
※ 例としてパスワードを oracle とした
ユーザーのリソース制限の確認と設定
以下の公式ドキュメントに従い各制限が指定範囲内になっているかを確認する。
※ 確認は oracle ユーザで行い、設定ファイル limits.conf の編集は root ユーザで行う
確認コマンド
ulimit -Sn
ulimit -Hn
ulimit -Su
ulimit -Hu
ulimit -Ss
ulimit -Hs
ulimit -Sl
ulimit -Hl
/etc/security/limits.conf 設定例(末尾に追記)
#(略)
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2048
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle soft memlock 3145728
oracle hard memlock 3145728
# End of file
※ limits.conf の設定変更は oracle ユーザに再ログインすると反映される
カーネルパラメータの設定
■インストールのための最小パラメータ設定
■カーネルパラメータの確認
sysctl -a | grep "パラメータ名"
■ページサイズの確認
getconf PAGE_SIZE
■メモリサイズの確認
grep MemTotal /proc/meminfo
■ページ数の計算
("メモリサイズ[kB]" * 1024) / "ページサイズ[B]"
最小パラメータより小さいものがあった場合は root ユーザで /etc/sysctl.conf に追記して上書きする。例として以下を追記(最小パラメータ)。
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 308306 #物理メモリー・サイズ(ページ数)の40%以上
kernel.shmmax = 1578526720 #物理メモリー・サイズ(バイト)の50%以上
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
設定変更を反映させるためにはシステム再起動するか sysctl -p コマンドを実行する。
ディレクトリ作成
Oracle DB で使用するディレクトリを作成する。
※ 以下は root ユーザで実行
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01/app/oracle
chown -R oracle:oinstall /u01/app/oraInventory
chmod -R 775 /u01/app
※ 以下は oracle ユーザで実行
mkdir -p /u01/app/oracle/product/18.0.0/dbhome_1
Oracle DB インストール
以下 oracle ユーザで作業する。/tmp 配下に Oracle DB ファイルを格納している前提。
※ 以下で使用するOracle DB ファイル: LINUX.X64_180000_db_home.zip
作業ディレクトリに移動し Oracle DB ファイルを解凍する。
cd /u01/app/oracle/product/18.0.0/dbhome_1
unzip -q /tmp/LINUX.X64_180000_db_home.zip
/u01/app/oracle/product/18.0.0/dbhome_1 ディレクトリで以下コマンドを実行。
./runInstaller
GUI が表示されるため以降は GUI で対話的に進めていきます。
最初の構成オプションでは、ソフトウェアのインストールのみ実施することとして [ソフトウェアのみの設定] を選択し [次へ]をクリックします。
以下の画面では、サーバ冗長化は行わないため [単一インスタンス・データベースのインストール] を選択し [次へ] をクリックします。
以下の画面では、今回は [Enterprise Edition] を選択し [次へ] をクリックします。
以下画面では Oracle ベースパスを指定しますが、デフォルトで画像の値になっているため内容確認して [次へ] をクリックします。
以下画面ではインベントリ・ディレクトリとインベントリへの書込みグループを指定しますが、デフォルトで画像の値になっているため内容確認して [次へ] をクリックします。
以下画面では各種グループを指定しますが、あらかじめ作成しておいたグループがデフォルトで設定されているため内容確認して [次へ] をクリックします。
サーバ環境のチェックが実施されます。チェックが終わるのを待ちます。
以下画面では物理メモリ容量の不足が検出されていますが、無視することにして先に進みます。この場合は、画面右上の [すべて無視] にチェックを入れると先に進めます。チェックを入れたら [次へ] をクリックします。
インストール内容のサマリが表示されるため、内容を確認し [インストール] をクリックします。
インストールが開始されます。処理が進むのを待ちます。
インストールが進むと以下の画面が表示されます。画面の指示に従い、表示されているスクリプトのパスをコピーして CLI 上で root ユーザとして実行します。
root ユーザでスクリプトを実行します。
# /u01/app/oraInventory/orainstRoot.sh
権限を変更中 /u01/app/oraInventory.
グループの読取り/書込み権限を追加中。
全ユーザーの読取り/書込み/実行権限を削除中。
グループ名の変更 /u01/app/oraInventory 宛先 oinstall.
スクリプトの実行が完了しました。
# /u01/app/oracle/product/18.0.0/dbhome_1/root.sh
Performing root user operation.
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/18.0.0/dbhome_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Do you want to setup Oracle Trace File Analyzer (TFA) now ? yes|[no] :
Oracle Trace File Analyzer (TFA - Non Daemon Mode) is available at :
/u01/app/oracle/product/18.0.0/dbhome_1/suptools/tfa/release/tfa_home/bin/tfactl
Note :
1. tfactl will use TFA Daemon Mode if TFA already running in Daemon Mode and user has access to TFA
2. tfactl will configure TFA Non Daemon Mode only if user has no access to TFA Daemon mode or TFA Daemon mode is not installed
OR
Oracle Trace File Analyzer (TFA - Daemon Mode) can be installed by running this script :
/u01/app/oracle/product/18.0.0/dbhome_1/suptools/tfa/release/tfa_home/install/roottfa.sh
スクリプト実行後、GUI に戻って [OK] をクリックします。
以下の画面が表示され、インストールが完了となります。[閉じる] をクリックして終了します。
インストール後、oracle ユーザの ~/.bash_profile に以下の内容を追記しておくと良い。oracle ユーザにログイン後に sqlplus や lsnrctl コマンドがすぐ使えるようになります。
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=${ORACLE_BASE}/product/18.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/jdk/bin:${PATH}
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG=JAPANESE_JAPAN.UTF8
~/.bash_profile は su “ユーザ名” でのユーザ切替時には自動で読み込まれない点に注意。
Oracle DB インストール後の作業
参考ページ




―――――――――――――