天天看點

學習是一種品質,它使人進步。Oracle10g學習心得(2)

接上一節的内容。

    通過SQL/PLUS啟動、關閉資料庫。

1.開始-->運作-->輸入"cmd" ,進入DOS操作界面,輸入"sqlplus/nolog" ,啟動SQL/PLUS;

2.SQL>connect sys/zjd123 as sysdba ,用DBA身份登入SQL/PLUS;

3.SQL>startup ,直接正常啟動,這也是通常用的最多的一種啟動方式。它的啟動過程分成3個環節:首先把資料庫執行個體啟動起來,接着打開控制檔案,也就是database mount,然後打開資料檔案,也就是database open;

  除了startup直接啟動之外,startup後面還有兩個參數選項:mount和nomount。

在資料庫啟動後,當我們進行熱備份的時候,是不允許進行存檔、非存檔方式操作的。

檢視存檔日志資訊:"archive log list" ,界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

資料庫日志模式預設的情況下是:非存檔模式。我們要修改,在存檔模式下進行熱備份。但是資料庫在啟動的情況下,是不允許做修改的。隻能是把資料庫先關閉,關閉之後,再啟動資料庫執行個體,在啟動執行個體的時候打開控制檔案,但是不能打開資料檔案,在這個時候才能修改資料庫日志模式。

    在這種情況下,我們啟動資料庫就要用到"startup mount" ,這個指令啟動資料庫。啟動界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

然後在mount模式下,修改:"alter database archivelog;" ,接着:"arter database open;" ;這樣就把資料庫的非存檔模式改為了存檔模式。完整界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

修改完成後,資料庫日志模式的查詢界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

    另外一個指令"startup nomount" ,表示隻啟動資料庫執行個體,資料檔案不打開的,連控制檔案都不打開。什麼時候我們會用到"nomout" 呢,就是我們的控制檔案丢失一個或多個的時候,控制檔案根本沒有辦法打開,這個時候我們就用"startup nomount" 啟動資料庫,以便在啟動執行個體之後,重新建立控制檔案。  

4.資料庫的關閉。通常情況下Oracle建議我們使用"shutdown immediate" 指令來關閉資料庫。這種方式關閉,表示:迫使每個使用者執行完目前SQL語句之後,立即斷開連接配接。不帶參數的指令"shutdown" ,表示正常關閉。就是隻有等待所有的使用者都斷開連接配接之後,才真正把資料庫執行個體關閉掉。當有空閑使用者沒有斷開連接配接時,會造成長時間執行個體無法關閉,是以我們很少用這個指令關閉資料庫執行個體。另外還有一個指令"shutdown transactional" ,表示執行“transactional”關閉,迫使使用者在目前執行完成後,斷開連接配接,終止執行個體。在恢複破壞的檔案、資料檔案時,不能同其它的資料庫檔案保持一緻。最後一個指令"shutdown abort" ,這是一個非常嚴厲的手段,它是強制關閉資料庫,關閉執行個體,很可能造成檔案的破壞,是以不到萬不得以,我們不會使用這種強制手段來關閉資料庫。

   小結一下。

啟動資料庫的指令有如下3種:

SQL>startup        (正常啟動,啟動資料庫執行個體,并打開控制檔案和資料檔案)

SQL>startup mount   (啟動資料庫執行個體,并打開控制檔案,不打開資料檔案)

SQL>startup nomount  (隻啟動資料庫執行個體,不打開控制檔案和資料檔案)

關閉資料庫的指令有如下幾種:

SQL>shutdown    (正常關閉,等待所有使用者全部斷開連接配接之後,才關閉資料庫執行個體)

SQL>shutdown immediate (迫使每個使用者執行完目前SQL語句之後,立即斷開連接配接。關閉資料庫執行個體)

關閉界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

SQL>shutdown transactional  (迫使使用者在目前執行完成後,斷開連接配接,終止執行個體。是事務關閉,可以恢複破壞檔案)

關閉界面如下:

學習是一種品質,它使人進步。Oracle10g學習心得(2)

SQL>shutdown abort  (強制關閉資料庫,關閉執行個體,很可能會造成檔案的破壞。)

未完待續,下一節将說到:SQL/PLUS常用指令。