熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle10g在solaris10下的自動運行腳本

2013-11-13 15:42:14  來源: Oracle 

  Solaris 使用了SMF(服務管理設施)來集中管理各項系統及網絡服務其目的是降低系統管理的難度和降低系統出錯的幾率實踐表明通過SMF管理平台來配置和管理服務還是十分麻煩的例如要把一個用戶自己訂制安裝的第三方軟件配置到SMF裡進行管理要做很多的工作另外如果某個服務出現故障將涉及服務本身和SMF這兩方面這樣恢復起來難度相應增大個人偏見系統管理的目標是越簡單越好—部署容易維護簡單及恢復快速正好solaris 系統有一個oracle g就用它來做例子來配置一個 oracle的自動運行腳本

  先介紹一下系統環境

  系統版本 SunOS sery Generic_ ipc i ipc

  Oracle 版本 racle Database g Enterprise Edition Release Prod

  Oracle 安裝路徑 /opt/oracle/product//db_

  dbstart 路徑 /opt/oracle/product//db_/bin/dbstart

  Oracle 自帶一個腳本dbstart它的用途就是用來制作自動運行腳本在沒有啟動oracle實例之前我們先手動運行腳本dbstart:

  bash$ dbstart

  ORACLE_HOME_LISTNER is not SET unable to autostart Oracle Net Listener

  Usage: /opt/oracle/product//db_/bin/dbstart ORACLE_HOME

  提示沒有設置ORACL_HOME_LISTNER接著給出這個命令的使用方法用ps –aef | grep ora看oracle相關進程是否起來沒有起來!修改文件dbstart找到ORACL_HOME_LISTNER這一行(還好只有唯一的一行)它的默認值為$表示接受一個位置參數的意思既然程序需要手動加位置參數ORACLE_HOME我們不妨把$直接用ORACLE_HOME替換掉即 ORACLE_HOME_LISTNER=$ à ORACLE_HOME_LISTNER=$ORACLE_HOME保存後再來執行腳本dbstart順利執行了

  bash$ dbstart

  bash$ ps aef | grep ora | grep v grep

  oracle         :: pts/       : ps aef

  oracle         :: pts/       : bash

  oracle           :: ?           : /opt/oracle/product//db_/bin/tnslsnr LISTENER –inherit //監聽器起來了

  但沒有oracle進程只有oracle監聽器起來了還有一個文件/var/opt/oracle/oratab修要修改這個文件是oracle安裝過程中手動執行rootsh被創建的打開這個文件有效的配置只有一行下面是某個系統上的輸出

  sery:/opt/oracle/product//db_:N

  根據注釋的提示我們需要把它最後一個字段(以冒號為字段分割符)的值由N改為Y保存後再來執行dbstart &

  bash$ dbstart

  Processing Database instance sery: log file /opt/oracle/product//db_/startuplog

  bash$ ps eaf | grep ora

  oracle          :: ?           : ora_j_sery

  oracle          :: ?           : ora_j_sery

  oracle          :: ?           : ora_j_sery

  oracle          :: ?           : ora_j_sery

  ……(省略若干輸出)

  這時oracle實例運行起來了根據這個經驗我們順便把文件dbshut這個文件也修改了

  一切准備就緒就可以開始寫運行級別的自動腳本了在運行級別的目錄創建文件/etc/rcd/Sdbstart其內容如下

  #!/bin/bash

  su oracle c /opt/oracle/product//db_/bin/dbstart& //少選項c將不會執行這個腳本c command

  保存後在給它執行權限同理在運行級別S的目錄建文件 /etc/rcSd/Kdbshut文件內容如下

  #!/bin/bash

  su oracle c /opt/oracle/product//db_/bin/dbshut &

  執行命令init 重啟solaris 看oracle實例及監聽器是否在正常運行當然如果不用運行級別而用服務管理設施SMF來管理oracle服務的話還有好多步驟修要完成有興趣的可以去試試


From:http://tw.wingwit.com/Article/program/Oracle/201311/17165.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.