1. 參數文件(parameter file, *.ora)
兩種類型pfile和spfile,推薦使用spfile,pfile是字符型文件可以使用編輯器編輯,spfile是二進制文件,要使用set parameter參數進行修改。 使用set parameter進行參數修改時可以增加注釋,指定修改的作用范圍(memory,spfile,或者both),其中both是默認值;使用reset parameter修改原來的參數設置,其中sid選項必選。
spfile和pfile可以互相生成,啟動數據庫時默認使用spfile,要使用pfile需要使用pfile='pfilename'進行指定; spfile保存在服務器,pfile保存在客戶端,使用alter system改變的系統配置寫入spfile,不寫入pfile。
2. 調試文件(trace file, * .trc)
兩種類型,一種是對調試應用有關系的文件,比如打開sql調試選項,就會在這些調試文件中增加信息;一種是內核產生錯誤時產生的調試文件,供orace支持人員使用。
我們使用的調試文件有兩個存放位置,對于專屬服務器存放在udump文件夾下,具體可見user_dump_dest參數;共享服務器的調試文件一般存放在bdump文件夾下,具體可見background_dump_dest參數。
從v$process, v$session, v$parameter, v$instance做關聯查詢可以知道目前session的trace文件。
可以設置參數tracefile_identifier為當前session的trace文件增加tag。
3. 數據文件(data file)
oracle支持的四種文件系統:os file system, raw partitions,automatic storage management,clustered file system;
段(segment),oracle中的每個對象都存儲在一個segment之中,在創建對象的同時oracle自動創建不同的segment,每個段由一個或者多個簇(extents)組成;
簇(extent),extent是一個文件內邏輯上連續的存儲空間,同一個segment內的extent可以屬于不同的文件,最大空間為2G;
塊(block),塊是oracle中最小的存儲空間,是實際存儲數據對象的地方;extent由block構成;一般取值為2k/4k/8k/16k,在有些條件下也可以使用32k。
表空間(tablespace),由segment構成,一個segment不能跨越表空間。
4. 臨時文件(temp files)
臨時文件用于存放中間結果,它的顯著特征是一般情況下,對數據對象的操作不產生回滾段,除非顯式指定回滾要求。
5. 控制文件(control files)
控制文件是個小文件,最大64M;在參數文件中指明控制文件的位置;控制文件指明數據文件和在線重做日志文件的位置;控制文件記錄發生過的檢查點,數據庫名字,創建數據庫時的時間戳,歸檔日志的歷史等;
控制文件應該在不同的磁盤上進行備份。
6. 日志文件(log files)
一般用于數據庫恢復,也可用于系統崩潰時的例程恢復,分為在線日志(online log file)和歸檔日志(archived log file).
online redo log:
有兩組或者多組在線重做日志,組內的每一個成員互為影射,組之間循環使用.
在線重做日志組間的切換稱為log switch,這個時候如果數據庫配置不好容易發生服務暫停的情況,因為數據庫在切換日志組之前要確認該日志組已經沒有臟數據,如果有臟數據就要先寫入磁盤中,再進行切換。
oracle在修改數據后,會先寫入SGA的對應區域,當commit的時候寫入在線日志文件,在check point或者重新啟動時由DBWn將修改寫入磁盤。
設置online redo log的大小時要考慮:峰值的時候產生的日志規模;修改相同block的用戶數量;對數據庫恢復是否有時間要求。
archived redo log:
數據庫在日志的處理分為兩種類型:archivelog mode,在發生log switch時保存原來日志;noarchivelog,不保存原有日志,直接重用。
生產環境中要使用archivelog mode,保證數據不丟失。
7. 口令文件(password file)
可選文件,為遠程啟動oracle提供驗證。
8. DMP文件(exp/imp files)
dmp文件用于oracle的導入導出,它和平臺無關;是二進制文件;通過網絡傳輸時要確保以二進制的格式進行傳輸,否則可能導致文件被轉換;導入時向下兼容即新版本的oracle可導入老版本的dmp文件。
兩種類型pfile和spfile,推薦使用spfile,pfile是字符型文件可以使用編輯器編輯,spfile是二進制文件,要使用set parameter參數進行修改。 使用set parameter進行參數修改時可以增加注釋,指定修改的作用范圍(memory,spfile,或者both),其中both是默認值;使用reset parameter修改原來的參數設置,其中sid選項必選。
spfile和pfile可以互相生成,啟動數據庫時默認使用spfile,要使用pfile需要使用pfile='pfilename'進行指定; spfile保存在服務器,pfile保存在客戶端,使用alter system改變的系統配置寫入spfile,不寫入pfile。
2. 調試文件(trace file, * .trc)
兩種類型,一種是對調試應用有關系的文件,比如打開sql調試選項,就會在這些調試文件中增加信息;一種是內核產生錯誤時產生的調試文件,供orace支持人員使用。
我們使用的調試文件有兩個存放位置,對于專屬服務器存放在udump文件夾下,具體可見user_dump_dest參數;共享服務器的調試文件一般存放在bdump文件夾下,具體可見background_dump_dest參數。
從v$process, v$session, v$parameter, v$instance做關聯查詢可以知道目前session的trace文件。
可以設置參數tracefile_identifier為當前session的trace文件增加tag。
3. 數據文件(data file)
oracle支持的四種文件系統:os file system, raw partitions,automatic storage management,clustered file system;
段(segment),oracle中的每個對象都存儲在一個segment之中,在創建對象的同時oracle自動創建不同的segment,每個段由一個或者多個簇(extents)組成;
簇(extent),extent是一個文件內邏輯上連續的存儲空間,同一個segment內的extent可以屬于不同的文件,最大空間為2G;
塊(block),塊是oracle中最小的存儲空間,是實際存儲數據對象的地方;extent由block構成;一般取值為2k/4k/8k/16k,在有些條件下也可以使用32k。
表空間(tablespace),由segment構成,一個segment不能跨越表空間。
4. 臨時文件(temp files)
臨時文件用于存放中間結果,它的顯著特征是一般情況下,對數據對象的操作不產生回滾段,除非顯式指定回滾要求。
5. 控制文件(control files)
控制文件是個小文件,最大64M;在參數文件中指明控制文件的位置;控制文件指明數據文件和在線重做日志文件的位置;控制文件記錄發生過的檢查點,數據庫名字,創建數據庫時的時間戳,歸檔日志的歷史等;
控制文件應該在不同的磁盤上進行備份。
6. 日志文件(log files)
一般用于數據庫恢復,也可用于系統崩潰時的例程恢復,分為在線日志(online log file)和歸檔日志(archived log file).
online redo log:
有兩組或者多組在線重做日志,組內的每一個成員互為影射,組之間循環使用.
在線重做日志組間的切換稱為log switch,這個時候如果數據庫配置不好容易發生服務暫停的情況,因為數據庫在切換日志組之前要確認該日志組已經沒有臟數據,如果有臟數據就要先寫入磁盤中,再進行切換。
oracle在修改數據后,會先寫入SGA的對應區域,當commit的時候寫入在線日志文件,在check point或者重新啟動時由DBWn將修改寫入磁盤。
設置online redo log的大小時要考慮:峰值的時候產生的日志規模;修改相同block的用戶數量;對數據庫恢復是否有時間要求。
archived redo log:
數據庫在日志的處理分為兩種類型:archivelog mode,在發生log switch時保存原來日志;noarchivelog,不保存原有日志,直接重用。
生產環境中要使用archivelog mode,保證數據不丟失。
7. 口令文件(password file)
可選文件,為遠程啟動oracle提供驗證。
8. DMP文件(exp/imp files)
dmp文件用于oracle的導入導出,它和平臺無關;是二進制文件;通過網絡傳輸時要確保以二進制的格式進行傳輸,否則可能導致文件被轉換;導入時向下兼容即新版本的oracle可導入老版本的dmp文件。
久久不醉