Ubuntu 16.04 へ Oracle 11g Express Edition を入れてみた

  • 1
    Like
  • 0
    Comment

Oracle XE をダウンロードしてくる

Oracleのダウンロードサイトここから
Oracle-XE-11.2.0のLinux x64版 をダウンロードする

必要なパッケージをインストール

sudo aptitude install alien libaio1 unixodbc unzip

Oracl XEをunzip

unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip

rpm から deb へ変換

cd Disk1/
sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm

deb ファイルの中身を編集

mkdir ./tmp_deb # 作業用ディレクトリ
cp ./oracle-xe_11.2.0-1.0.x86_64.deb
cd ./tmp_deb
ar x ./oracle-xe_11.2.0-1.0.x86_64.deb

3つのファイルができます

ls ./
control.tar.gz  data.tar.xz  debian-binary

data.tar.xz 内のファイルを編集

mkdir ./tmp_data
cd ./tmp_data
tar axvf ../data.tar.xz ./
vim ./etc/init.d/oracle-xe

シェバンの下に下記を挿入

### BEGIN INIT INFO
# Provides:             OracleXE
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Oracle 11g Express Edition
### END INIT INFO

53行目 awk のパスを変更

if [ -z "$AWK" ]; then AWK=/usr/bin/awk; fi

/var/lock/subsys/ を /var/lock/へ書き換え

:%s/subsys\///gc

control.tar.gz 内のファイルを編集

cd ../
mkdir ./tmp_control
cd ./tmp_control
tar axvf ../control.tar.gz ./
vim ./postinst

114行目を update-rc.d へ書き換え

update-rc.d oracle-xe defaults 80 01

deb ファイルにまとめてインストール

rm ../data.tar.xz ../control.tar.gz
tar acvf ../control.tar.gz ./
cd ../tmp_data
tar acvf ../data.tar.gz ./ #xz 形式ではインストールの途中で止まった
cd ./
ar d ./oracle-xe_11.2.0-1.0.x86_64.deb data.tar.xz # 一旦消して
ar r ./oracle-xe_11.2.0-1.0.x86_64.deb data.tar.gz control.tar.gz # 追加
mv ./oracle-xe_11.2.0-1.0.x86_64.deb ./oracle-xe_11.2.0-1.0.x86_64_custom.deb
sudo dpkg -i ./oracle-xe_11.2.0-1.0.x86_64_custom.deb
sudo /etc/init.d/oracle-xe configure

.profileを編集して、oracleの環境変数が設定されるようにする。

vim ~/.profile
source /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh

編集した.profileの内容を反映する。

source ~/.profile

oracleに接続できるか確認する。

sqlplus system@XE