1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Oracle Database Express Edition を Azure VM にインストールしてみた

Posted at

背景と目的

Azure VM 上の Oracle Database を本番環境として使う場合は、Ultra Disk を使ったり Oracle Data Guard を構成したりしなければなりませんが、今回は検証環境を用意する目的で単一仮想マシン内に Oracle Database Express Edition をインストールしてみました。なお、Oracle Database は OTN 開発者ライセンスに基づいて使用します。

前提条件

コマンドの実施環境は、Mac + Azure CLI です。

bash
$ sw_vers
ProductName:    macOS
ProductVersion: 12.3.1
BuildVersion:   21E258

$ az version
{
  "azure-cli": "2.35.0",
  "azure-cli-core": "2.35.0",
  "azure-cli-telemetry": "1.0.6",
  "extensions": {}
}

検証用の仮想マシンを作る

bash
# 環境変数をセットします
region=japaneast
prefix=mnrora

# リソースグループを作成します
az group create \
  --name ${prefix}-rg \
  --location $region

# パスワードを生成します
vmpass=$(openssl rand -base64 8)
echo $vmpass

# 仮想マシンを作成します
az vm create \
  --resource-group ${prefix}-rg \
  --name ${prefix}-vm \
  --os-disk-name ${prefix}-vmOSDisk \
  --image CentOS \
  --size Standard_DS2_v2 \
  --admin-username azureuser \
  --admin-password $vmpass \
  --nsg-rule NONE \
  --public-ip-address-dns-name ${prefix} \
  --storage-sku StandardSSD_LRS

# SSH 用ポートを自身の IP アドレスから許可します
az network nsg rule create \
  --resource-group ${prefix}-rg \
  --name Allow-SSH \
  --nsg-name ${prefix}-vmNSG \
  --priority 100 \
  --source-address-prefixes $(curl -s inet-ip.info) \
  --destination-port-ranges 22 \
  --access Allow \
  --protocol Tcp

# Oracle Enterprise Manager 用ポートを自身の IP アドレスから許可します
az network nsg rule create \
  --resource-group ${prefix}-rg \
  --name Allow-EM \
  --nsg-name ${prefix}-vmNSG \
  --priority 200 \
  --source-address-prefixes $(curl -s inet-ip.info) \
  --destination-port-ranges 5500 \
  --access Allow \
  --protocol Tcp

# SSH 接続します
ssh azureuser@${prefix}.$region.cloudapp.azure.com

Oracle Database をインストール

bash
# root で作業します
sudo su -

# RPM をダウンロードします
wget https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el7.x86_64.rpm
wget https://download.oracle.com/otn-pub/otn_software/db-express/oracle-database-xe-21c-1.0-1.ol7.x86_64.rpm

# Oracle Database をインストールします
yum -y localinstall oracle-database-pre*
yum -y localinstall oracle-database-xe*

# Oracle Database を初期設定します(任意のパスワードを入力します)
/etc/init.d/oracle-xe-21c configure

# oracle ユーザーで動作確認します
su - oracle

# 環境変数をセットします
export ORACLE_SID=XE
export ORAENV_ASK=NO
. /opt/oracle/product/21c/dbhomeXE/bin/oraenv

# oracle ユーザーに SYSDBA 特権が付与されているのを確認します
sqlplus / as sysdba

# リスナーの起動状態を確認します
lsnrctl status

# system ユーザーでログインします(初期設定時のパスワードを入力します)
sqlplus system@localhost:1521

# Oracle Enterprise Manager をローカル以外からも接続出来るようにします
sqlplus system
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);

# oracle ユーザーから抜けます
exit

# システムステータスを確認します
/etc/init.d/oracle-xe-21c status

# システム起動時に Oracle Database が自動起動するようにします
systemctl daemon-reload
systemctl enable oracle-xe-21c

参考

bash
# リソースグループを削除します
az group delete \
  --name ${prefix}-rg \
  --yes

https://docs.microsoft.com/ja-jp/azure/virtual-machines/workloads/oracle/oracle-database-quick-create

https://docs.oracle.com/en/database/oracle/oracle-database/21/xeinl/installing-oracle-database-xe.html#GUID-728E4F0A-DBD1-43B1-9837-C6A460432733

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?