例項管理及資料庫的啟動關閉
一、 例項和引數檔案
1、instance功能:用於管理和訪問database。2、init parameter files:管理例項相關啟動引數。 位置:$ORACLE_HOME/dbs
3、pfile:(parameter file)靜態引數檔案
1)文字檔案,必須透過編輯器修改引數。 2)修改引數下次重啟例項才生效。3)pfile引數檔案可以不再database sever上。
命名方式:init+SID.ora
4、spfile:(system parameter file)動態引數檔案。 位置:show parameter spfile;
1)二進位制檔案,不可以透過編輯器修改。2)Linux下strings可以檢視 。3)必須在database server段的指定路徑下。
命名方式: spfile+SID.ora
在spfile讀到記憶體後,有一部分引數是可以直接在記憶體中修改,並對當前instance立即生效,這樣的引數叫動態引數。除了動態引數都是靜態引數。靜態引數修改spfile檔案。動態引數在instance關閉後失效,而靜態引數是下次instance啟動後才生效。
如何修改spfile引數
alter system set 引數=值 [scope=memory|spfile|both]alter system reset 引數 [scope=memory|spfile|both] SID='*' //恢復預設值。
scope=memory 引數修改立刻生效,但不修改spfile檔案。
scope=spfile 修改了spfile檔案,重啟後生效。
scope=both 前兩種都要滿足。 預設
透過檢視V$parameter,可以確定引數修改方式,制定scope
SQL> desc v$parameter;
issys_modifiable:對應alter system命令,及系統級修改
SQL> select distinct issys_modifiable from v$parameter;
ISSYS_MODIFIABLE
----------------
IMMEDIATE
FALSE
DEFERRED
IMMEDIATE //對應scope=memory
FALSE //只能scope=spfile,即修改spfile檔案,下次啟動才生效。
DEFERRED //其他session有效
ISSES_MODIFIABLE:對應alter session命令,即session級修改
SQL> select distinct isses_modifiable from v$parameter;
ISSES_MODIFIABLE
----------------
TRUE //表示可以修改
FALSE //表示不能修改
SQL> select name,ISSES_MODIFIABLE,ISSYS_MODIFIABLE from v$parameter where name='sql_trace';
NAME ISSES ISSYS_MOD
-------------------------------------------------------------------------------- ----- ---------
sql_trace TRUE IMMEDIATE
這個結果表示 sql_trace引數在session級別可以改,在system級也可以both修改(動態引數)。
5、startup時讀取初始化引數檔案(initialization parameter file)或伺服器引數檔案(server parameter file)如果沒有spfile可以從pfile啟動。
pfile和spfile可以相互生成:
SQL>create pfile from spfile
SQL>create spfile from pfile(使用spfile啟動後不能線上生成spfile,ORA-32002: 無法建立已由例項使用的 SPFILE)
可以透過當前記憶體引數生成pfile和spfile(11g新特性):
SQL>create pfile from memory;
SQL>create spfile from memory;
有了spfile,pfile一般留做備用,特殊情況也可以使用pfile啟動,命令如下:
SQL> startup pfile=D:\oracle\product\10.2.0\admin\orcl\pfile\init.ora.2112014103048
SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\SPFILEORCL.ORA
//如果value有值,說明資料庫啟動時讀的是spfile
二 、資料庫啟動與關閉
1.啟動分為三個階段
1)nomount階段:讀取init parameter
SQL> select status from v$instance; (這條命令很實用,看當前資料庫啟動的狀態,有三個 started,mounted,open)
STATUS
------------
STARTED
2)mount階段: 讀取控制檔案
SQL> select status from v$instance;
STATUS
------------
MOUNTED
3)open階段: 1、檢查所有的datafile、redo log、 group 、password file。
2、檢查資料庫的一致性(controlfile、datafile、redo file的檢查點是否一致)
SQL> select file#,checkpoint_change# from v$datafile; //從控制檔案中讀出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 7877118
2 7877118
3 7877118
4 7877118
5 7877118
6 7877118
7 7877118
8 7877118
9 7877118
10 7877118
11 7877118
12 7877118
13 7877118
13 rows selected
SQL> select file#,checkpoint_change# from v$datafile_header; 從資料檔案頭中讀出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 7877118
2 7877118
3 7877118
4 7877118
5 7877118
6 7877118
7 7877118
8 7877118
9 7877118
10 7877118
11 7877118
12 7877118
13 7877118
13 rows selected
SQL> select status from v$instance;
STATUS
------------
OPEN
2. 啟動資料庫時的特殊選項
SQL> alter database open read only;
SQL> startup force
SQL> startup upgrade (只有sysdba能連線)
SQL> startup restrict (有restrict session許可權才可登入,sys不受限制)
SQL> alter system enable restricted session; (open後再限制)
3. 例項關閉
shutdown normal: 拒絕新的連線,等待當前事務結束,等待當前會話結束,生成檢查點
shutdown transactional :拒絕新的連線,等待當前事務結束,生成檢查點
shutdown immediate: 拒絕新的連線,未提交的事務回滾,生成檢查點
shutdown abort(startup force) :事務不回滾,不生成檢查點,下次啟動需要做instance recovery
1)nomount階段:讀取init parameter
SQL> select status from v$instance; (這條命令很實用,看當前資料庫啟動的狀態,有三個 started,mounted,open)
STATUS
------------
STARTED
2)mount階段: 讀取控制檔案
SQL> select status from v$instance;
STATUS
------------
MOUNTED
3)open階段: 1、檢查所有的datafile、redo log、 group 、password file。
2、檢查資料庫的一致性(controlfile、datafile、redo file的檢查點是否一致)
SQL> select file#,checkpoint_change# from v$datafile; //從控制檔案中讀出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 7877118
2 7877118
3 7877118
4 7877118
5 7877118
6 7877118
7 7877118
8 7877118
9 7877118
10 7877118
11 7877118
12 7877118
13 7877118
13 rows selected
SQL> select file#,checkpoint_change# from v$datafile_header; 從資料檔案頭中讀出
FILE# CHECKPOINT_CHANGE#
---------- ------------------
1 7877118
2 7877118
3 7877118
4 7877118
5 7877118
6 7877118
7 7877118
8 7877118
9 7877118
10 7877118
11 7877118
12 7877118
13 7877118
13 rows selected
SQL> select status from v$instance;
STATUS
------------
OPEN
2. 啟動資料庫時的特殊選項
SQL> alter database open read only;
SQL> startup force
SQL> startup upgrade (只有sysdba能連線)
SQL> startup restrict (有restrict session許可權才可登入,sys不受限制)
SQL> alter system enable restricted session; (open後再限制)
3. 例項關閉
shutdown normal: 拒絕新的連線,等待當前事務結束,等待當前會話結束,生成檢查點
shutdown transactional :拒絕新的連線,等待當前事務結束,生成檢查點
shutdown immediate: 拒絕新的連線,未提交的事務回滾,生成檢查點
shutdown abort(startup force) :事務不回滾,不生成檢查點,下次啟動需要做instance recovery
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28282660/viewspace-1417120/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 資料庫例項啟動關閉過程Oracle資料庫
- 【02】Oracle資料庫的例項啟動關閉詳解Oracle資料庫
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-關於例項啟動Oracle
- rac 管理 啟動關閉資料庫資料庫
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-關於例項關閉Oracle
- 2 Day DBA-管理Oracle例項-關於例項的啟動和關閉-管理啟動和關閉許可權Oracle
- 2 Day DBA-管理Oracle例項-關閉和啟動Oracle例項-使用OEMDC關閉和啟動Oracle例項Oracle
- mongodb關閉資料庫例項MongoDB資料庫
- 3.1.5.1 關於啟動資料庫例項資料庫
- Oracle例項的啟動和關閉Oracle
- 資料庫自動啟動關閉資料庫
- 資料庫啟動和關閉資料庫
- ASM CRS 例項啟動和關閉ASM
- RAC 資料庫的啟動與關閉資料庫
- Oracle資料庫的啟動與關閉Oracle資料庫
- Oracle資料庫的啟動和關閉Oracle資料庫
- oracle 例項啟動和關閉解讀Oracle
- Oracle單例項+ASM啟動與關閉Oracle單例ASM
- ORACLE資料庫的啟動和關閉(轉)Oracle資料庫
- dataguard standby資料庫的關閉和啟動資料庫
- 3.1.5.4 啟動例項並mount 資料庫資料庫
- informix 資料庫啟動關閉指令碼ORM資料庫指令碼
- Mysql 5.5 資料庫啟動關閉命令MySql資料庫
- db2資料庫的啟動和關閉DB2資料庫
- 啟動、關閉與資料庫的特殊狀態資料庫
- 隨系統啟動關閉的oracle資料庫Oracle資料庫
- Oracle Restart啟動資料庫例項故障一例OracleREST資料庫
- Oracle資料庫例項啟動步驟分析Oracle資料庫
- ORACLE資料庫的啟動和關閉之二(轉)Oracle資料庫
- Oracle資料庫的幾種啟動和關閉方式Oracle資料庫
- 深刻理解Oracle資料庫的啟動和關閉Oracle資料庫
- 深刻理解 oracle 資料庫的啟動和關閉Oracle資料庫
- 啟動資料庫例項的限制模式(restrict mode)的方法資料庫模式REST
- 一臺MySQL資料庫啟動多個例項MySql資料庫
- RAC環境只啟動單例項資料庫單例資料庫
- 啟動/關閉與冷備份Oracle資料庫Oracle資料庫
- oracle例項、資料庫及相關資料庫狀態的理解和測試Oracle資料庫
- 如何修改資料庫例項及資料庫名資料庫