一、啟動
文法:startup [force] [pfile=檔案名稱] [exclusive|shared] [mount 資料庫名|normal 資料庫名] [nomount]
1、正常啟動:
sql>conn sys/sys as sysdba;
sql>startup
也可在啟動時指定資料庫名
sql>startup ora9
2、安裝和非安裝啟動
安裝啟動的選項是mount,表示常式只將資料庫裝入,而不開啟資料庫;非安裝啟動的選項是nomount,表示只建立資料庫現場,並不裝入資料庫,當然也不能開啟。
sql>startup mount --安裝啟動
sql>startup nomount--非安裝啟動
3、獨佔和共用啟動
獨佔啟動的選項是exclusive,表示只允許一個常式使用該資料庫;共用啟動的參數是shared,表示允許多個常式並行使用該資料庫,即將資料庫裝入多個現場。
4、約束啟動
約束啟動的選項是restrict,它啟動資料庫時裝入並開啟它,但是此時的資料庫只能為有特殊許可權的資料庫管理員使用,一般使用者不能聯入到該資料庫。
sql>startup restrict
一般說來,當使用者有create session許可權時,可以聯入資料庫,但對於restrict方式啟動的資料庫,則只有使用者具有restricted session系統許可權才允許聯入。
若要在資料庫運行過程中改變這一方式,可用alter system命令。
sql>alter system disable restricted session;
也可以先將資料庫關閉再重新以非restrict方式啟動資料庫。
5、強制啟動
若在正常啟動資料庫時遇到一些麻煩,或在上次關閉資料庫時不能正常關閉,則可以採取強制啟動,其選項是force。
聯入sys使用者
sql>startup force
6、帶初始化參數檔案的啟動
初始化參數檔案在資料庫啟動時由系統讀取,設定一些全域參數,它並不影響資料庫的運行方式。
sql>startup pfile=d:/oracle/admin/site/pfile/init.ora
技巧:用alter database可以進行一些啟動模式轉換,但是轉換的類型十分有限,比如從mount模式下將資料庫開啟,則可用以下命令:
sql>alter database open;
還可以從mount狀態轉為mount狀態,如下所示:
sql>alter database mount;
二、關閉
1、正常關閉
正常關閉資料庫所用的選項是normal,資料庫在關閉前將檢查所有的串連,並且發出命令後不允許再有新的使用者串連,在等待所有串連都斷開後再關閉資料庫,再次啟動資料庫不需要任何恢複過程。
聯入sys使用者
sql>shutdown normal;
2、緊急關閉
該方式用在某些緊急的情況下,比如通知馬上停電,此時需要緊急關閉資料庫以應付這些情況。這種方式用的選項是immediate,在這種方式下並不等待所有的使用者中斷連線再關閉,而是由系統中斷連線,然後關閉資料庫。
sql>shutdown immediate;
一旦執行了這條命令,則將當前正在處理的sql語句馬上停止,然後將所有未提交的交易回復,並且不等待當前聯入資料庫的使用者中斷連線,而是由系統強行將各個聯結斷開。在下次啟動資料庫時要執行恢複動作,不過是由系統自動執行的,使用者不必去瞭解它。
3、異常關閉
異常關閉選項是abort,此種方式下系統並不做任何檢查和斷開使用者操作以及後援動作,而是直接將資料庫現場撤銷,這樣現場中的資料庫資料當然就無效了,資料庫自然也就被關掉了。
sql>shutdown abort;
以abort方式關閉資料庫時只有一行關閉資訊表示關閉了資料庫現場。以abort方式關閉的資料庫再次啟動時必須要進行恢複動作,這些恢複操作同樣是系統自動來完成的,需要的時間較長。