1、首先打開命令行窗口,切換到su - oracle,啟動(dòng)數(shù)據(jù)庫監(jiān)聽。
成都創(chuàng)新互聯(lián),為您提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)站營銷推廣、網(wǎng)站開發(fā)設(shè)計(jì),對(duì)服務(wù)墻體彩繪等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場的競爭激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
2、打開sqlplus。
3、用sys賬戶以sysdba的身份登錄。
4、輸入sys用戶的密碼,然后按下enter。
5、登錄成功后,輸入startup。
6、稍等片刻,可以看到數(shù)據(jù)庫實(shí)例已經(jīng)運(yùn)行了。
我用的是Redhat Linux,用下面的步驟來啟動(dòng)oracle數(shù)據(jù)庫。
首先使用oracle用戶登錄Linux,然后在shell命令行中執(zhí)行下面的命令:
第一步:打開Oracle監(jiān)聽
$ lsnrctl start
第二步:進(jìn)入sqlplus
$ sqlplus /nolog
SQL
第三步:使用sysdab角色登錄sqlplus
SQL conn /as sysdba
第四步:啟動(dòng)數(shù)據(jù)庫
SQL startup
經(jīng)過上面的四個(gè)步驟,oracle數(shù)據(jù)庫就可以啟動(dòng)了。
樓主您好
1.Oracle啟動(dòng)模式的nomount階段
nomount,在這個(gè)啟動(dòng)階段里,Oracle主要做的事情,就是找到相關(guān)的啟動(dòng)參數(shù)文件,并且打開啟動(dòng)參數(shù)文件,根據(jù)啟動(dòng)參數(shù)里記錄的參數(shù)值。
啟動(dòng)實(shí)例,并且啟動(dòng)成功的話,打開告警文件alert_.ora文件,這個(gè)文件默認(rèn)在ORACLE_BASE/admin/SID
/bdump下,并且記錄相關(guān)的啟動(dòng)信息。如果在startup里指定了pfile=''的話,Oracle將從你指定的文件作為啟動(dòng)參數(shù)文件,如果是沒有指定pfile的話,Oracle會(huì)先去默認(rèn)目錄($ORACLE_HOME/)下找spfileSID.ora,如果沒有找到,則找
spfile.ora,如果還是沒有,找initSID.ora,這個(gè)就是以前的靜態(tài)參數(shù)文件了,如果沒有則找init.ora;如果沒有找到的話,這時(shí)候,啟動(dòng)就會(huì)有,找不到參數(shù)文件的錯(cuò)誤,同時(shí)會(huì)動(dòng)態(tài)注冊(cè)實(shí)例名到監(jiān)聽服務(wù)里。
當(dāng)然,在使用startup pfile=''前,我們需要先用create pfile from spfile;把實(shí)例的動(dòng)態(tài)參數(shù)文件先export成靜態(tài)的文本參數(shù)文件,然后根據(jù)合適的參數(shù)修改這個(gè)文件,修改好了一個(gè)在用這個(gè)pfile啟動(dòng)。
2.Oracle啟動(dòng)模式的mount階段
當(dāng)達(dá)到了nomount階段以后,數(shù)據(jù)庫就只能一步一步的來進(jìn)行啟動(dòng)了,他的下一個(gè)啟動(dòng)的階段,就是mount。我們通過alter
database mount;來從nomount階段或者通過startup
mount來到達(dá)這個(gè)階段,到達(dá)這個(gè)階段,Oracle從啟動(dòng)參數(shù)文件里找到控制文件的路徑參數(shù)值,找到所有的控制文件,然后打開讀取控制文件的信息,控制文件里記錄了各種表空間文件,日志文件的信息,以及數(shù)據(jù)庫的字符集,其實(shí)就是控制文件里的記錄(控制文件是可以指定多個(gè)的,只要有個(gè)一個(gè)不能成功讀取,這個(gè)階段將會(huì)失敗),這時(shí),數(shù)據(jù)庫已經(jīng)讀取了相關(guān)系統(tǒng)文件的信息,也讀取了字符集信息,但是僅僅只是讀取,這些系統(tǒng)文件,并沒有真正的加載到數(shù)據(jù)庫里。
曾經(jīng)有人啟動(dòng)到mount的時(shí)候,出現(xiàn)問題,最后一看原來是control文件這里已經(jīng)被刪除掉了,解決的辦法,就是從備份的控制文件來一個(gè)過來,然后做恢復(fù)就可以了。如果沒有備份,在nomount下,新建一個(gè)controlfile,就可以了。
3.Oracle啟動(dòng)模式的open階段
mount階段結(jié)束后,數(shù)據(jù)庫體系的所有信息已經(jīng)讀取全了,我們知道了redo文件,數(shù)據(jù)文件的信息,但是還沒有加載,到open狀態(tài),數(shù)據(jù)庫讀取所有的文件,如果有一個(gè)文件不能成功讀取,open階段就會(huì)失敗。這時(shí)候,我們能夠解決的就是通過錯(cuò)誤的提示,進(jìn)行數(shù)據(jù)恢復(fù),或者錯(cuò)誤排查。
這一個(gè)階段的錯(cuò)誤的各種原因最多,處理起來的方式也相對(duì)于前面的要復(fù)雜的多,不過基本上都是和數(shù)據(jù)文件,日志文件缺失,數(shù)據(jù)scn不一致,等等有關(guān),這時(shí)我們需要做的就是根據(jù)錯(cuò)誤的提示來進(jìn)行相應(yīng)的數(shù)據(jù)恢復(fù),和數(shù)據(jù)排查,這塊是數(shù)據(jù)庫恢復(fù)最有趣的地方。
SMON是系統(tǒng)監(jiān)視器(System
Monitor)的縮寫。如果Oracle實(shí)例失敗,則在SGA中的任何沒有寫到磁盤中的數(shù)據(jù)都會(huì)丟失。有許多情況可能引起Oracle實(shí)例失敗,例如,操作系統(tǒng)的崩潰就會(huì)引起Oracle實(shí)例的失敗。當(dāng)實(shí)例失敗之后,如果重新打開該數(shù)據(jù)庫,則背景進(jìn)程SMON自動(dòng)執(zhí)行實(shí)例的復(fù)原操作。
DBWR是數(shù)據(jù)庫書寫器(Database
Write)的縮寫.該服務(wù)器進(jìn)程在緩沖存儲(chǔ)區(qū)中記錄所有的變化和數(shù)據(jù),DBWR把來自數(shù)據(jù)庫的緩沖存儲(chǔ)區(qū)中的臟數(shù)據(jù)寫到數(shù)據(jù)文件中,以便確保數(shù)據(jù)庫緩沖存儲(chǔ)區(qū)中有足夠的空閑的緩沖存儲(chǔ)區(qū)。臟數(shù)據(jù)就是正在使用但是沒有寫到數(shù)據(jù)文件中的數(shù)據(jù)。
LGWR是日志書寫器(Log Write)的縮寫。LGWR負(fù)責(zé)把重做日志緩沖存儲(chǔ)區(qū)中的數(shù)據(jù)寫入到重做日志文件中。
CKPT進(jìn)程是檢查點(diǎn)(Checkpoint)的縮寫。該進(jìn)程可以用來同步化數(shù)據(jù)庫的文件,它可以把日志中的文件寫入到數(shù)據(jù)庫中。
PMON是進(jìn)程監(jiān)視器(Process Monitor)的縮寫。當(dāng)取消當(dāng)前的事務(wù),或釋放進(jìn)程占用的鎖以及釋放其它資源之后,PMON進(jìn)程清空那些失敗的進(jìn)程。
打開一個(gè)terminal窗口,先切換到oracle用戶環(huán)境 輸入命令emctl start dbconsole啟動(dòng)oracle的em服務(wù) 等待em啟動(dòng),這是啟動(dòng)過程。 這是em啟動(dòng)的日志文件 啟動(dòng)完成后,在瀏覽器中打開oracle的em控制臺(tái),打開oem成功 這是登錄em后的界面
oracle的啟動(dòng)和關(guān)閉
一、sql*plus方式:
用sql*plus來連接到Oracle
Sqlplus /nolog 是以不連接數(shù)據(jù)庫的方式啟動(dòng)sql*plus
Connect /as sysdba 是以DBA身份連接到oracle
or35.gif
. 啟動(dòng)
or36.gif
Startup就可以啟動(dòng)了。
不過oracle啟動(dòng)模式有3種:
l Startup nomount (nomount模式)啟動(dòng)實(shí)例不加載數(shù)據(jù)庫。
l Startup mount (mount模式)啟動(dòng)實(shí)例加載數(shù)據(jù)庫但不打開數(shù)據(jù)庫
l Startup (open 模式)啟動(dòng)實(shí)例加載并打開數(shù)據(jù)庫,就是我們上面所用的命令
Nomount模式中oracle僅為實(shí)例創(chuàng)建各種內(nèi)存結(jié)構(gòu)和服務(wù)進(jìn)程,不會(huì)打開任何數(shù)據(jù)庫文件,
所以說:
1) 創(chuàng)建新數(shù)據(jù)庫
2) 重建控制文件
這2種操作都必須在這個(gè)模式下進(jìn)行。
Mount模式中oracle只裝載數(shù)據(jù)庫但不打開數(shù)據(jù)庫,所以說:
1) 重命名數(shù)據(jù)文件
2) 添加、刪除和重命名重做日子文件
3) 執(zhí)行數(shù)據(jù)庫完全恢復(fù)操作
4) 改變數(shù)據(jù)庫的歸檔模式
這4種操作都必須在這個(gè)模式下進(jìn)行
Open模式(就是我們上面的startup不帶任何參數(shù)的)正常啟動(dòng)。
當(dāng)然這3種模式之間可以轉(zhuǎn)換:
Alter database mount(nomount模式)—〉alter database open(mount 模式)—〉(open模式)
當(dāng)然還有其它一些情況,在我們open模式下可以將數(shù)據(jù)庫設(shè)置為非受限狀態(tài)和受限狀態(tài)
在受限狀態(tài)下,只有DBA才能訪問數(shù)據(jù)庫,所以說:
1) 執(zhí)行數(shù)據(jù)導(dǎo)入導(dǎo)出
2) 使用sql*loader提取外部數(shù)據(jù)
3) 需要暫時(shí)拒絕普通用戶訪問數(shù)據(jù)庫
4) 進(jìn)行數(shù)據(jù)庫移植或者升級(jí)操作
這4種操作都必須在這個(gè)狀態(tài)下進(jìn)行
在打開數(shù)據(jù)庫時(shí)使用startup restrict命令即進(jìn)入受限狀態(tài)。
or37.gif
使用alter system disable restricted session命令即可以將受限狀態(tài)改變?yōu)榉鞘芟逘顟B(tài)。
or38.gif
使用alter system enable restricted session命令可以將非受限狀態(tài)變?yōu)槭芟逘顟B(tài)
or39.gif
使用alter database open read only可以使數(shù)據(jù)庫進(jìn)入只讀狀態(tài)。
使用alter database open read write 可以使數(shù)據(jù)庫進(jìn)入讀寫狀態(tài)。
當(dāng)然在某些情況下可能是用上述各種啟動(dòng)方式都無法成功啟動(dòng)數(shù)據(jù)庫,這個(gè)時(shí)候就要使用startup force命令來強(qiáng)行啟動(dòng)數(shù)據(jù)庫。當(dāng)然誰都不想碰到這種情況:)
or40.gif
c.關(guān)閉數(shù)據(jù)庫
1)正常關(guān)閉 shutdown
2) 立即關(guān)閉 shutdown immediate
3) 關(guān)閉事務(wù) shutdown transactional
4) 強(qiáng)行關(guān)閉 shutdown abort,當(dāng)然誰都不想碰到這種情況。
二、OEM為例
Oracle Enterprise Management(OEM),
跟第一小節(jié)講的Sqlplus /nolog ,Connect /as sysdba 這2個(gè)命令差不多的操作如圖:
or29.gif
or30.gif
or31.gif
按照上面的一步步操作就能夠連接到數(shù)據(jù)庫。
下面是如何啟動(dòng)和關(guān)閉數(shù)據(jù)庫:
or32.gif
點(diǎn)擊我們前幾章創(chuàng)建的ORADB01這個(gè)數(shù)據(jù)庫樹中的配置選項(xiàng),這個(gè)里面的:
1)已啟動(dòng) 對(duì)應(yīng) Nomount模式
2)已轉(zhuǎn)載 對(duì)應(yīng) mount模式
3)打開 對(duì)應(yīng) open模式
當(dāng)你點(diǎn)擊應(yīng)有按鈕之后就會(huì)進(jìn)入如下對(duì)話框
or33.gif
1)正常 對(duì)應(yīng) 正常關(guān)閉 shutdown
2) 立即 對(duì)應(yīng) 立即關(guān)閉 shutdown immediate
3) 事務(wù)處理 對(duì)應(yīng) 關(guān)閉事務(wù) shutdown transactional
4) 中止 對(duì)應(yīng) 強(qiáng)行關(guān)閉 shutdown abort
確定之后出現(xiàn)如下對(duì)話框
or34.gif
限制對(duì)數(shù)據(jù)庫訪問 對(duì)應(yīng) alter system disable restricted session
alter system enable restricted session
只讀模式 對(duì)應(yīng) alter database open read only
alter database open read write
簡單吧,sql*plus的一大堆命令到OEM中變成了幾個(gè)按鈕罷了。
3.windows控制臺(tái)
or41.gif
這個(gè)熟悉吧:
oracle ************Agent 用于OEM管理結(jié)構(gòu)
oracle************HTTPSERVER oracle Web服務(wù)器
oracle ************ManagementServer 用于OEM管理結(jié)構(gòu)
oracle ************ TNSListener oracle網(wǎng)絡(luò)結(jié)構(gòu)的服務(wù)器端進(jìn)程
oracle ************OEMREP 資料檔案庫文件
oracle ************ORADB001 用戶創(chuàng)建的數(shù)據(jù)庫
我一般都把所有的服務(wù)全部選成手動(dòng)啟動(dòng),如果全開,內(nèi)存要用掉700M.............