首页 > 代码库 > 8月3
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 每3秒钟 在dbw写脏数据之前
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