Oracle Database 11g をLinuxにインストールする手順をまとめます。
ここではCentOS 5.0にインストールしていますが、その他のディストリビューションでほぼ同様です。
Oracle Database 11gが動作するための最低限の環境設定になりますので、インストールするオプションによっては追加の設定が必要になる場合もあります。
CentOSのオフィシャルサイトよりCentOS 5.0をダウンロードしてインストールします。
物理メモリは最小で1GB?
物理メモリのサイズに応じて、swapの空き領域として必要なサイズ指定されます。
物理メモリ 必要空きSwap領域 257MB~512MB 物理メモリ x 2 513MB~2048MB 物理メモリ x 1.5 2049MB~8192MB 物理メモリ x 1 8193MB~ 物理メモリ x 0.75
※物理メモリ =
cat /proc/meminfo | grep '^MemTotal' | awk '{print $2}'※必要空きSwap領域 =
free -m | grep Swap | awk '{print $4}'
インストール時のインストールパッケージの選択では、「今すぐカスタマイズする」を選択して、パッケージの個別選択をする画面で、以下のオプションだけを選択しています。
デスクトップ環境 GNOMEデスクトップ環境 アプリケーション エディタ グラフィカルインターネット(firefoxのみ) 開発 開発ツール ベースシステム X Window System ベース 言語 日本語のサポート
SELinuxやポートフィルタについては、必要に応じて適切に設定してください。(ここでは、それは無視しています。)
前述のインストールオプションでは、パッケージが不足しています。下記のパッケージを追加でインストールしてください。
compat-libstdc++-33-3.2.3-61 elfutils-libelf-devel-0.125 libaio-devel-0.3.106 sysstat-7.0.0 unixODBC-2.2.11 unixODBC-devel-2.2.11
yum install compat-libstdc++-33 elfutils-libelf-devel libaio-devel sysstat unixODBC unixODBC-devel結局まだパッケージに不足がありgcc-c++とpkshのインストールが求められる。
oinstallグループ、dbaグループとoracleユーザーを作成し、oracleユーザーにパスワードを設定します。
groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle passwd oracle
kernelパラメータの要件は以下の通りです。
パラメータ 値 semmsl 250 semmns 32000 semopm 100 semmni 128 shmall 2097152 shmmax 物理メモリの半分か、 4GB - 1byteの小さい方 shmmni 4096 file-max 512 * PROCESSES ip_local_port_range 1024–65000 rmem_default 4194304 rmem_max 4194304 wmem_default 262144 wmem_max 262144
これにあわせてkernelパラメータを変更します。
CentOS 5.0では、
semopm file-max ip_local_port_range rmem_default rmem_max wmem_default wmem_maxが要件を満たしていません。
末尾に以下を追加します。
kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 4194304 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 262144
変更したsysctl.confを有効化(user : root)
sysctl -p
末尾に以下を追加します。
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
末尾に以下を追加します。
session required /lib/security/pam_limits.so session required pam_limits.so
末尾に以下を追加します。
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
ORACLE_BASEディレクトリは、Oracleソフトウェアのインストール先のトップレベルのディレクトリです。
ex.)
mkdir -p /opt/oracle/app chown -R oracle:oinstall /opt/oracle chmod -R 775 /opt/oracle/app
ex.)
mkdir /opt/oracle/oradata chown oracle:oinstall /opt/oracle/oradata chmod 775 /opt/oracle/oradata
~/.bash_profile ファイルの修正
末尾に以下を追加します。
umask 022 export ORACLE_BASE=/opt/oracle/app
現在のターミナルでもこの設定を有効にします。
. ~/.bash_profile
Oracle Database 11gのインストールファイル(zip形式)をOTNからダウンロードした場合は、そのファイルを解凍します。
unzip linux_11gR2_database.zip
database/runInstallerインストール方法の選択画面 適切なインストールタイプを選択してください。今回は「拡張インストール」を選択して進めます。 基本インストールの場合でも、「初期データベースの作成」のチェックははずして、インストール後にデータベースを作成することをお奨めします。 インストール方法の選択画面インベントリ・ディレクトリと資格証明の指定画面 基本的に変更する必要は無いでしょう。 インベントリ・ディレクトリと資格証明の指定画面インストールタイプの選択画面 今回は「カスタム」を選択します。 インストールタイプの選択画面インストールの場所画面 基本的に変更する必要は無いでしょう。 インストールの場所画面製品固有の前提条件のチェック画面 Oracleのインストール要件を満たしているかのチェックがされます。 ここで警告などの結果になったものは、その問題を解消してから「再試行」してください。 製品固有の前提条件のチェック画面使用可能な製品コンポーネント画面 インストールしたいコンポーネントを選択してください。 使用可能な製品コンポーネント画面今回は、以下のコンポーネントを選択しました。 □ Oracle Database 11g 11.1.0.6.0 ■ Oracle Database 11g 11.1.0.6.0 □ Enterprise Edition Options 11.1.0.6.0 ■ Oracle Partitioning 11.1.0.6.0 ■ Oracle Real Application Testing 11.1.0.6.0 □ Oracle Net Services 11.1.0.6.0 ■ Oracle Net Listener 11.1.0.6.0 ■ Oracle Call Interface (OCI) 11.1.0.6.0 ■ Oracle XML Development Kit 11.1.0.6.0権限付きオペレーティング・システム・グループ画面 基本的に変更する必要は無いでしょう。 権限付きオペレーティング・システム・グループ画面データベースの作成画面 今回は「データベース・ソフトウェアのみインストール」を選択します。 権限付きオペレーティング・システム・グループ画面サマリー画面 設定したインストールオプションを確認しましょう。 サマリー画面インストール画面 Oracle Database 11gをインストール中です。時間がかかりますが、ガマンして待ちましょう。 インストール画面
rootユーザーでのスクリプト実行を促されます。
構成スクリプトの実行画面
ターミナルを起動し、rootユーザーになって、指示されたスクリプトを実行します。
su - Password: [rootのパスワードを入力] /opt/oracle/oraInventory/orainstRoot.sh : /opt/oracle/app/product/11.2.0/dbhome_1/root.sh : Enter the full pathname of the local bin directory: [/usr/local/bin]: [Enter]を入力 :
実行後、画面の「OK」ボタンをクリックします。
インストールの終了画面 これで、Oracle Database 11gのインストールが終了です。 インストールの終了画面
cd /opt/oracle/app/product/11.2.0/dbhome_1 cp -p root.sh root.sh.bak
/.bash_profileの修正(user : oracle)†
末尾に以下を追加します。
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export PATH=$PATH:$ORACLE_HOME/bin
現在のターミナルでもこの設定を有効にします。
. ~/.bash_profile
netcaようこそ画面 「リスナー構成」を選択します。 ようこそ画面リスナー構成 - リスナー画面 「追加」を選択します。 リスナー構成 - リスナー画面リスナー構成 - リスナー名画面 リスナー名を指定します。通常はデフォルトの「LISTENER」でOKです。 リスナー構成 - リスナー名画面リスナー構成 - プロトコルの選択画面 リスナーが接続を受け付けるプロトコルを選択します。通常はデフォルトのままでOKです。 リスナー構成 - プロトコルの選択画面リスナー構成 - TCP/IPプロトコル画面 リスナーが使用するTCP/IPポート番号を指定します。通常はデフォルトのままでOKです。 リスナー構成 - TCP/IPプロトコル画面リスナー構成 - リスナーを追加しますか画面 「いいえ」を選択します。 リスナー構成 - リスナーを追加しますか画面リスナー構成 - リスナーの構成が完了画面 リスナー構成 - リスナーの構成が完了画面ようこそ画面に戻るので、「完了」します。 ようこそ画面
dbcaようこそ画面 ようこそ画面ステップ1/15 : 操作画面 「データベースの作成」を選択します。 ステップ1/15 : 操作画面ステップ2/15 : データベース・テンプレート画面 「カスタム・データベース」を選択します。 ステップ2/15 : データベース・テンプレート画面ステップ3/15 : データベース識別情報画面 「グローバル・データベース名」「SID」を決定します。 ステップ3/15 : データベース識別情報画面ステップ4/15 : 管理オプション画面 「Enterprise Managerの構成」を選択します。 ステップ4/15 : 管理オプション画面ステップ5/15 : データベース資格証明画面 パスワードを適切に設定します。 ステップ5/15 : データベース資格証明画面ステップ6/15 : 記憶域オプション画面 今回は「ファイルシステム」を選択します。 ステップ6/15 : 記憶域オプション画面ステップ7/15 : データベース・ファイルの位置画面 今回は「テンプレートのデータベース・ファイル位置を使用」を選択します。 ステップ7/15 : データベース・ファイルの位置画面ステップ8/15 : リカバリ構成画面 今回はデフォルトのままにします。 ステップ8/15 : リカバリ構成画面ステップ9/15 : データベース・コンテンツ画面 今回は「Enterprise Managerリポジトリ」だけを選択します。 ステップ9/15 : データベース・コンテンツ画面ステップ10/14 : 初期化パラメータ画面 今回はデフォルトのままにします。 ステップ10/14 : 初期化パラメータ画面ステップ11/14 : セキュリティ設定画面 今回はデフォルトのままにします。 ステップ11/14 : セキュリティ設定画面ステップ12/14 : 自動メンテナンス・タスク画面 今回はデフォルトのままにします。 ステップ12/14 : 自動メンテナンス・タスク画面ステップ13/14 : データベース記憶域画面 今回はデフォルトのままにします。 ステップ13/14 : データベース記憶域画面ステップ14/14 : 作成オプション画面 「データベースの作成」を選択します。 スクリプトを保存しておきたい場合は、「データベース作成スクリプトの生成」も選択します。 ステップ14/14 : 作成オプション画面確認画面 作成されるデータベースの情報を確認します。 確認画面データベースの作成が開始されます。時間がかかりますが、ガマンして待ちましょう。 データベース作成中画面データベースの作成が完了しました。 この画面の情報を控えておくことをお奨めします。 必要に応じて、パスワードの変更などを行ってください。 データベース作成完了画面これでデータベースの作成は完了です。
Webブラウザで、データベース作成の完了画面に表示されたDatabase ControlのURLからログインます。
Database ControlログインDatabase Controlでの管理 インスタンスが起動していることが確認できました。Database Control