Vagrantで楽々Oracle18c構築(作業3分、待ち時間数十分)
はじめに
Vagrantで簡単にOracle18cの環境を構築する方法を見つけたので試してみた。以下の記事では12cになっていますが、11gと18cのvagrantfileもあった。
・Quick and Easy Installation of Oracle Database 12c on Oracle Linux in Oracle VM VirtualBox
この方法で、Oracle Linux上にOracle EEをインストールし、データベースまで構築した環境が簡単に作れます。
試した感想としては、作業中の待ち時間は長いですが作業自体は簡単なのでちょっと自分用の開発環境が欲しいなというときは便利かなと思いました。
Dockerが好きな人は以下の記事のように構築することもできるようです。
前提条件
使用した環境は以下のとおり。
・Windows 10
・VirtualBox、Vagrantはインストール済み。
・構築したVMは約15.3GBなのでディスクの空きに注意
インストールモジュールをダウンロード
OTNから18cのモジュール(Linux x86-64)をダウンロードする。
git clone
まずは以下のようにgit cloneなのですが、今回のPCはgitが入っていないので、ダウンロードしました。
git clone https://github.com/oracle/vagrant-boxes
以下をぽちっと
ダウンロードしたファイルはとりあえず「c:\vagrant-boxes-master」以下に展開。
そして、Oracleのインストールモジュール「LINUX.X64_180000_db_home.zip」を以下のディレクトリに置きます。
C:\vagrant-boxes-master\OracleDatabase\18.3.0
以下のコマンドを実行してインスタンスを起動します。
Oracle Linuxをダウンロードし、Oracleのインストールを実行しているので、環境にもよりますが数十分かかります。
vagrant up
インストールが完了すると、以下のように表示されます。
sys/system/pdbadminユーザのパスワードが自動生成されるのでメモしておきます。
oracle-18c-vagrant: INSTALLER: Database created
oracle-18c-vagrant: INSTALLER: Oratab configured
oracle-18c-vagrant: Created symlink from /etc/systemd/system/multi-user.target.wants/oracle-rdbms.service to /etc/systemd/system/oracle-rdbms.service.
oracle-18c-vagrant: INSTALLER: Created and enabled oracle-rdbms systemd's service
oracle-18c-vagrant: INSTALLER: setPassword.sh file setup
oracle-18c-vagrant: ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: ★パスワードが表示される★
oracle-18c-vagrant: INSTALLER: Installation complete, database ready to use!
デフォルトで以下の環境にて構築されます。
- ORACLE_HOME: /opt/oracle/product/18c/dbhome_1
- Hostname: localhost
- Port: 1521
- SID: ORCLCDB
- PDB: ORCLPDB1
次にoraenvでOracle関連の環境変数をセットします。
手順に沿ってoraenvを使用していますが、/etc/profile等に環境変数をセットする方が一般的かなと思います。
vagrant ssh
[vagrant@oracle-18c-vagrant ~]$ . oraenv
ORACLE_SID = [ORCLPDB1] ? ORCLPDB1
ORACLE_HOME = [/home/oracle] ? /opt/oracle/product/18c/dbhome_1
ORACLE_BASE environment variable is not being set since this
information is not available for the current user ID vagrant.
You can set ORACLE_BASE manually if it is required.
Resetting ORACLE_BASE to its previous value or ORACLE_HOME
The Oracle base remains unchanged with value /opt/oracle/product/18c/dbhome_1
次にsqlplusでデータベースに接続します。
パスワードはインストール時にメモしたものを使用しています。
[vagrant@oracle-18c-vagrant ~]$ sqlplus system/vT2USPjIs+k=1@localhost/orclpdb1
SQL*Plus: Release 18.0.0.0.0 - Production on Sat Nov 10 09:19:34 2018
Version 18.3.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Last Successful login time: Sat Nov 10 2018 09:10:43 +09:00
Connected to:
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.3.0.0.0
接続成功。省略しますが、ローカル(Windows)からA5:SQL(なんでもよいですが)でも接続してうまくいことを確認できています。
なお、Vagrantfile(抜粋)は以下のようになっています。
メモリーは2GBでORACLE_SID等も記載されているので必要に応じて変更すればいいですね。
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ol7-latest"
config.vm.box_url = "https://yum.oracle.com/boxes/oraclelinux/latest/ol7-latest.box"
config.vm.define NAME
config.vm.box_check_update = false
# change memory size
config.vm.provider "virtualbox" do |v|
v.memory = 2048
v.name = NAME
end
# VM hostname
config.vm.hostname = NAME
# Oracle port forwarding
config.vm.network "forwarded_port", guest: 1521, host: 1521
config.vm.network "forwarded_port", guest: 5500, host: 5500
# Provision everything on the first run
config.vm.provision "shell", path: "scripts/install.sh", env:
{
"ORACLE_BASE" => "/opt/oracle",
"ORACLE_HOME" => "/opt/oracle/product/18c/dbhome_1",
"ORACLE_SID" => "ORCLCDB",
"ORACLE_PDB" => "ORCLPDB1",
"ORACLE_CHARACTERSET" => "AL32UTF8",
"ORACLE_EDITION" => "EE",
"SYSTEM_TIMEZONE" => SYSTEM_TIMEZONE
}
end
簡単でしたが以上。
Oracle11gの場合
[2019/4/10追記]
11gも必要になったので以下を参考に環境を構築しました。
Vagrantがあれば作業も数分で、後は待ち時間だけで構築でき簡単でした。
なお、そのままですとteraterm等でパスワード認証でのログインができないので以下のように変更しておくと便利です。
/etc/ssh/sshd_configを以下のように修正
PasswordAuthentication no
設定をリロードする。
$ systemctl reload sshd
これで、ID:oracle, PASSWORD:oracleでリモートログインできるようになります。
(公開鍵認証でも良いですが・・・)
参考
・Quick and Easy Installation of Oracle Database 12c on Oracle Linux in Oracle VM VirtualBox
Author And Source
この問題について(Vagrantで楽々Oracle18c構築(作業3分、待ち時間数十分)), 我々は、より多くの情報をここで見つけました https://qiita.com/mkyz08/items/4bf8f8ccbaf279fb0bc1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .