今天就跟大家聊聊有關exclusive、startup nomount和mountopen的區(qū)別是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據(jù)這篇文章可以有所收獲。
成都創(chuàng)新互聯(lián)公司是一家以網絡技術公司,為中小企業(yè)提供網站維護、網站設計、做網站、網站備案、服務器租用、域名注冊、軟件開發(fā)、小程序設計等企業(yè)互聯(lián)網相關業(yè)務,是一家有著豐富的互聯(lián)網運營推廣經驗的科技公司,有著多年的網站建站經驗,致力于幫助中小企業(yè)在互聯(lián)網讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網上打開一個面向全國乃至全球的業(yè)務窗口:建站服務電話:028-86922220
看oracle入門書,其中一句話說,使用startup nomount 命令啟動例程,不可以和mount open 和exclusive一起使用,這個命令適用于建立數(shù)據(jù)庫或是維護數(shù)據(jù)庫時使用。
于是查了一下,為什么不能同時使用,以及他們之間的區(qū)別。
以下為轉載:
nomount:讀初始化參數(shù)文件,啟動實例。
mount:打開控制文件
open: 打開數(shù)據(jù)文件,日志文件
簡單來說,nomount是用來創(chuàng)建數(shù)據(jù)庫的狀態(tài),在此情況下可以執(zhí)行create database....
mount是用來維護數(shù)據(jù)庫的,比如數(shù)據(jù)庫出現(xiàn)了問題,數(shù)據(jù)文件被誤刪除,就無法open,這時可在mount狀態(tài)下將數(shù)據(jù)文件從數(shù)據(jù)庫中去除。
open是數(shù)據(jù)庫可以對全體用戶提供服務了。
詳細介紹:
1、startup nomount
非安裝啟動,這種方式啟動下可執(zhí)行:重建控制文件、重建數(shù)據(jù)庫
讀取init.ora文件,啟動instance,即啟動SGA和后臺進程,這種啟動只需要init.ora文件。
2、startup mount dbname
安裝啟動,這種方式啟動下可執(zhí)行:
數(shù)據(jù)庫日志歸檔、
數(shù)據(jù)庫介質恢復、
使數(shù)據(jù)文件聯(lián)機或脫機,
重新定位數(shù)據(jù)文件、重做日志文件。
執(zhí)行“nomount”,然后打開控制文件,確認數(shù)據(jù)文件和聯(lián)機日志文件的位置,
但此時不對數(shù)據(jù)文件和日志文件進行校驗檢查。
3、startup open dbname
先執(zhí)行“nomount”,然后執(zhí)行“mount”,再打開包括Redo log文件在內的所有數(shù)據(jù)庫文件,
這種方式下可訪問數(shù)據(jù)庫中的數(shù)據(jù)。
4、startup,等于以下三個命令
startup nomount
alter database mount
alter database open
數(shù)據(jù)庫啟動的三個臺階nomount,mount,open 目的是明白細化啟動數(shù)據(jù)庫的三個步驟
啟動數(shù)據(jù)庫到nomount狀態(tài)的條件如下。如果你是非windows OS就沒有注冊表,而有環(huán)境變量服務中的OracleService必須啟動
服務的名稱和注冊表中的oracle_sid相匹配
存在正確的密碼文件和參數(shù)文件
有足夠的內存
參數(shù)文件中描述的路徑必須存在
數(shù)據(jù)庫產品安裝正確
conn sys/oracle as sysdba
shtudown abort;
startup nomount;
select instance_name,status from v$instance;
啟動數(shù)據(jù)庫到第一個臺階nomount狀態(tài)做了如下的工作
1.讀參數(shù)文件
2.分配內存
3.啟動后臺進程
4.初始化部分v$視圖
將數(shù)據(jù)庫帶到mount狀態(tài)
select value from v$spparameter where name='control_files';
alter database mount;
mount數(shù)據(jù)庫的過程是讀參數(shù)文件中描述的控制文件,校驗控制文件的正確性,將控制文件的內容讀入到內存中,mounu是掛接的意思,是操作系統(tǒng)中的概念。一旦mount之后,就是將一個沒有意義的實例和一個數(shù)據(jù)庫發(fā)生了聯(lián)系。因為實例是空殼。沒有任何數(shù)據(jù)庫和該實例發(fā)生關系,我們可以理解為實例是水泵,放到哪個水塘里就會抽取哪里的數(shù)據(jù),實例是通用的。mount的意思是將一個通用的水泵放入到一個指定的水塘。mount是讀控制文件,控制文件中有數(shù)據(jù)文件和日志文件的信息。
select instance_name,status from v$instance;
打開數(shù)據(jù)庫
alter database open;
讀控制文件中描述的數(shù)據(jù)文件
驗證文件的一致性,如果不一致,使用日志文件將數(shù)據(jù)庫文件恢復到一致的狀態(tài)。
數(shù)據(jù)庫open后,普通用戶才可以訪問數(shù)據(jù)庫
用戶的表才為可見
只讀方式open數(shù)據(jù)庫
startup mount;
alter database open read only;
select open_mode from v$database;
默認的open方式為read write
想改read only為read write必須重新啟動數(shù)據(jù)庫
我們現(xiàn)在回想一下數(shù)據(jù)庫啟動的三個臺階,我們先讀的是參數(shù)文件,參數(shù)文件可以由我們來編寫。讀完參數(shù)文件后又讀了控制文件,控制文件中描述了數(shù)據(jù)文件和日志文件的信息,如果控制文件丟失了我們可以重新建立,最后是讀數(shù)據(jù)文件。數(shù)據(jù)文件里才存放了我們的數(shù)據(jù)。數(shù)據(jù)庫將啟動分為三個臺階,目的是我們可以準確的知道哪里有問題,迅速排除。有點象老拖木釬,大頭的在后面。由最開始的一個1K的參數(shù)文件,最后到幾個 T的大型數(shù)據(jù)庫。當我們只打startup而不加任何參數(shù)的時候,默認是到open,等于startup open;
我們從屏幕顯示的結果可以清楚的看出,有三個臺階。
還有一個命令是startup force強制啟動數(shù)據(jù)庫,等于強制停止數(shù)據(jù)庫再啟動數(shù)據(jù)庫。
看完上述內容,你們對exclusive、startup nomount和mountopen的區(qū)別是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
分享文章:exclusive、startupnomount和mountopen的區(qū)別是什么
轉載來于:http://vcdvsql.cn/article10/pegggo.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、定制網站、、企業(yè)網站制作、網站設計、品牌網站制作
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)