知ったかですが、なにか問題でも?

アクセスカウンタ

zoom RSS CentOS 5.4 への Oracle Database 11g の構築(17)

<<   作成日時 : 2010/06/16 10:00   >>

かわいい ブログ気持玉 2 / トラックバック 0 / コメント 0

 

■■CentOS 5.4 への Oracle Database 11g の構築■■


VMware 2.0 を使用して構築したCentOS5.4(64bit)のサーバーにOracle Database 11g のインストールを行う手順を紹介していきます。
Oracle Database を構築したことがない方、Linux系のサーバの扱いに慣れていない方でも、本ブログの手順どおりに実行すれば、構築できるように一つ一つ順を追って説明して行きます。

前回までに、データベースの構築し、OEMの設定、SQL*Plusの設定を完了しました。
今回は、サーバーを再起動したら、自動でOracle Database が起動するように自動起動の設定を行います。


それでは、今回の手順です。

■ Session.17 Oracle Database Server の自動起動設定

データベース、リスナー、OEMの自動起動/停止の設定を行います。
自動起動設定は、以下の2つのファイルを準備することで行えます。
インスタンスの定義ファイル /etc/oratab
サービスのスクリプト /etc/rc.d/init.d/dbora


まずは、/etc/oratab の編集を行います。
サーバーにrootユーザーでログインします。

<=(1)
[root@CentOS54VM01 ~]$ cd /etc
<=(2)
[root@CentOS54VM01 etc]$ vi oratab
# This file is used by ORACLE utilities.It is created by root.sh
# and updated by the Database Configuration Assistant when creating
# a database.

# A colon, ':', is used as the field terminator.A new line terminates
# the entry.Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively.The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
<=(3)
orcl:/opt/app/oracle/product/11.2.0/dbhome_1:N

(1)カレントディレクトリを変更します。
(2)「vi」コマンドを使用してファイルを変更します。
(3)この行をすぐ上にある注釈に従って変更します。


ファイルの最終行を以下のように変更します。

orcl:/opt/app/oracle/product/11.2.0/dbhome_1:N
<=(1)
orcl:/opt/app/oracle/product/11.2.0/dbhome_1:Y

(1)最終行のNをYにします。


oratab の編集が終わったら、次に/etc/rc.d/init.d/dbora の作成を行います。
こちらは新規に作成を行います。
dboraの設定は、自由にすることが出来ます。今回のファイル内容は一例です。


<=(1)
vi /etc/rc.d/init.d/dbora
#! /bin/bash
#
# oracle: Starting Oracle database 11g
#
# chkconfig: 345 95 94
# description: Oracle Database Server
# processname: ora_

. /etc/rc.d/init.d/functions

lockfile=/var/lock/subsys/dbora
<=(2)
ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1
ORACLE=oracle

case "$1" in
'start')
if [ -f $lockfile ]; then
     echo $0 already started.
     exit 1
   fi
   echo -n $"Starting Oracle Database:"
   su - $ORACLE -c "$ORACLE_HOME/bin/lsnrctl start"
   su - $ORACLE -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
   su - $ORACLE -c "$ORACLE_HOME/bin/emctl start dbconsole"
   touch $lockfile
   ;;
'stop')
   if [ ! -f $lockfile ]; then
     echo $0 already stopped.
     exit 1
   fi
   echo -n $"Stopping Oracle Database:"
   su - $ORACLE -c "$ORACLE_HOME/bin/lsnrctl stop"
   su - $ORACLE -c "$ORACLE_HOME/bin/dbshut"
   su - $ORACLE -c "$ORACLE_HOME/bin/emctl stop dbconsole"
   rm -f $lockfile
   ;;
'restart')
   $0 stop
   $0 start
   ;;
'status')
   if [ -f $lockfile ]; then
     echo $0 started.
   else
   echo $0 stopped.
   fi
   ;;
*)
   echo "Usage: $0 [start|stop|status]"
   exit 1
esac

exit 0


(1)「vi」コマンドを使用して、ファイルの作成を行います。
(2)ORACLE_HOMEのパスを変更している場合は、変更が必要です。

本サイトの手順通りに構築している場合は、スクリプトはそのままコピーして貼りつけても大丈夫です。


編集が終わったら、権限の変更を行います。

<=(1)
[root@CentOS54VM01 ~]$ chmod 755 /etc/rc.d/init.d/dbora

(1)「chmod」コマンドを使用して、アクセス権限を変更ます。


ここまで完了したら、スクリプトがきちんと動作するか、実行してみます。

<=(1)
[root@CentOS54VM01 ~]# /etc/rc.d/init.d/dbora start
Starting Oracle Database:
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 10-4月 -2010 21:36:21

Copyright (c) 1991, 2009, Oracle.All rights reserved.

/opt/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnrを起動しています。お待ちください...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
システム・パラメータ・ファイルは/opt/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.oraです
ログ・メッセージを/opt/app/oracle/diag/tnslsnr/CentOS54VM01/listener/alert/log.xmlに書き込みました。
リスニングしています: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=CentOS54VM01)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CentOS54VM01)(PORT=1521)))に接続中
リスナーのステータス
------------------------
別名                        LISTENER
バージョン                TNSLSNR for Linux: Version 11.2.0.1.0 - Production
開始日                     10-4月 -2010 21:36:21
稼働時間                  0 日 0 時間 0 分 0 秒
トレース・レベル        off
セキュリティ              ON: Local OS Authentication
SNMP                      OFF
パラメータ・ファイル   /opt/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
ログ・ファイル            /opt/app/oracle/diag/tnslsnr/CentOS54VM01/listener/alert/log.xml
リスニング・エンドポイントのサマリー...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=CentOS54VM01)(PORT=1521)))
リスナーはサービスをサポートしていません。
コマンドは正常に終了しました。
Processing Database instance "orcl": log file /opt/app/oracle/product/11.2.0/dbhome_1/startup.log
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation.All rights reserved.
Starting Oracle Enterprise Manager 11g Database Control ....... started.
------------------------------------------------------------------
Logs are generated in directory /opt/app/oracle/product/11.2.0/dbhome_1/CentOS54VM01_orcl/sysman/log

(1)root で作成したスクリプトを引数 「start」で 実行して、動作確認を行います。

今回は、引数「start」で実行していますが、既に各サービスが起動している場合には、引数を「stop」で実行して、停止時の動作を先に確認して下さい。
各種サービスが、正常に「起動/停止」できたらスクリプトは完成です。



oracle でログインし、各種サービスの起動が正常に完了しているか確認します。
それでは、リスナーの確認からです。

[oracle@CentOS54VM01 ~]$ lsnrctl status listener

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 10-4月 -2010 21:39:52

Copyright (c) 1991, 2009, Oracle.All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=CentOS54VM01)(PORT=1521)))に接続中
リスナーのステータス
------------------------
別名                        LISTENER
バージョン                TNSLSNR for Linux: Version 11.2.0.1.0 - Production
開始日                     10-4月 -2010 21:36:21
稼働時間                  0 日 0 時間 0 分 0 秒
トレース・レベル        off
セキュリティ              ON: Local OS Authentication
SNMP                      OFF
パラメータ・ファイル   /opt/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
ログ・ファイル            /opt/app/oracle/diag/tnslsnr/CentOS54VM01/listener/alert/log.xml
リスニング・エンドポイントのサマリー...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=CentOS54VM01)(PORT=1521)))
リスナーはサービスをサポートしていません。
コマンドは正常に終了しました。

上記のようなログが表示されたら、リスナーは正常に起動しています。


続いて、OEMの起動状態を確認します。

[oracle@CentOS54VM01 ~]$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation.All rights reserved.
Oracle Enterprise Manager 11g is running.
------------------------------------------------------------------
Logs are generated in directory /opt/app/oracle/product/11.2.0/dbhome_1/CentOS54VM01_orcl/sysman/log


上記のようなログが表示されたら、OEMは正常に起動しています。


続いて、データベースの起動状態を確認します。

[oracle@CentOS54VM01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 土 4月 10 21:40:32 2010

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

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
に接続されました。
(orcl)SYS>

データベースにも正常に接続出来ました。(アイドリングインスタンスではなく。)


各種サービスが正常に起動出来ていることが確認できましたので、chkconfigコマンドで、サービスの自動起動設定を行います。

設定はrootで行います。

[root@CentOS54VM01 ~]# chkconfig --add dbora
[root@CentOS54VM01 ~]# chkconfig dbora on
[root@CentOS54VM01 ~]# chkconfig --list dbora
<=(1)
dbora           0:off   1:off   2:on    3:on    4:on    5:on    6:off

(1)ランレベル、「2、3、4、5」のステータスが「on」となっていたら、設定は成功です。


さて、長かったですが、ここまででデータベースの自動起動設定は完了です。
最後は、実際にサーバーを再起動して、各種サービスが自動で起動するかの確認します。

<=(1)
[root@CentOS54VM01 ~]# shutdown -r now

(1)shutdown コマンドを「-r」オプションで実行して、サーバーを再起動しています。


再起動が完了したら、再度サービスの起動確認を行って下さい。
起動していれば、自動起動設定は成功です。


ここまでで、今回の手順は完了です。


↑ページトップへ

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 2
かわいい かわいい

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
CentOS 5.4 への Oracle Database 11g の構築(17) 知ったかですが、なにか問題でも?/BIGLOBEウェブリブログ
文字サイズ:       閉じる