Ubuntu 14.04にOracle 11gr2をインストールするためのガイダンスを教えてください。
ダウンロードしたファイルをコピーして、ホームディレクトリに貼り付けます。
次のコマンドを使用して解凍します。
unzip Oracle-xe-11.2.0-1.0.x86_64.rpm.Zip
次のコマンドを使用して必要なパッケージをインストールします。
Sudo apt-get install alien libaio1 unixodbc
次のコマンドを使用して、Disk1フォルダーに入ります。
cd Disk1/
次のコマンドを使用して、RPMパッケージ形式をDEBパッケージ形式(Ubuntuで使用される)に変換します。
Sudo alien --scripts -d Oracle-xe-11.2.0-1.0.x86_64.rpm
次のコマンドを使用して、必要なchkconfigスクリプトを作成します。
Sudo pico /sbin/chkconfig
Picoテキストエディタが起動し、画面の下部にコマンドが表示されます。次に、以下をコピーしてファイルに貼り付けて保存します。
#!/bin/bash
# Oracle 11gR2 XE installer chkconfig hack for Ubuntu
file=/etc/init.d/Oracle-xe
if [[ ! `tail -n1 $file | grep INIT` ]]; then
echo >> $file
echo '### BEGIN INIT INFO' >> $file
echo '# Provides: OracleXE' >> $file
echo '# Required-Start: $remote_fs $syslog' >> $file
echo '# Required-Stop: $remote_fs $syslog' >> $file
echo '# Default-Start: 2 3 4 5' >> $file
echo '# Default-Stop: 0 1 6' >> $file
echo '# Short-Description: Oracle 11g Express Edition' >> $file
echo '### END INIT INFO' >> $file
fi
update-rc.d Oracle-xe defaults 80 01
次のコマンドを使用して、chkconfigファイルの権限を変更します。
Sudo chmod 755 /sbin/chkconfig
カーネルパラメーターを設定します。 Oracle 11gR2 XEには、次のコマンドを使用して設定する必要がある追加のカーネルパラメーターが必要です。
Sudo pico /etc/sysctl.d/60-Oracle.conf
以下をファイルにコピーして保存します。
# Oracle 11g XE kernel parameters
fs.file-max=6815744
net.ipv4.ip_local_port_range=9000 65000
kernel.sem=250 32000 100 128
kernel.shmmax=536870912
次のコマンドを使用して変更を確認します。
Sudo cat /etc/sysctl.d/60-Oracle.conf
前に入力した内容が表示されます。カーネルパラメータをロードします。
Sudo service procps start
以下を使用して、新しいパラメーターがロードされていることを確認します。
Sudo sysctl -q fs.file-max
前に入力したfile-max値が表示されます。
Oracleの/ dev/shmマウントポイントをセットアップします。コマンドを使用して次のファイルを作成します。
Sudo pico /etc/rc2.d/S01shm_load
以下をファイルにコピーして保存します。
#!/bin/sh
case "$1" in
start)
mkdir /var/lock/subsys 2>/dev/null
touch /var/lock/subsys/listener
rm /dev/shm 2>/dev/null
mkdir /dev/shm 2>/dev/null
*)
echo error
exit 1
;;
esac
次のコマンドを使用して、ファイルのアクセス許可を変更します。
Sudo chmod 755 /etc/rc2.d/S01shm_load
次のコマンドを実行します。
Sudo ln -s /usr/bin/awk /bin/awk
Sudo mkdir /var/lock/subsys
Sudo touch /var/lock/subsys/listener
次に、システムを再起動します
次のコマンドを使用して、Oracle DBMSをインストールします。
Sudo dpkg --install Oracle-xe_11.2.0-2_AMD64.deb
次のコマンドを使用してOracleを構成します。
Sudo /etc/init.d/Oracle-xe configure
.bashrcファイルを編集して環境変数を設定します。
pico ~/.bashrc
ファイルの最後に次の行を追加します。
export Oracle_HOME=/u01/app/Oracle/product/11.2.0/xe
export Oracle_SID=XE
export NLS_LANG=`$Oracle_HOME/bin/nls_lang.sh`
export Oracle_BASE=/u01/app/Oracle
export LD_LIBRARY_PATH=$Oracle_HOME/lib:$LD_LIBRARY_PATH
export PATH=$Oracle_HOME/bin:$PATH
プロファイルを実行して変更をロードします。
. ~/.bashrc
Oracle 11gR2 XEを起動します。
Sudo service Oracle-xe start
次のコマンドを使用して、ユーザーYOURUSERNAMEをグループdbaに追加します。
Sudo usermod -a -G dba YOURUSERNAME
次のコマンドを使用して、Oracle XE 11gR2サーバーを起動します。
Sudo service Oracle-xe start
次のコマンドを使用して、システム管理者としてコマンドラインシェルを起動します。
sqlplus sys as sysdba
以前にOracleを構成するときに指定したパスワードを入力します。これで、SQLコマンドのみを理解するSQL環境に配置されます。
SQLコマンドを使用して、Oracleに通常のユーザーアカウントを作成します。
create user USERNAME identified by PASSWORD;
USERNAMEとPASSWORDを、選択したユーザー名とパスワードに置き換えます。このユーザー名とパスワードを覚えておいてください。リセットログに関するメッセージとともに上記の実行でエラーが発生した場合は、次のSQLコマンドを実行して再試行してください。
alter database open resetlogs;
SQLコマンドを使用して、ユーザーアカウントに特権を付与します。
grant connect, resource to USERNAME;
USERNAMEとPASSWORDを、選択したユーザー名とパスワードに置き換えます。このユーザー名とパスワードを覚えておいてください。
SQLコマンドを使用してsys adminシェルを終了します。
exit;
次のコマンドを使用して、通常のユーザーとしてコマンドラインシェルを起動します。
sqlplus
これで、SQLコマンドを実行できます...
これはうまくいきましたが、次のエラーが表示されました。
Sudo /etc/init.d/Oracle-xe start
[....] Starting Oracle-xe (via systemctl): Oracle-xe.serviceJob for Oracle-xe.service failed because the control process exited with error code. See "systemctl status Oracle-xe.service" and "journalctl -xe" for details.
failed!
それを見て:
systemctl status Oracle-xe.service
Jan 27 10:01:05 <myusername> su[29699]: No passwd entry for user 'Oracle'
ユーザーを追加するだけで解決しました。
Sudo adduser Oracle
これが誰かを助けることを願っています。
詳細なチュートリアルをありがとうございますが、エラーが発生していました
touch: cannot touch '/var/lock/subsys/listener' ..
ステップSudo /etc/init.d/Oracle-xe configure
。 http://meandmyubuntulinux.blogspot.in/2012/05/installing-Oracle-11g-r2-express.html で提案されているように、/etc/init.d/Oracle-xe
に次の行を追加しました
if [ -L /dev/shm ]; then
rm -rf /dev/shm
mkdir /dev/shm
mount -t tmpfs shmfs -o size=2048m /dev/shm
fi
if [ ! -d /var/lock/subsys ]; then
mkdir /var/lock/subsys
touch /var/lock/subsys/listener
fi
...そしてそれは私にとってはうまくいきます