時(shí)間:2015-06-28 00:00:00 來(lái)源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)
Solaris 10使用了SMF(服務(wù)管理設(shè)施)來(lái)集中管理各項(xiàng)系統(tǒng)及網(wǎng)絡(luò)服務(wù),其目的是降低系統(tǒng)管理的難度和降低系統(tǒng)出錯(cuò)的幾率。實(shí)踐表明,通過(guò)SMF管理平臺(tái)來(lái)配置和管理服務(wù),還是十分麻煩的,例如要把一個(gè)用戶自己訂制安裝的第三方軟件配置到SMF里進(jìn)行管理,要做很多的工作;另外,如果某個(gè)服務(wù)出現(xiàn)故障,將涉及服務(wù)本身和SMF這兩方面,這樣恢復(fù)起來(lái)難度相應(yīng)增大。個(gè)人偏見:系統(tǒng)管理的目標(biāo)是越簡(jiǎn)單越好—部署容易、維護(hù)簡(jiǎn)單及恢復(fù)快速。正好solaris 10系統(tǒng)有一個(gè)oracle 10g,就用它來(lái)做例子,來(lái)配置一個(gè) oracle的自動(dòng)運(yùn)行腳本。
先介紹一下系統(tǒng)環(huán)境:
系統(tǒng)版本 SunOS sery 5.10 Generic_118855-33 i86pc i386 i86pc
Oracle 版本 racle Database 10g Enterprise Edition Release 10.2.0.2.0 - Prod
Oracle 安裝路徑 /opt/oracle/product/10.2/db_1
dbstart 路徑 /opt/oracle/product/10.2/db_1/bin/dbstart
Oracle 自帶一個(gè)腳本dbstart,它的用途就是用來(lái)制作自動(dòng)運(yùn)行腳本。在沒(méi)有啟動(dòng)oracle實(shí)例之前,我們先手動(dòng)運(yùn)行腳本dbstart:
-bash-3.00$ dbstart
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: /opt/oracle/product/10.2/db_1/bin/dbstart ORACLE_HOME
提示沒(méi)有設(shè)置ORACL_HOME_LISTNER,接著給出這個(gè)命令的使用方法。用ps –aef | grep ora看oracle相關(guān)進(jìn)程是否起來(lái),哦,沒(méi)有起來(lái)!修改文件dbstart,找到ORACL_HOME_LISTNER這一行(還好,只有唯一的一行),它的默認(rèn)值為"$1",表示接受一個(gè)位置參數(shù)的意思,既然程序需要手動(dòng)加位置參數(shù)ORACLE_HOME,我們不妨把"$1"直接用"ORACLE_HOME"替換掉,即 ORACLE_HOME_LISTNER=$1 -à ORACLE_HOME_LISTNER=$ORACLE_HOME,保存后再來(lái)執(zhí)行腳本dbstart,順利執(zhí)行了,
-bash-3.00$ dbstart
-bash-3.00$ ps -aef | grep ora | grep -v grep
oracle?? 964?? 552?? 0 06:40:17 pts/1 0:00 ps -aef
oracle?? 552?? 546?? 0 06:08:08 pts/1 0:00 -bash
oracle?? 696???? 1?? 0 06:22:25 ????? 0:00 /opt/oracle/product/10.2/db_1/bin/tnslsnr LISTENER –inherit //監(jiān)聽器起來(lái)了
但沒(méi)有oracle進(jìn)程,只有oracle監(jiān)聽器起來(lái)了。還有一個(gè)文件/var/opt/oracle/oratab修要修改,這個(gè)文件是oracle安裝過(guò)程中,手動(dòng)執(zhí)行root.sh被創(chuàng)建的。打開這個(gè)文件,有效的配置只有一行,下面是某個(gè)系統(tǒng)上的輸出:
sery:/opt/oracle/product/10.2/db_1:N
根據(jù)注釋的提示,我們需要把它最后一個(gè)字段(以冒號(hào)":"為字段分割符)的值由"N"改為"Y",保存后再來(lái)執(zhí)行dbstart &。
-bash-3.00$ dbstart
Processing Database instance "sery": log file /opt/oracle/product/10.2/db_1/startup.log
-bash-3.00$ ps -eaf | grep ora
oracle? 1175???? 1?? 0 06:54:35 ????? 0:00 ora_j001_sery
oracle? 1173???? 1?? 1 06:54:35 ????? 0:01 ora_j000_sery
oracle? 1179???? 1?? 0 06:54:35 ????? 0:00 ora_j003_sery
oracle? 1177???? 1?? 0 06:54:35 ????? 0:00 ora_j002_sery
……(省略若干輸出)
這時(shí),oracle實(shí)例運(yùn)行起來(lái)了。根據(jù)這個(gè)經(jīng)驗(yàn),我們順便把文件dbshut這個(gè)文件也修改了。
一切準(zhǔn)備就緒,就可以開始寫運(yùn)行級(jí)別的自動(dòng)腳本了。在運(yùn)行級(jí)別3的目錄創(chuàng)建文件/etc/rc3.d/S33dbstart,其內(nèi)容如下:
#!/bin/bash
su - oracle -c /opt/oracle/product/10.2/db_1/bin/dbstart& //少選項(xiàng)-c將不會(huì)執(zhí)行這個(gè)腳本,-c command
保存后在給它執(zhí)行權(quán)限。同理在運(yùn)行級(jí)別S的目錄建文件 /etc/rcS.d/K33dbshut,文件內(nèi)容如下:
#!/bin/bash
su - oracle -c /opt/oracle/product/10.2/db_1/bin/dbshut &
執(zhí)行命令init 6重啟solaris 10,看oracle實(shí)例及監(jiān)聽器是否在正常運(yùn)行。當(dāng)然,如果不用運(yùn)行級(jí)別而用服務(wù)管理設(shè)施SMF來(lái)管理oracle服務(wù)的話,還有好多步驟修要完成,有興趣的可以去試試。
本文出自 "sery" 博客,請(qǐng)務(wù)必保留此出處http://sery.blog.51cto.com/10037/27896
關(guān)鍵詞標(biāo)簽:Oracle 10g,solaris 1
相關(guān)閱讀
熱門文章 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索
人氣排行 oracle中使用SQL語(yǔ)句修改字段類型-oracle修改SQL語(yǔ)句案例 Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句 ORACLE和SQL語(yǔ)法區(qū)別歸納(1) oracle grant 授權(quán)語(yǔ)句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法