oracle資料庫是重量級的,其管理非常複雜,將其在linux平台上的啟動和關閉步驟整理一下。
安裝完畢oracle以後,需要建立oracle系統使用者,並在/home/oracle下面的.bash_profile添加幾個環境變數:ORACLE_SID,ORACLE_BASE,ORACLE_HOME。比如:
export ORACLE_SID=test export ORACLE_BASE=oracle_install_dir export ORACLE_HOME=xxx
啟動步驟:注意$代表shell命令提示字元,這裡的oracle是9.0以上版本。
- $ su - oracle
- $ sqlplus / nolog
- sql> conn / as sysdba
- sql> startup (一般不需要加參數,只要設定好環境變數)
- sql> quit (退出sql模式)
- $ lsnrctl start (啟動監聽器)
關閉oracle
- $ lsnrctl stop(關閉監聽器,在這之前,應該先關閉應用程式)
- $ sqlplus /nolog
- sql>shutdown 其參數 :shutdown有四個參數,四個參數的含義如下:
Normal 需要等待所有的使用者中斷連線
Immediate 等待使用者完成當前的語句
Transactional 等待使用者完成當前的事務
Abort 不做任何等待,直接關閉資料庫
normal需要在所有串連使用者斷開後才執行關閉資料庫任務,所以有的時候看起來好象命令沒有運行一樣!在執行這個命令後不允許新的串連
immediate在使用者執行完正在執行的語句後就斷開使用者串連,並不允許新使用者串連。
transactional 在擁護執行完當前事物後中斷連線,並不允許新的使用者串連資料庫。
abort 執行強行中斷連線並直接關閉資料庫。
前三種方式不回丟失使用者資料。第四種在不的已的情況下,不建議採用!
經常遇到的問題:
1)許可權問題,解決方案,切換到oracle使用者;
2)沒有關閉監聽器 ,解決方案:關閉監聽器
3)有oracle執行個體沒有關閉,解決辦法:關閉oracle執行個體
4)環境變數設定不全,解決辦法:修改環境變數
Oracle資料庫的啟動和關閉方式
一、幾種啟動方式:
1、startup nomount
非安裝啟動,這種方式啟動下可執行:重建控制檔案、重建資料庫
啟動instance,即啟動SGA和後台進程,這種啟動只需要init.ora檔案。
2、startup mount dbname
安裝啟動,這種方式啟動下可執行:資料庫日誌歸檔、資料庫恢複、重新命名一些資料庫檔案
如:系統資料表空間或記錄檔。
執行“nomount”,然後開啟控制檔案
3、startup open dbname
先執行“nomount”,然後執行“mount”,再開啟包括Redo log檔案在內的所有資料庫檔案,
這種方式下可訪問資料庫中的資料。
4、startup,等於以下三個命令
startup nomount
alter database mount
alter database open
5、startup restrict
約束方式啟動
這種方式能夠啟動資料庫,但只允許具有一定特權的使用者訪問
非特權使用者訪問時,會出現以下提示:
ERROR:
ORA-01035: ORACLE 只允許具有 RESTRICTED SESSION 許可權的使用者使用
6、startup force
強制啟動方式
當不能關閉資料庫時,可以用startup force來完成資料庫的關閉
先關閉資料庫,再執行正常啟動資料庫命令
7、startup pfile=參數檔案名稱
帶初始化參數檔案的啟動方式
先讀取參數檔案,再按參數檔案中的設定啟動資料庫
例:startup pfile=E:/Oracle/admin/oradb/pfile/init.ora
8、startup EXCLUSIVE
二、幾種關閉方式:
1、shutdown normal 正常方式關閉資料庫。 2、shutdown immediate 立即方式關閉資料庫。 在SVRMGRL中執行shutdown immediate,資料庫並不立即關閉, 而是在Oracle執行某些清除工作後才關閉(終止會話、釋放會話資源), 當使用shutdown不能關閉資料庫時,shutdown immediate可以完成資料庫關閉的操作。 3、shutdown abort 直接關閉資料庫,正在訪問資料庫的會話會被突然終止, 如果資料庫中有大量操作正在執行,這時執行shutdown abort後,重新啟動資料庫需要很長時間。 |
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=13483
一、啟動
文法: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方式關閉的資料庫再次啟動時必須要進行恢複動作,這些恢複操作同樣是系統自動來完成的,需要的時間較長。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=85205