關閉資料庫
與資料庫啟動一樣,有幾個可供選擇的選項用於關閉資料庫。無論在什麼情況下,讀者都需要弄清楚這些關閉選項
關閉資料庫的語法是:shutdown [ normal | transactional | immediate | abort ]
注意:如果不在windows服務中事先關閉oracledbcontrolsid,則使用shutdown或shutdown normal 來關閉資料庫時沒有相應結果,但其他幾個選項有響應結果。
一、 normal(正常)選項
shutdown 和 shutdown normal 作用相同,使用帶有normal選項的shutdown語句將以正常方式關閉資料庫。用normal選項時,oracle將執行如下操作:
1、 阻止任何使用者建立新的連線
2、 等待當前所有正在建立連線的使用者主動斷開連線。正在連線的使用者能夠繼續他們當前的工作,甚至能夠提交新的事務。
3、 一旦所有的使用者都斷開連線,才能進行關閉、解除安裝資料庫,並終止例程。
注意:按這個選項關閉資料庫,則在下次啟動資料庫時不需要進行任何恢復操作。
二、 transactional(事務處理)選項
transactional選項比normal選項稍微主動些,他能在盡可能短的時間內關閉資料庫。按transactional選項關閉資料庫時,oracle將等待所有未提交的事務完成後再關閉資料庫。用transactional選項關閉資料庫時,oracle將執行如下操作:
1、 阻止任何使用者建立新的連線,同時阻止當前連線的使用者開始任何新的事務。
2、 等待所有當前未提交的活動事務提交完畢,然後立即斷開使用者的連線。
3、 一旦所有的使用者都斷開連線,才進行關閉、解除安裝資料庫,並終止例程 。
注意:按這個選項關閉資料庫,則在下次啟動資料庫時不需要進行任何恢復操作。
三、 immediate(立即)選項
通常在以下幾種情況下需要使用該選項來關閉資料庫
1、 即將啟動自動資料庫備份操作
2、 即將發生電力**中斷
3、 資料庫本身或者某個資料庫應用程式發生異常,並且這時候無法通知使用者主動斷開連線,或者資料庫使用者本身無法制定斷開操作
使用immediate選項關閉資料庫時,oracle將執行如下操作:
1、 阻止任何使用者建立新的連線,同時阻止當前連線的使用者開始任何新的事務。
2、 任何當前未提交的事務均被退回
3、 oracle不再等待使用者主動斷開連線,而是直接關閉、解除安裝資料庫,並終止例程。
注意:按這個選項關閉資料庫,則在下次啟動資料庫時不需要進行任何恢復操作。
四、 abort(終止)選項
通常在以下情況下可以考慮使用abort選項來關閉資料庫
1、 資料庫本身或者某個資料庫應用程式發生異常,並且使用其他選項均無效
2、 出現緊急情況,需要立刻關閉資料庫
3、 在啟動資料庫例程時產生錯誤
用abort選項來關閉資料庫時,oracle將執行如下操作:
1、 阻止任何使用者建立新的連線,同時阻止當前連線的使用者開始任何新的事務。
2、 立即結束當前正在執行的sql語句
3、 任何未提交的事務均不被回退
4、 立即斷開所有的使用者的連線,關閉、解除安裝資料庫,並終止例程
啟動資料庫
資料庫有三種啟動模式,分別代表啟動資料庫的三個步驟。當資料庫管理員使用startup命令時,可以指定不同的選項來決定將資料庫的啟動推進到哪個啟動模式。在進入某個模式後,可以使用alter database命令來將資料庫提公升到更高的啟動模式,但是不能使資料庫降低到前面的啟動模式。
啟動模式
說明
對應的介面提示資訊
nomount
啟動例程,但不裝載資料庫,即只完成啟動步驟的第一步
oracle例程已經啟動
mount
啟動例程,裝載資料庫,但不開啟資料庫,即只完成啟動步驟的第一步和第二步
oracle例程已經啟動
資料庫裝載完畢
open
啟動例程,裝載資料庫,開啟資料庫,即完成全部的三個步驟
oracle例程已經啟動
資料庫裝載完畢
資料庫已經開啟
啟動資料庫的語法是:startup [ nomount | mount | open | forse ] [ restrict ] [ pfile = 'pfile_name' ];
一、 nomount選項
該選項只建立例程,但不裝在資料庫。oracle讀取引數檔案,僅為例程建立各種記憶體結構和後台服務程序,使用者能夠與資料庫進行通訊,但不能使用資料庫中的任何檔案。
如果要執行下列維護工作,就必須使用該選項來啟動資料庫:
1、 執行乙個建立新資料庫的指令碼
2、 重建控制檔案
二、 mount選項
該選項不僅建立歷程,還裝載資料庫,但卻不開啟資料庫。oracle讀取控制檔案,並從中獲取資料庫名稱、資料檔案的位置、名稱等資料庫物理結構的資訊,為下一步開啟資料庫做好準備。
在這種模式下,僅資料庫管理員可以通過部分命令修改資料庫,使用者還無法與資料庫建立連線或會話。這在進行一些特定的資料庫維護工作時是十分必要的。
如果要執行下列維護工作,就必須使用該選項啟動資料庫:
1、 重新命名、增加、刪除資料檔案和重做日誌檔案
2、 執行資料庫的完全恢復
3、 改變資料庫的歸檔模式
三、 open選項
該選項不僅建立例程,還裝載資料庫,並且開啟資料庫。這是正常的啟動模式。如果startup語句沒有指定任何選項,那就是使用該選項進行德啟動。
將資料庫設定為開啟狀態後,任何具有create session許可權的使用者都能連線到資料庫,並且進行常規的資料訪問操作。
四、 forse選項
如果在正常方式啟動資料庫時遇到了困難,則可以使用forse選項啟動。forse選項與正常啟動選項之間的差別在於無論資料庫處於什麼模式,都可以使用該選項,即forse選項首先關閉異常資料庫,然後在重新啟動他,而不需要事先用shutdown語句關閉資料庫。
五、 restrict選項
用該選項啟動資料庫時,會將資料庫啟動到open模式,但此時只有擁有restricted session 許可權的使用者才能訪問資料庫。如果需要在資料庫處於open模式下執行維護任務,又要保證此時其他使用者不能再資料庫上建立連線和執行任務,則需要使用restrict 選項來開啟資料庫,以便完成以下任務:
1、 執行資料庫資料的匯入或匯出操作
2、 執行資料庫裝載操作(用sql*loader)
3、 暫時阻止一般的使用者使用資料
4、 進行資料庫移植或公升級
當工作進行完畢後,可以使用 alter system disable restrict session 語句來禁用restricted session,以便一般使用者能連線並使用資料庫。
六、 pfile選項
資料庫例程在啟動的時候必須讀取乙個初始化引數檔案,oracle必須從初始化引數檔案中獲得有關例程的引數配置資訊。如果在執行startup語句時沒有指定pfile 選項,oracle將首先讀取預設位置的伺服器初始化引數檔案(spfile),如果沒有找到預設的伺服器初始化引數檔案,oracle將繼續讀取預設的文字初始化引數檔案(pfile),如果也沒有找到文字初始化引數檔案,啟動就會失敗。
使用startup語句時可以通過pfile選項指定乙個文字初始化引數檔案。
SQLPlus 啟動與關閉Oracle資料庫
sqlplus 中啟動與關閉資料庫 啟動sqlplus,以sysdba角色登入資料庫。以windows 7 平台為例,首先啟動oracleservicesid sid為資料庫名字 服務,否則sqlplus無法登入。登入後在sqlplus中使用命令關閉資料庫 此時oracleservicesid服務不...
在SQLPLUS啟動和停止Oracle資料庫
在sqlplus啟動和停止oracle資料庫 1 啟動 sql connect system manager as sysdba sql startup open 資料庫例項名 另一種啟動方法是 先安裝該資料庫,然後通過alter database命令開啟.sql connect system ma...
在SQLPLUS啟動和停止Oracle資料庫
1 啟動 sql connect system manager as sysdba sql startup open 資料庫例項名 另一種啟動方法是 先安裝該資料庫,然後通過alter database命令開啟.sql connect system manager as sysdba sql sta...