oracel體系結構梳理----控制檔案以及pfile和spfile
----控制檔案
它是一個二進位制檔案,它描述了資料庫的結構,當資料庫處於mount或open狀態的時候,它必須能被oracle 服務來寫,它的名字預設每個作業系統都不一樣的,也可以自己取,
沒有這個檔案,資料庫不能mount,也不能恢復資料
物理結構改變的時候就會寫控制檔案
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string E:\APP\ADMINISTRATOR\ORADATA\ORG11G\CONTROL01.CTL, E:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\ORG11G\CONTROL02.CTL
control_management_pack_access string DIAGNOSTIC+TUNING
11g兩個,一般會分別放在不同磁碟上面!
在資料庫進行持續執行時,將不斷修改控制檔案資訊,如:
◎ 每次線上日誌檔案、資料檔案的新增、修改、刪除,歸檔等都會更新控制檔案
◎ 熱備份的時候
◎ 觸發系統事件時
◎ 增量檢查點將每三秒會喚醒DBWR,並將當前資料庫的一致性資訊更新到控制檔案,包括例項恢復的起點REDO地址(RBA TARGET),或稱LOWER RBA。
STATUS 列有兩種狀態:
INVALID,和NULL.
如果控制檔案不能被檢測到,就會顯示為INVALID。
如果可以檢測到,就會顯示NULL。
控制檔案(control file)中主要包含以下內容:
l The database name
l The timestamp of database creation
l The names and locations of associated datafiles and redo log files
l Tablespace information
l Datafile offline ranges
l The log history
l Archived log information
l Backup set and backup piece information
l Backup datafile and redo log information
l Datafile copy information
l The current log sequence number
l Checkpoint information
---修改控制檔案資訊
alter system set
control_files='E:\APP\ADMINISTRATOR\ORADATA\ORG11G\CONTROL01.CTL', 'E:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\ORG11G\CONTROL02.CTL' scope=spfile;
-----pfile和spfile
create spfile='E:\app\Administrator\product\11.2.0\dbhome_1\database\SPFILEORG11G.ORA' from pfile='E:\app\Administrator\product\11.2.0\dbhome_1\database\INITorg11g.ORA';
org11g.__db_cache_size=419430400
org11g.__java_pool_size=16777216
org11g.__large_pool_size=16777216
org11g.__oracle_base='E:\app\Administrator'#ORACLE_BASE set from environment
org11g.__pga_aggregate_target=587202560
org11g.__sga_target=1124073472 ----例項名.表示單個的例項下
org11g.__shared_io_pool_size=0
org11g.__shared_pool_size=620756992
org11g.__streams_pool_size=33554432
*.audit_file_dest='E:\app\Administrator\admin\org11g\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='E:\app\Administrator\oradata\org11g\control01.ctl','E:\app\Administrator\fast_recovery_area\org11g\control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='org11g'
*.db_recovery_file_dest='E:\app\Administrator\fast_recovery_area'
*.db_recovery_file_dest_size=4322230272
*.db_writer_processes=3
*.diagnostic_dest='E:\app\Administrator'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=org11gXDB)'
*.log_archive_dest_1='location=D:\oracle\archive'
*.memory_target=1698693120
*.open_cursors=300 ----前面加*表示rac環境就是所有例項環境中有效
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
--pfile
pfile是文字檔案,可以手動編輯,有預設值如果設定錯誤則會直接忽略,使用預設值!
pfile是文字檔案,是靜態的,在作業系統級別手動修改,是在資料庫啟動的時候讀,修改的引數,必須重新啟動才能有效,不能立即生效
---spfile
spfile是二進位制檔案,是服務端引數檔案,要用命令來修改。
修改一些系統引數時有時候會涉及到該檔案:
alter system set parameter = value [comment=’text’][deferred][scope = memory | spfile | both]
[sid=’sid | *’]
1. MEMORY(預設):改變馬上修改記憶體,並生效,但是SPFILE沒有修改,下次啟動引數被還原。
2. SPFILE:只是修改了SPFILE,下次啟動新的引數值,當前執行引數值不生效。
3. BOTH: MEMORY和SPFILE都生效。
alter system set open_cursors=1000 scope=spfile;
alter system set open_cursors=1000 scope=memory;
alter system set open_cursors=888 scope=both;
----pfile和spfile的區別
1. spfile 二進位制檔案,只能用命令修改,減少出錯.不像pfile可以用編輯器隨便改,錯了也可能不報錯.pfile文字檔案
2. spfile的引數改動,有可能立即生效,但是pfile,改動後只能在下次啟動的時候生效.
3. pfile是客戶端的,而spfile是在伺服器端的.
4. spfile可以用rman備份,pfile不可以.
SELECT distinct ISMODIFIED, ISSYS_MODIFIABLE FROM V$PARAMETER;
MODIFIED --- > 在會話級修改了
SYSTEM_MOD --- > 在系統級修改了
FALSE --- > 例項啟動後沒有修改
alter session set
alter system set
SELECT ISMODIFIED, ISSYS_MODIFIABLE FROM V$PARAMETER WHERE NAME='open_cursors';
ISSYS_MODIFIABLE
DEFERRED ----->也是動態引數,對於當前session無效,下一個session生效
FALSE ----->靜態引數,需要重啟db才能生效
IMMEDIATE ----->動態引數,立即生效
SQL> SELECT distinct ISMODIFIED, ISSYS_MODIFIABLE FROM V$PARAMETER;
ISMODIFIED ISSYS_MODIFIABLE
-------------------- ------------------
FALSE DEFERRED
FALSE FALSE
FALSE IMMEDIATE
MODIFIED FALSE
SQL> SELECT ISMODIFIED, ISSYS_MODIFIABLE FROM V$PARAMETER WHERE NAME='open_cursors';
ISMODIFIED ISSYS_MODIFIABLE
-------------------- ------------------
FALSE IMMEDIATE ----例項啟動後沒有修改,而且為動態引數,立即生效
--========================================================================================
---引數的類別
1. 顯式引數:在引數檔案中寫了的
2. 隱式引數:預設的
3. 隱含引數:以_開頭的,oracle內部人員用的。
v$parameter --- > 顯示當前session的引數值。
v$system_parameter --- > 顯示instance的引數值。
v$spparameter --- > 顯示spfile中記錄的引數值。
SELECT isdefault,name,VALUE FROM v$parameter ORDER BY name;
--查隱含引數 ---false表示你已經配置過的,true表示系統預設的,你沒有配置過得
1.過時引數:在 Oracle 以前的版本中存在,但在新版本中已經淘汰了的引數,已經不再使用;
2.強調引數:就是在新版本中保留了下來,但是不希望使用者使用的那些引數。
------檢視過時引數
select name, isspecified from v$obsolete_parameter;--false在引數檔案中沒有配置,true已經過時但是還在被使用
------檢視強調引數
SELECT kspponm, DECODE (ksppoflg, 1, 'Obsolete', 2, 'Underscored')FROM x$ksppo ORDER BY kspponm;--Obsolete 過時 Underscored 強調
show parameter spfile; ---有值則是spfile啟動的!10g之後均為spfile啟動的,判斷是spfile啟動的,還是pfile啟動
select ISSPECIFIED, count(*)from v$spparameter where ISSPECIFIED = 'TRUE' group by ISSPECIFIED;
-----ISSPECIFIED = true.就是在spfile中對應的引數是否被指定,只要有true即表示是spfile啟動的
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30018455/viewspace-1416047/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 引數檔案(spfile和pfile)Oracle
- oracle spfile和pfile小結Oracle
- oracle引數檔案pfile,spfileOracle
- oracle體系結構梳理---redo和undo檔案解析Oracle
- 【原創】oracle spfile和pfile小結Oracle
- Oracle的spfile和pfileOracle
- oracle 體系結構-控制檔案(二)Oracle
- Oracle 體系結構-控制檔案(一)Oracle
- (轉)Oracle中的啟動引數檔案:spfile和pfileOracle
- Oracle基礎 07 引數檔案 pfile/spfileOracle
- Oracle中的spfile和 pfileOracle
- Oracle中的pfile和spfileOracle
- 水煮Oracle——《Oracle pfile/spfile引數檔案詳解Oracle
- Oracle Spfile and pfileOracle
- oracle結構梳理---歸檔檔案Oracle
- Oracle體系結構梳理Oracle
- 探索Oracle pfile和spfile的祕密Oracle
- orcle pfile和spfile的區別和聯絡
- oracle體系結構梳理---redo和undo解析1Oracle
- nomount的時候是必須讀取pfile或者spfile檔案的。
- 控制檔案的結構
- Oracle Concepts - pfile and spfileOracle
- oracle體系結構梳理----各種程式Oracle
- oracle體系結構梳理---SGA+PGAOracle
- ORACLE體系結構梳理---基本概念Oracle
- Oracle體系結構-引數檔案Oracle
- Create spfile from pfile命令要注意
- 【PG體系結構】Postgresql 配置檔案詳解SQL
- 關於pfile,spfile的一些命令
- oracle實驗記錄 (PFILE 啟動SPFILE)Oracle
- 恢復SPFILE檔案
- 檔案-spfile說明
- 基於主函式視角和結構體框架的專案再梳理函式結構體框架
- 控制檔案重建以及備份
- 如何在pfile中引用spfile來啟動oracleOracle
- Oracle體系結構:記憶體結構和程式結構(轉)Oracle記憶體
- oracle pfile spfile啟動順序 優先順序 spfilesid 〉 spfile 〉 initsidOracle
- [資料庫系統]儲存和檔案結構資料庫