前々回の記事でOracle Linuxをインストールし、前回の記事でそこへPostgreSQLをインストールしNEC提供のOSSで暗号化してみました。
今回は折角なのでOracle Databaseもインストールしてみようと思います。エディションは無償で利用できるOracle Database 18c Express Edition(XE)です。
検証環境
Debian10上に構築したVirtual Boxの仮想マシン(Oracle Linux 7.9)へインストールします。
Oracle Database本体のダウンロード
手順はOracleのクイック・スタートにある通りですが、まずは媒体をダウンロードします。
コマンドはこちらです。
wget https://download.oracle.com/otn-pub/otn_software/db-express/oracle-database-xe-18c-1.0-1.x86_64.rpm
preinstall用ファイルのダウンロード
preinstallってよく分からないですよね。Windowsでインストールするときの前提条件チェックのようなものでしょうか。
curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm
インストール開始
では、インストール開始です。
yum -y localinstall oracle-database*18c*
続いて実行するコマンドはこちらです。時間かかります。
/etc/init.d/oracle-xe-18c configure
開始後直ぐにパスワードの設定が始まり、そのままセットアップが続きます。順調に終われば良いのですが私は謎エラーで死にました。

「使おうとしたポート先に使ってる奴がおるからね」とのお叱りですが、lsofで調べても反応がありません。ググってみるとhostsに加筆する必要がありようで、加筆する内容はサーバーのIPアドレス、FQDN、ホスト名の3つです。
sudo nano /etc/hosts
【変更前】
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
【変更後】
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.1 srv005.sandambara.com srv005
この後リトライします。
/etc/init.d/oracle-xe-18c configure
今度は順調に進んでおります。仮想ディスクのせいか止まっているのかと思うほど遅かったです。

Oracleの起動・停止
こちらが参考になります。
今回の検証環境はOracle Linux 7.9ですが、リンク先にあるsystemctlからはじまるコマンドではダメで、/etc/init.d/oracle-xe-18c start(stop・restart)が有効でした。知見が無く原因不明ですので、もしアドバイス頂けると大変有難いです。
PATHを通す
以下の情報を加筆します。
nano ~/.bash_profile
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/18c/dbhomeXE
export NLS_LANG=Japanese_Japan.AL32UTF8
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
Ctrl+X → y → Enterで保存して終了
# 環境変数読みなおし
source ~/.bash_profile
DBにログインしてみる
Oracle 12cから採用されているマルチテナント・アーキテクチャ。私は11gまでしか触ったことが無かったので初体験です。
CDB(DBのガワ?)にログインするとき
sqlplus sys/インストール時に入力したパスワード@//localhost:1521/XE as sysdba
PDB(DBそのもの)にログインするとき
sqlplus sys/インストール時に入力したパスワード@//localhost:1521/XEPDB1 as sysdba
今回はダイレクトにPDBへログインしてみました。

「orclとはいつの時代のパスワードだよ」って感じですよね(笑)とりあえずオラクルといえばこれです。

以上です!
コメント