勉強用の Oracle DB の環境構築の備忘録です。Oracle は 個人勉強用に 「OTN開発者ライセンス」があるので今回はこれを利用します。今まで、Oracle は使う方メインでやってきたから インフラ側となると難易度が全然違う・・・まずは、複雑な設計はせずに動くところまでの備忘録と。Win の Oracleクライアントツールから VM内の Oracle DB に接続して操作できるところまでがゴールです。
- Oracle VM VirtualBox
- Oracle Solaris 11.3 on x86-64 (64-Bit)
- Oracle Database 12c Release 1 Standard Edition
※Oracleのインストール方法の詳細については、Oracle Databaseオンライン・ドキュメント 12c リリース1 (12.1) 参照
Oracle Solaris 11.3 の準備
まずは OSが必要になります。今回は Solaris を使います。理由は 仕事でも使っているし、何よりも Oracle が VirtualBox 用の Solaris イメージを準備しているので環境構築がすごくかんたん!全部 Oracle製ですしね。
Oracle VM VirtualBox用Oracle VMテンプレート のページにアクセスします。 OTNライセンスに同意して、 Oracle Solaris 11.3 VirtualBox Template (x86) (1.8 GB) をダウンロードしました。
※Oracle アカウントが必要です。
ダウンロードした sol-11_3-vbox.ova を VirtualBox でインポートします。
※VirtualBox > ファイル > 仮想アプライアンスのインポート
インポートのオプション画面が表示されます。OSはここで選択できますが、デフォルトのSolaris 11 (64bit) にしました。RAM は余裕があれば多めがいいです。Oracle DB だけで 2GB以上必要なので、デフォルトの 2048MB では少ないと思います。
※仮想ストレージが最大32GBの可変型になります。仮想ストレージを後から増やすこともできますが、イメージフォーマット変換やOSのパーティション変更など結構面倒です。大容量のデータを試したい場合は、このSolarisインストール済みイメージでなく、ストレージ容量を自分で設定してゼロベースのSolarisインストールから進めることをお勧めします。これ困りました。
OracleSolaris11_3 ができました。ストレージは 31.25 GB の可変型です。
Solaris を起動します。最初だけ初期設定を入力するウィザードが表示されます。ウィザードに従って設定していきます。
System Configuration Tool
これから行うウィザードの説明です。F2 で続けます。
System Identity
コンピュータ名:Solaris にしました。F2 で次に進みます。
Network
ネットワーク設定です。設定方法:自動(Automatically) にしました。F2 で次に進みます。
Time Zone
タイムゾーンの設定です。Azia > Japan を選択しました。F2で次に進みます。
Locale
Language:Japanese、Territory:Japan(ja_JP.UTF-8)にしました。F2 で次に進みます。
Date and Time
年月日はデフォルトできちんと選択されているので、そのまま F2で進みます。
Keyboard
日本語キーボード(Japanese) を選択しました。F2 で次に進みます。
Users
ユーザ設定です。ここでは とりあえずrootだけ作りました。rootの登録パスワードを入力して F2で次に進みます。
Support - Resistration
サポート登録です。勉強用なのでデフォルトのままにして F2 で次へ
Suppport - Network Configration
サポートの接続設定かな?これもデフォルトのままで
System Configration Summary
これまでに設定した内容の確認画面です。OK ならば F2 で次に進みます。
設定が開始します。
設定が完了すると、Solalis ログイン画面が表示されます。 root しか登録していないので、Username:root、Password: 登録したパスワード を入力してログインします。
ログイン画面で 言語(左)やキーボード種類(中)そして表示形式(右)を選択できます。表示形式はGNOME にしました。GNOMEは GUI表示で、xTermは コンソールのみ表示です。GUI表示の方が、コンソールを複数立ち上げることができたりして便利です。
無事Solalisが立ち上がりました。
Windows と Solaris をマウントする
VMの設定変更するために一旦、Solarisの電源をオフにします。設定>共有フォルダー をクリックします。
ホストOS(Windows) と ゲストOS(Solaris) をマウントします。これでWindos上のファイルがSolarisでかんたんに使えるようになります。
設定は以下にしました。
- Windows側:C:\work\VirtualBox_mnt\oracle
- Solaris側:oracle
自動マウントにすると、上記設定では Windows側の「C:\work\VirtualBox_mnt\oracle」と Solaris側の「/mnt/sf_oracle」がマウントされます。
Oracle Database 12c のダウンロード
Oracle Database ソフトウェア・ダウンロード 画面にアクセスします。OTNライセンスに同意し、 Oracle Solaris (x86 systems, 64-bit) をダウンロードしました。
ダウンロードしたファイルを解凍してマウント設定したフォルダに配置します。
Solalisで端末を起動します。
root@solaris:~# ls /mnt/sf_oracle/ database root@solaris:~#
「/mnt/sf_oracle/」以下のファイルと Windowsの「C:\work\VirtualBox_mnt\oracle」以下のファイルが一致します。ファイルがない場合はマウントに失敗しています。
Solarisのパッケージを最新にする
Oracleインストール前に必要条件満たしているかどうか確認しますが、その前にsolarisのパッケージを最新にしておきます。
root@Solaris:~# pkg update --accept カタログをリフレッシュしています 1/1 solaris 略 削除するパッケージ: 1 インストールするパッケージ: 3 更新するパッケージ: 7 変更するサービス: 1 ブート環境の作成: いいえ バックアップブート環境の作成: はい ダウンロード パッケージ ファイル 転送 (MB) 速度 完了 11/11 649/649 13.1/13.1 1.0M/s 略 root@Solaris:~#
これで最新になりました。pkg update --accept とオプションに --accept をつけます。これで更新されるパッケージのライセンス条項に同意することを示すので、ライセンス同意が必要なパッケージも更新できます。
Oracle Databaseのインストール前の作業
Oracle Databaseインストレーション・ガイド, 12cリリース1 (12.1) for Oracle Solaris に従って前作業をします。
root@Solaris:~# df -k Filesystem 1024-blocks Used Available Capacity Mounted on rpool/ROOT/solaris 31739904 4992680 20685886 20% / 略
Standard Edition のインストールに必要なディスク領域は 6.2GBとのこと。今回のVMのストレージは20GBあるのでまだまだ余裕あります。
またドキュメントによると /tmpディレクトリの空き領域が、最低1GB必要らしい。
root@Solaris:~# df -k /tmp Filesystem 1024-blocks Used Available Capacity Mounted on swap 7063824 65592 6998232 1% /tmp root@Solaris:~#
まだ7GBぐらい余ってるから問題なし!
メモリは最低1GB以上。今回は5GBに設定したので、必要なスワップ領域は5GB(RAMのサイズと同じ) かな。
root@Solaris:~# zfs get volsize rpool/swap NAME PROPERTY VALUE SOURCE rpool/swap volsize 4G local root@Solaris:~#
Oracle がチェックするスワップ領域は「rpool/swap volsize」。4G・・・ 足りない。どうやらスワップ領域を拡張する必要があるようです。拡張の仕方は、「合計スワップ領域、十分のはずなのに足りないだと!!Oracle Universal Installer (OUI) 前提条件のチェック」を参考にしてください。
OSのバージョン確認します。
root@Solaris:~# uname -a SunOS Solaris 5.11 11.3 i86pc i386 i86pc
11.3なので 11.1 SRU14.5以上は満たしてます。
必要パッケージがインストールされているか確認します。
root@Solaris:~# pkg list | grep system/dtrace system/dtrace 0.5.11-0.175.3.1.0.3.0 i-- system/dtrace/dtrace-toolkit 0.99-0.175.3.0.0.30.0 i-- root@Solaris:~# pkg list | grep developer/assembler root@Solaris:~# pkg list | grep developer/build/make developer/build/make 0.5.11-0.175.2.0.0.34.0 i-- root@Solaris:~# pkg list | grep system/xopen/xcu4 system/xopen/xcu4 0.5.11-0.175.3.0.0.30.0 i-- root@Solaris:~# pkg list | grep x11/diagnostic/x11-info-client x11/diagnostic/x11-info-clients 7.7-0.175.3.0.0.30.1483 i-- root@Solaris:~# pkg list | grep compress/unzip compress/unzip 6.0-0.175.3.0.0.30.0 i-- root@Solaris:~#
う~ん、developer/assembler がインストールされていないようです。
/developer/assembler インストール
必要パッケージがなかったのでインストールします。
root@Solaris:~# pkg install assembler インストールするパッケージ: 1 ブート環境の作成: いいえ バックアップブート環境の作成: いいえ ダウンロード パッケージ ファイル 転送 (MB) 速度 完了 1/1 6/6 0.2/0.2 149k/s フェーズ 項目 新しいアクションをインストールしています 14/14 パッケージ状態データベースを更新しています 完了 パッケージキャッシュを更新しています 0/0 イメージ状態を更新しています 完了 スピード検索データベースを作成しています 完了 パッケージキャッシュを更新しています 1/1 root@Solaris:~# root@Solaris:~# pkg list | grep developer/assembler developer/assembler 0.5.11-0.175.3.9.0.2.0 i-- root@Solaris:~#
これで、必要パッケージが揃いました。
次は、Oracle Universal Installer で Oracle DB をインストールするための ユーザとグループ作成です。