當前位置:首頁 » 數據倉庫 » oracle資料庫啟動過程
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oracle資料庫啟動過程

發布時間: 2023-06-06 00:33:18

① linux下怎麼啟動oracle資料庫,命令是什麼

啟動oracle資料庫步驟:x0dx0a首先使用oracle用戶登錄Linux,然後在shell命令行中執行下面的命令:x0dx0a第一步:打開Oracle監聽x0dx0a$ lsnrctl startx0dx0a第二步:進入sqlplusx0dx0a$ sqlplus /nologx0dx0aSQL>x0dx0a第三步:使用sysdab角色登錄sqlplusx0dx0aSQL> conn /as sysdbax0dx0a第四步:啟動資料庫x0dx0aSQL> startupx0dx0a經過上面的四個步驟,oracle資料庫就可以啟動了。x0dx0a關閉資料庫用 shutdown 是要等待事物結束才關閉,強制關閉用 shutdown abort。

② ORACLE資料庫啟動與關閉的步驟

oracle的啟動和關閉
一、sql*plus方式:
用sql*plus來連接到Oracle
Sqlplus /nolog 是以不連接資料庫的方式啟動sql*plus
Connect /as sysdba 是以DBA身份連接到oracle
or35.gif
. 啟動
or36.gif
Startup就可以啟動了。
不過oracle啟動模式有3種:
l Startup nomount (nomount模式)啟動實例不載入資料庫。
l Startup mount (mount模式)啟動實例載入資料庫但不打開資料庫
l Startup (open 模式)啟動實例載入並打開資料庫,就是我們上面所用的命令
Nomount模式中oracle僅為實例創建各種內存結構和服務進程,不會打開任何資料庫文件,
所以說:
1) 創建新資料庫
2) 重建控制文件
這2種操作都必須在這個模式下進行。
Mount模式中oracle只裝載資料庫但不打開資料庫,所以說:
1) 重命名數據文件
2) 添加、刪除和重命名重做日子文件
3) 執行資料庫完全恢復操作
4) 改變資料庫的歸檔模式
這4種操作都必須在這個模式下進行
Open模式(就是我們上面的startup不帶任何參數的)正常啟動。
當然這3種模式之間可以轉換:
Alter database mount(nomount模式)—〉alter database open(mount 模式)—〉(open模式)
當然還有其它一些情況,在我們open模式下可以將資料庫設置為非受限狀態和受限狀態
在受限狀態下,只有DBA才能訪問資料庫,所以說:
1) 執行數據導入導出
2) 使用sql*loader提取外部數據
3) 需要暫時拒絕普通用戶訪問資料庫
4) 進行資料庫移植或者升級操作
這4種操作都必須在這個狀態下進行
在打開資料庫時使用startup restrict命令即進入受限狀態。
or37.gif
使用alter system disable restricted session命令即可以將受限狀態改變為非受限狀態。
or38.gif
使用alter system enable restricted session命令可以將非受限狀態變為受限狀態
or39.gif
使用alter database open read only可以使資料庫進入只讀狀態。
使用alter database open read write 可以使資料庫進入讀寫狀態。
當然在某些情況下可能是用上述各種啟動方式都無法成功啟動資料庫,這個時候就要使用startup force命令來強行啟動資料庫。當然誰都不想碰到這種情況:)
or40.gif
c.關閉資料庫
1)正常關閉 shutdown
2) 立即關閉 shutdown immediate
3) 關閉事務 shutdown transactional
4) 強行關閉 shutdown abort,當然誰都不想碰到這種情況。
二、OEM為例
Oracle Enterprise Management(OEM),
跟第一小節講的Sqlplus /nolog ,Connect /as sysdba 這2個命令差不多的操作如圖:
or29.gif
or30.gif
or31.gif
按照上面的一步步操作就能夠連接到資料庫。
下面是如何啟動和關閉資料庫:
or32.gif
點擊我們前幾章創建的ORADB01這個資料庫樹中的配置選項,這個裡面的:
1)已啟動 對應 Nomount模式
2)已轉載 對應 mount模式
3)打開 對應 open模式
當你點擊應有按鈕之後就會進入如下對話框
or33.gif
1)正常 對應 正常關閉 shutdown
2) 立即 對應 立即關閉 shutdown immediate
3) 事務處理 對應 關閉事務 shutdown transactional
4) 中止 對應 強行關閉 shutdown abort
確定之後出現如下對話框
or34.gif
限制對資料庫訪問 對應 alter system disable restricted session
alter system enable restricted session
只讀模式 對應 alter database open read only
alter database open read write
簡單吧,sql*plus的一大堆命令到OEM中變成了幾個按鈕罷了。
3.windows控制台
or41.gif
這個熟悉吧:
oracle ************Agent 用於OEM管理結構
oracle************HTTPSERVER oracle Web伺服器
oracle ************ManagementServer 用於OEM管理結構
oracle ************ TNSListener oracle網路結構的伺服器端進程
oracle ************OEMREP 資料檔案庫文件
oracle ************ORADB001 用戶創建的資料庫
我一般都把所有的服務全部選成手動啟動,如果全開,內存要用掉700M.............

③ 如何在Windows下啟動Oracle資料庫服務

1、啟動Oracle相關系統服務

在Windows系統服務中,啟動OracleServiceORCL和OracleOraDb11g_home1TNSListener

可以使用管理員許可權執行以下命令

netstartOracleServiceORCL
netstartOracleOraDb11g_home1TNSListener

通常上面兩個服務啟動後,資料庫服務會自動啟動。

如果資料庫服務未啟動,需要按下面步驟手工啟動資料庫服務。

2、手工啟動資料庫服務

在命令提示符下鍵入以下命令

sqlplus/assysdba
startup

④ 啟動oracle資料庫命令

(1)startup(用sys用戶或者其他擁有啟動資料庫許可權的用戶登錄資料庫軟體,然後執行該命令即可,如果存在多個實例,請在啟動前確認SID),資料庫有三個狀態nomount,mount,和open,默認開啟到open,如果開啟到另外兩個狀態,那麼可以通過alter命令改變狀態。
(2)如果是rac中啟停資料庫節點,那麼有專門的命令srvcrl(這個僅僅是命令的操作符,後面有參數的,參數我就不寫了,具體可以查一下,網上很多與偶內容的),另外還有crscrl(啟停crs服務的命令,同樣也是操作符,後面有參數的,這里也不寫了,自己查一下就可以了)
(3)啟動資料庫還有一個命令就是啟動監聽,lsnrctl命令(後面同樣有參數,能啟動停止,也能查詢監聽狀態,這個監聽的基本命令)

⑤ Oracle在正常啟動過程中分別有哪三個階段,並分別讀取資料庫的哪些

樓主您好
1.Oracle啟動模式的nomount階段
nomount,在這個啟動階段里,Oracle主要做的事情,就是找到相關的啟動參數文件,並且打開啟動參數文件,根據啟動參數里記錄的參數值。

啟動實例,並且啟動成功的話,打開告警文件alert_.ora文件,這個文件默認在ORACLE_BASE/admin/SID
/bmp下,並且記錄相關的啟動信息。如果在startup里指定了pfile=''的話,Oracle將從你指定的文件作為啟動參數文件,如果是沒有指定pfile的話,Oracle會先去默認目錄($ORACLE_HOME/)下找spfileSID.ora,如果沒有找到,則找

spfile.ora,如果還是沒有,找initSID.ora,這個就是以前的靜態參數文件了,如果沒有則找init.ora;如果沒有找到的話,這時候,啟動就會有,找不到參數文件的錯誤,同時會動態注冊實例名到監聽服務里。

當然,在使用startup pfile=''前,我們需要先用create pfile from spfile;把實例的動態參數文件先export成靜態的文本參數文件,然後根據合適的參數修改這個文件,修改好了一個在用這個pfile啟動。

2.Oracle啟動模式的mount階段

當達到了nomount階段以後,資料庫就只能一步一步的來進行啟動了,他的下一個啟動的階段,就是mount。我們通過alter
database mount;來從nomount階段或者通過startup
mount來到達這個階段,到達這個階段,Oracle從啟動參數文件里找到控制文件的路徑參數值,找到所有的控制文件,然後打開讀取控制文件的信息,控制文件里記錄了各種表空間文件,日誌文件的信息,以及資料庫的字元集,其實就是控制文件里的記錄(控制文件是可以指定多個的,只要有個一個不能成功讀取,這個階段將會失敗),這時,資料庫已經讀取了相關系統文件的信息,也讀取了字元集信息,但是僅僅只是讀取,這些系統文件,並沒有真正的載入到資料庫里。

曾經有人啟動到mount的時候,出現問題,最後一看原來是control文件這里已經被刪除掉了,解決的辦法,就是從備份的控制文件來一個過來,然後做恢復就可以了。如果沒有備份,在nomount下,新建一個controlfile,就可以了。

3.Oracle啟動模式的open階段

mount階段結束後,資料庫體系的所有信息已經讀取全了,我們知道了redo文件,數據文件的信息,但是還沒有載入,到open狀態,資料庫讀取所有的文件,如果有一個文件不能成功讀取,open階段就會失敗。這時候,我們能夠解決的就是通過錯誤的提示,進行數據恢復,或者錯誤排查。

這一個階段的錯誤的各種原因最多,處理起來的方式也相對於前面的要復雜的多,不過基本上都是和數據文件,日誌文件缺失,數據scn不一致,等等有關,這時我們需要做的就是根據錯誤的提示來進行相應的數據恢復,和數據排查,這塊是資料庫恢復最有趣的地方。

SMON是系統監視器(System
Monitor)的縮寫。如果Oracle實例失敗,則在SGA中的任何沒有寫到磁碟中的數據都會丟失。有許多情況可能引起Oracle實例失敗,例如,操作系統的崩潰就會引起Oracle實例的失敗。當實例失敗之後,如果重新打開該資料庫,則背景進程SMON自動執行實例的復原操作。
DBWR是資料庫書寫器(Database
Write)的縮寫.該伺服器進程在緩沖存儲區中記錄所有的變化和數據,DBWR把來自資料庫的緩沖存儲區中的臟數據寫到數據文件中,以便確保資料庫緩沖存儲區中有足夠的空閑的緩沖存儲區。臟數據就是正在使用但是沒有寫到數據文件中的數據。
LGWR是日誌書寫器(Log Write)的縮寫。LGWR負責把重做日誌緩沖存儲區中的數據寫入到重做日誌文件中。
CKPT進程是檢查點(Checkpoint)的縮寫。該進程可以用來同步化資料庫的文件,它可以把日誌中的文件寫入到資料庫中。
PMON是進程監視器(Process Monitor)的縮寫。當取消當前的事務,或釋放進程佔用的鎖以及釋放其它資源之後,PMON進程清空那些失敗的進程。

⑥ 我在linuxi下安裝的oracle資料庫和客戶端,怎麼啟動資料庫

su - oracle
sqlplus
/ as sysdba
startup

⑦ 怎樣啟動和關閉oracle資料庫

1、由於oracle運行在Linux系統裡面,第一步,我們要連接Linux系統。