8月3
實例包括緩沖區和進程。
【SGA(system global area) 是oracle的緩沖區名稱 會進行分割,分成更小的緩沖區。
Show sga 顯示sga的設置,顯示比較簡單,用的較少。
V$動態性能視圖,描述系統內部組件的一些信息。
Show parameter 查看初始化的參數 是show系列裏最重要的命令。
Shared pool 緩存最近執行過的執行計劃
Data dictionary cache 數據庫內部字典表的信息
Database buffer cache 讀到數據庫的塊的緩存 裏面是一個個數據庫的塊
Redo log buffer 記錄被修改之後的數據。
Large pool
【background process 後臺進程 dbw lgwr ckpt
DATABASE WRITER PROCESS 數據庫寫進程:是把臟數據塊寫到磁盤的數據文件中
一般一個數據庫寫進程為八個CPU服務
觸發數據塊做清理的條件:如每三秒鐘,臟數據塊達到限額, 沒有空閑的buffer (LRU),檢查點出現(會周期性出現)
Logwriter process日誌寫進程:把redo中的日誌條目寫到log日誌文件中
Lgwr觸發條件:日誌工作的提交(commit會觸發日誌條目寫磁盤,不會觸發臟數據塊寫磁盤),log buffer 1/3滿的時候 每次生成1MB的 redo data
Server process服務器進程接受用戶訪問
PGA(program global area)也是一個緩存 排序用的 每人一個,不可共享
Instance實例 多實例對應一個數據庫(以單實例作為擴展)
RAC(real application cluster)
Instance1 instance2
\ /
datebase
Database數據庫磁盤:
重做日誌
數據:放用戶的表和索引
鏈接層的日誌:重要的錯誤信息
控制文件:系統啟動時,會檢查控制文件的所有副本 , 數據操作中,控制文件必須可用。通過鏡像方式把控制文件保護起來 ,裏面有很多記錄信息。
SGA:
$ sqlplus / as sysdba
SQL> show sga
SQL> show parameter sga_max_size
SQL> select * from V$SGAINFO;
oem:瀏覽器中 服務器-->內存指導(https://192.168.0.1:1158/em)
shared pool:
SQL> show parameter shared_pool_size
SQL> select component, current_size/1024/1024 from V$SGA_DYNAMIC_COMPONENTS where component=‘shared pool‘;
SQL> select * from v$SGAINFO;
db buffer cache:
SQL> show parameter db_block_size
SQL> show parameter db_cache_size
SQL> select * from v$SGAINFO;
SQL> select component, current_size/1024/1024 from V$SGA_DYNAMIC_COMPONENTS where component=‘DEFAULT buffer cache‘;
redo log buffer:
SQL> show parameter log_buffer
SQL> select * from v$sgainfo;
PGA:
SQL> show parameter pga_aggregate_target
SQL> select * from V$PGASTAT where NAME=‘total PGA allocated‘;
後臺進程:
SQL> select name DESCRIPTION from v$bgprocess where paddr<>‘00‘;
SQL> ! ps -ef | grep ora_
SQL> show parameter db_writer_processes
數據文件:
$ ll /u01/app/oracle/oradata/orcl/*.dbf
SQL> select name from v$datafile;
SQL> select name from v$tempfile;
控制文件:
$ find /u01 -name ‘control0[12].ctl‘
SQL> select name from v$controlfile;
SQL> select TYPE, RECORD_SIZE, RECORDS_TOTAL, RECORDS_USED from v$controlfile_record_section;
重做日誌:
$ ll /u01/app/oracle/oradata/orcl/*.log
SQL> select group#, member from v$logfile;
參數文件:
$ ll $ORACLE_HOME/dbs/spfile*.ora
$ strings $ORACLE_HOME/dbs/spfileorcl.ora
SQL> show parameter spfile;
SQL> show parameter
密碼文件:
$ ll $ORACLE_HOME/dbs/orapw*
歸檔日誌:
SQL> select name from v$archived_log;
警告日誌:
$ find /u01 -name ‘alert_*.log‘
8月3