読者です 読者をやめる 読者になる 読者になる

clock-up-blog

go-mi-tech

CentOS への Oracle Database 導入

データベース 環境構築 CentOS Oracle

今回の環境

  • CentOS 6.6 64bit
  • Oracle Database Express Edition 11g Release 2 ← これを今回入れます。

Express版なので無償で使えます。

前提条件を揃える

hostname

まず hostname を確認し、

# hostname
hogehoge

/etc/hosts に書き足す。

# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 hogehoge
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 hogehoge

必要パッケージ

# yum -y install unzip
# yum -y install libaio libaio-devel
# yum -y install bc

Oracle Database パッケージを入手する

Oracle Database Express Edition 11g Release 2のダウンロード
Oracle Database Express Edition 11g Release 2 for Linux x64

2014年12月時点では oracle-xe-11.2.0-1.0.x86_64.rpm.zip というパッケージが入手できました。

Oracle Database インストール・初期設定

# unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
# cd Disk1
# rpm -Uvh oracle-xe-11.2.0-1.0.x86_64.rpm
# /etc/init.d/oracle-xe configure
…
Specify a password to be used for database accounts.  Note that the same
password will be used for SYS and SYSTEM.  Oracle recommends the use of 
different passwords for each database account.  This can be done after 
initial configuration: xxxxxx (管理パスワード)
Confirm the password: xxxxxx (管理パスワード)
…

各種環境変数設定

# vi /etc/profile
(最下部あたりに追記)
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe
export ORACLE_SID=XE
export NLS_LANG=American_Japan.UTF8
export PATH=$PATH:$ORACLE_HOME/bin

上下矢印キーの履歴を有効にする

rlwrap を用いる。

# yum -y install rlwrap
# vi /etc/profile
(最下部あたりに追記)
alias sqlplus='rlwrap sqlplus'

ログイン

# sqlplus

SQL*Plus: Release 11.2.0.2.0 Production on Tue Dec 30 13:20:41 2014

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: system
Enter password: xxxxxxxxxxxx (管理パスワード)

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL> 

ログインできた━━━ヽ(∀゚ )人(゚∀゚)人( ゚∀)ノ━━━!!

トラブルシューティング

Database Configuration failed.

# /etc/init.d/oracle-xe configure
…
Starting Oracle Net Listener...Done
Configuring database...

Database Configuration failed.  Look into /u01/app/oracle/product/11.2.0/xe/config/log for details

oracle-xe configure が失敗する。提示のログを見てみても「ORA-01034: ORACLE not available」とかおおざっぱなエラー情報しか吐いてない。

ググってもまるで解決策が見つからなくて、結局 前提条件 を読み直して、それに従って hostname 周り を設定したら直りました。

環境変数ちゃんと export しましょう

ORACLE_HOME=~

ではなく、ちゃんと

export ORACLE_HOME=~

ってやりましょう。ハマった。

SP2-0667: Message file sp1.msb not found

# sqlplus
Error 6 initializing SQL*Plus
SP2-0667: Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory

環境変数 ORACLE_HOME が設定されてない。設定しましょう。

ORA-12162: TNS:net service name is incorrectly specified

# sqlplus

SQL*Plus: Release 11.2.0.2.0 Production on Tue Dec 30 13:14:59 2014

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: system
Enter password: 
ERROR:
ORA-12162: TNS:net service name is incorrectly specified

環境変数 ORACLE_SID が設定されてない。設定しましょう。

});