Oracle

データベースです。 http://www.oracle.com/technology/software/products/database/xe/index.htmlから、フリーのOracle Database 10g Express Editionがダウンロードできます! Oracle Database 10g Express Edition (Universal)で日本語も利用できます。

環境設定

Windows版のOracleは9iも10gも画面の指示通りすれば、すんなりインストールできるので、省略します。問題はLinux版です。まずサポートしているディストリビューションが

Red Hat Enterprise Linux AS/ES 2.1
Red Hat Enterprise Linux AS/ES 3
MIRACLE LINUX Standard Edition V2.1
MIRACLE LINUX V3.0
SuSE Linux Enterprise Server 8

となっております。ということは、Fedora Coreにはインストールできないのでしょうか?実際何度か9iのインストールにチャレンジしましたが、非常に難しいです。(パッチがあたっているOracleであれば、Redhat9とかでも結構簡単にインストールできるそうです)glibcのバージョン等いろいろ問題があるので、参考になるリンクからがんばってください。私は MIRACLE LINUX V3.0に入れました。だからといってWindowsみたいにすんなり終わるわけではありません。まず、

Patch#3006854 
Patch#3119415 
Patch#3016968 (非同期 I/O のパッチなのでオプション) 

を用意しておく必要があります。またインストール中に何度かコマンドをたたく場面があります。http://www.miraclelinux.co.jp/faq/data/00072.htmlを参考にしてください。 またoranaviというコマンドがありますので、こちらを使えばまだ楽にインストールできます。 インストールされれば、/etc/init.dにdboraがありますので、

dbora start

で起動できます。このあたりはoranaviを起動したときに表示されるドキュメントにいろいろと書いてあります。 もしくは

sqlplus /nolog
connect / as sysdba 
startup

RedhatEnterpriseLinux? ES 3.0 + Oracle9.2

RedhatEnterpriseLinux ES 3.0にOracle9iをインストールしたときの記録を参考にさせていただきました。非常に丁寧に解説していただいており、大変ためになりました。

tcl-8.3.5-92.i386.rpm       2/4
setarch-1.3-1.i386.rpm      2/4
compat-db-4.0.14-5.i386.rpm  3/4
compat-gcc-7.3-2.96.122.i386.rpm  3/4
compat-gcc-c++-7.3-2.96.122.i386.rpm  3/4
compat-libstdc++-7.3-2.96.122.i386.rpm  3/4
compat-libstdc++-devel-7.3-2.96.122.i386.rpm  3/4
openmotif21-2.1.30-8.i386.rpm  3/4

をインストール。次に

mv /usr/bin/gcc /usr/bin/gcc323

をしたが/usr/bin/gccがないので、(アップデイトしていないからか?)

ln -s /usr/bin/gcc296 /usr/bin/gcc

また

mv /usr/bin/g++ /usr/bin/g++323

がないので、

ln -s /usr/bin/g++296 /usr/bin/g++

次にパッチをあてるのだが、http://www.unix-power.jp/linux/p3006854_9204_LINUX.zipからお借りして、

unzip p3006854_9204_LINUX.zip
cd 3006854
sh rhel3_pre_install.sh

ではユーザ作成

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle

作成したoracleでログインし、.bashrcに

export DISPLAY=localhost:0.0
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product
export ORACLE_SID=ora92
export NLS_LANG=Japanese_Japan.JA16EUC
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_DOC=$ORACLE_HOME/doc
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes12.zip
CLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/nls_charaset12.zip
export CLASSPATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/etc/lib:$ORACLE_HOME/jdbc/lib
export LD_LIBRARY_PATH
export LD_ASSUME_KERNEL=2.4.1

を追加。その後

source .bashrc

で反映 またOSのパラメータを設定する。/etc/rc.d/rc.localに

echo 100 32000 100 100 > /proc/sys/kernel/sem
echo 268435456 > /proc/sys/kernel/shmmax
echo 65536 > /proc/sys/fs/file-max
ulimit -n 65536
echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range 

を追加してやる。いつになったら終わるんだ.. このインストール準備作業は...ではrootで

xhost + localhost

してやって、/で

/mnt/cdrom/runInstaller

/mnt/cdromで.runInstallerでやると2枚目以降でumountできなかった.. やっと画面がでた.. ともったら、UNIXグループ名を聞いてくるので、

oinstall

としてやると、今度は/tmp/orainstRoot.shをrootで実行しろとのこと。なんてやつだ。やと先にすすんでくれている。cdを入れ替えろといわれるが、ejectできない。なんてこった。/mnt/cdromで作業してしまったからか... 再度インストール。ようやく98%すすんだところで、/oracle/product/root.shをrootで実行しろとこのと。ふー やっとOracle Net Configuration Assistant の画面がでる。一向に終わらないので、みてみるとIndexOutouBounds?で落ちている.... はーー しかたがないので、

netca //Oracle Net Configuration Assistant起動 リスナー設定
dbca  //Database Configuration Assistant起動 DB作成

言語はJASJISTILDEにしておいた。
ではパラメータファイルの作成の作成です。

cd $ORACLE_HOME/dbs
cp init.ora $ORACLE_BASE/admin/ora92/pfile/initora92.ora

SIDをora92にしていない場合は、適宜設定してください。

db_name=ora92
db_domain = localdomain
control_files = ('/oracle/oradata/ora92/control01.ctl','/oracle/oradata/ora92/control02.ctl','/oracle/oradata/ora92/control03.ctl')
remote_login_passwordfile = none
background_dump_dest='/opt/oracle/admin/ora92/bdump'
user_dump_dest='/oracle/admin/ora92/udump'
core_dump_dest='/oracle/admin/ora92/cdump'
undo_management = AUTO
undo_tablespace = undotbs
fast_start_mttr_target = 300
compatible = 9.2.0.4.0 

では最後にシンボリックリンクで。

ln -s /oracle/admin/ora92/pfile/initora92.ora /oracle/product/dbs/initora92.ora

また$ORACLE_HOME/bin/dbshutの

shutdown

shutdown immediate

に変更。自動起動させたい場合は、/etc/oratabを開いて

ora92:/oracle/product:N

ora92:/oracle/product:Y

に変更。つぎは自動起動用のスクリプト /etc/init.d/dboraで保存

#!/bin/bash
#
# orale9.2           This shell script takes care of starting and stopping
#                 oracle.
#
# chkconfig: 345 60 90
# description: Oracle
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
[ -r /etc/sysconfig/network ] && . /etc/sysconfig/network

ORA_HOME=/oracle/product
ORA_OWNER=oracle
export ORACLE_HOME=$ORA_HOME
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ] 
then
   echo "Oracle startup: cannot start"
   exit
fi
case "$1" in
   start)
       # Start the Oracle databases:
       su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart"
       # Start Oracle Net
       su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
       touch /var/lock/subsys/dbora
       ;;
    stop)
       # Stop Oracle Net
       su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
       # Stop the Oracle databases:
       su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut"
       rm -f /var/lock/subsys/dbora
       ;;
   restart)
       $0 stop
       $0 start
       ;;
   status)
       if [ -f /var/lock/subsys/dbora ]; then
           echo $0 started.
       else
           echo $0 stopped.
       fi
       ;;
   *)
       echo "usage: dbora {start|stop|restart|status}"
       exit 1
esac
exit 0

これを/etc/init.dにdboraで保存し、自動起動の設定をしておきます。

chkconfig --add dbora
chkconfig --level 345 dbora on

ではようやく起動です。

/etc/init.d/dbora start

なんちゅう長い道のりでしょうか... http://www.akenotori.jp/kill/index.phpさんありがとうございました。

Oracle Database 10g Express Edition

http://www.oracle.com/technology/software/products/database/xe/index.htmlからダウンロードしました。CentOS,openSUSEに入れてみました。まさかOracleが無償で利用できるとはちょっと驚き。

 rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm

あれ?いきなり

libaio >= 0.3.96 is needed by oracle-xe-univ-10.2.0.1-1.0

んー 不吉な.. あのOracle9.2をインストールしたときの悪夢が... ではYaSTでインストールしておいて再度インストール。CentOSの場合は、

yum install libaio

でいれておきました。では再度

rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm
Executing Post-install steps...
oracle-xe                 0:off  1:off  2:off  3:on   4:off  5:on   6:off
You must run '/etc/init.d/oracle-xe configure' as the root user to
configure the database.

ん?妙にあっさり終わったな。では指示にしたがって、

/etc/init.d/oracle-xe configure
Specify the HTTP port that will be used for Oracle Application Express [8080]: リターン
Specify a port that will be used for the database listener [1521]: リターン
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: パスワード 
Confirm the password: 再度パスワード
Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]: リターン
Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:8080/apex"
http://www.fiberbit.net/user/kunyami/oracle/xe/install.html

あれ?あっさりおわったぞ?

. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh

で環境をセットしておいて、

sqlplus

なんと!こんなあっさりいくとは!

無料で使える「Oracle Database XE」をインストール

シフトJIS

んーインストールの時、あまりにもあっさりいくとおもっていたら、UTF-8で作成されていたのか... Oracle Database 10g Express Edition ( XE ) のキャラセットをJA16SJISTILDEにする方法 OracleXEでJA16SJISの利用

Oracle11g

DBConsoleの起動中にエラーが発生しました。
DBConsoleを正常に起動できませんでした。
ORACLE_HOME\bin\emcaスクリプトを手動で実行することにより、
Enterprise Managerを使用してこのデータベース構成を後で再試行出来ます。

って出ちゃいました。あとで調べよっと

リンク

参考書籍


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-02-08 (日) 06:13:00 (5577d)