一 .性能参数
1.CPU parameter
cpu_count:显示的是逻辑cpu数量(thread), 主要是对并行度有影响
2.Memory parameter
pga_aggregate_target:可以自动对pga进行调整
sga_target:可以自动对sga进行调整
memory_target:可自动调整所有的内存,这就是新引入的自动内存管理特性
A: 如果memory_target设置为非0值
情况一:sga_target和pga_aggregate_target已经设置大小,如果oracle中已经设置了参数sga_target和pga_aggregate_target,则这两个参数将各自被分配为最小值为他们的目标值,则Memory_target = sga_target + pga_aggregate_target,大小和memory_max_size一致。
B:如果Memory_target 设置为0
11g中默认为0,则初始状态下取消了Memory_target的作用,完成和10g在内存管理上一致,完全向下兼容。
情况1:sga_target设置值,则自动调节sga中的shared pool,buffer cache,redo log buffer,java pool,large pool 等内存空间的大小。pag则依赖pag_aggregate_target的大小。sga和pga不能自动增长或自动缩小。
memory_max_target
- 允许memory_target调整的上限,当:
- 设置memory_max_target而忽略memory_target,oracle设置memory_target=0(不使用自动内存管理)
- 设置memory_target的值,忽略memory_max_target,oracle自动将memory_max_target设置为memory_target的值
- 同时设置这两个值,memory_target的上限值为memory_max_target
SGA_TARGET
对sga区的动态调整
pga_aggregate_target
pag内存空间总和的动态调整
3. I/O参数
db_file_multiblock_read_count : 多数据块的读取 使用情况【1. 全表扫描(FTS) 2. index_ffs(index fast full scan)】 一般在这两种情况下使用该参数较多
db_writer_processes:我们可以设置多个db_writer进程,以加快数据从缓冲区往磁盘写入的速度,这在写操作非常大的数据库上非常有用。需要注意的是,这个参数只用于数据库的写操作,和数据读取没有任何关系,数据块的读取是用户会话的服务端进程来完成的。
disk_asynch_io : 异步io,19c默认是true
4. 网络连接
processes : 数据库允许产生的processes数量
sessions :数据库允许产生的session数量 (1.5 * processes )+22
process和session的关系:process表示操作系统系统的一个进程,session表示process和数据库建立的会话数量
open_cursors :指定某个会话能够打开的最大游标数。
5. 优化器
5.1 optimizer_index_cost_adj :cbo计算成本时索引的权重修正值。该值越小优化器越趋向索引
5.2 optimizer_mode
5.3 optimizer_dynamic_sampling(19c 默认是2 范围是0 ~ 10)
二.性能视图
1.cpu
v$sysstat 和v$sesstat
2.内存
v$memory_target_advice
3.IO
v$iostat_file :显示各种文件的i/O统计信息 -- 数据文件,临时文件,控制文件、日志文件、归档文件
4. 对象
v$segstat :获得某对象的各类统计信息
5.网络会话
v$session -- 某会话的当前各种状态,比如关联v$sql视图查看当前会话的sql语句
v$session_wait -- 会话当前等待事件的详细信息
v$session_event -- 会话的所有等待事件的详细信息
v$sesstat -- 会话的资源的统计信息
标签:12,target,pga,会话,视图,sga,session,memory,Oracle From: https://www.cnblogs.com/zmc60/p/17118228.html