Oracle Linux 起動と停止の自動化

その他のオペレーティング・システムにおけるデータベースの起動と停止の自動化

dbstartおよびdbshutスクリプトを使用してデータベースの起動と停止を自動化するには、次の手順を実行します。

  1. rootユーザーでログインします。

  2. プラットフォームのoratabファイルを編集します。

    ファイルを開くには、次のいずれかのコマンドを使用します。

    • Solarisの場合

      # vi /var/opt/oracle/oratab
      
    • AIX、HP-UXおよびLinuxの場合

      # vi /etc/oratab
      

    oratabファイル内のデータベース・エントリは、次の形式で表示されます。

    SID:ORACLE_HOME:{Y|N|W}
    

    この例の値YおよびNは、スクリプトでデータベースの起動または停止を実行するかどうかを指定します。最初に、停止と起動を自動化するデータベースごとに、データベースのインスタンス識別子(SID)を判別します。これは、最初のフィールドのSIDで識別されます。次に、最後のフィールドをそれぞれYに変更します。

    dbstartを設定すると、自動ストレージ管理インストールを使用している単一インスタンスのデータベースの起動を自動化できます。自動ストレージ管理はOracle Clusterwareによって自動的に起動されます。これは、自動ストレージ管理クラスタのデフォルトの動作です。これを実行する場合は、データベースおよび自動ストレージ管理インストールのoratabエントリを変更して、3番目のフィールドに値WおよびNをそれぞれ設定する必要があります。これらの値は、自動ストレージ管理インスタンスの起動後にのみ、dbstartがデータベースを自動的に起動するように指定します。


    注意:

    新規データベース・インスタンスをシステムに追加する場合、これらのインスタンスを自動的に起動するには、oratabファイルでインスタンスのエントリを編集する必要があります。

  3. オペレーティング・システムに応じ、ディレクトリを次のいずれかに変更します。

    プラットフォームプラットフォーム固有の初期化ファイルのディレクトリ
    AIX/etc
    LinuxおよびSolaris/etc/init.d
    HP-UX/sbin/init.d

  4. dboraというファイルを作成し、次の行をこのファイルにコピーします。


    注意:

    環境変数ORACLE_HOMEの値を、各インストールのOracleホーム・ディレクトリに変更します。また、環境変数ORACLEの値を、Oracleホーム・ディレクトリにインストールされているデータベースの所有者のユーザー名(通常はoracle)に変更します。

    #! /bin/sh  -x
    #
    # Change the value of ORACLE_HOME to specify the correct Oracle home
    # directory for your installation.
    
    ORACLE_HOME=/u01/app/oracle/product/11.1.0/db_1
    #
    # Change the value of ORACLE to the login name of the
    # oracle owner at your site.
    #
    ORACLE=oracle
    
    PATH=${PATH}:$ORACLE_HOME/bin
    HOST=`hostname`
    PLATFORM=`uname`
    export ORACLE_HOME PATH
    #
    if [ ! "$2" = "ORA_DB" ] ; then
       if [ "$PLATFORM" = "HP-UX" ] ; then
          remsh $HOST -l $ORACLE -n "$0 $1 ORA_DB"
          exit
       else
          rsh $HOST -l $ORACLE  $0 $1 ORA_DB
          exit
       fi
    fi
    #
    case $1 in
    'start')
            $ORACLE_HOME/bin/dbstart $ORACLE_HOME &
            ;;
    'stop')
            $ORACLE_HOME/bin/dbshut $ORACLE_HOME &
            ;;
    *)
            echo "usage: $0 {start|stop}"
            exit
            ;;
    esac
    #
    exit
    

    注意:

    このスクリプトで停止できるのは、パスワードが設定されていないOracle Net Listenerのみです。また、リスナー名がデフォルトのLISTENERではない場合、stopおよびstartコマンドでリスナー名を指定する必要があります。
    $ORACLE_HOME/bin/lsnrctl {start|stop} listener_name
    

  5. dboraファイルのグループをOSDBAグループ(通常はdba)に変更し、その権限を750に設定します。

    # chgrp dba dbora
    # chmod 750 dbora
    
  6. 次のように、dboraスクリプトへのシンボリック・リンクを、適切な起動レベルのスクリプト・ディレクトリに作成します。

    プラットフォームシンボリック・リンク・コマンド
    AIX
    # ln -s /etc/dbora /etc/rc.d/rc2.d/S99dbora
    # ln -s /etc/dbora /etc/rc.d/rc0.d/K01dbora
    
    HP-UX
    # ln -s /sbin/init.d/dbora /sbin/rc3.d/S990dbora
    # ln -s /sbin/init.d/dbora /sbin/rc0.d/K001dbora
    
    Linux
    # ln -s /etc/init.d/dbora /etc/rc.d/rc0.d/K01dbora
    # ln -s /etc/init.d/dbora /etc/rc.d/rc3.d/S99dbora
    # ln -s /etc/init.d/dbora /etc/rc.d/rc5.d/S99dbora
    
    Solaris
    # ln -s /etc/init.d/dbora /etc/rc0.d/K01dbora
    # ln -s /etc/init.d/dbora /etc/rc3.d/S99dbora
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值