Oracle12C 调整 sga pga 调优记录
3.2oracle参数调优
查询oracle当前参数配置情况(processs=500;sessions=2280)
1)以dba身份登录查看sga和pga情况
SGA:System Global Area是Oracle Instance的基本组成部分,在实例启动时分配;系统全局域SGA主要由三部分构成:共享池、数据缓冲区、日志缓冲区。
SQL> show parameter sga;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
allow_group_access_to_sga boolean FALSE
lock_sga boolean FALSE
pre_page_sga boolean TRUE
sga_max_size big integer 4816M (计划改成 10000M)
sga_min_size big integer 0
sga_target big integer 4816M (计划改成 10000M)
unified_audit_sga_queue_size integer 1048576
PGA:Program Global Area是为每个连接到Oracle database的用户进程保留的内存
SQL> show parameter pga;
pga_aggregate_limit big integer 4500M (计划改成 10000M)
pga_aggregate_target big integer 1602M (计划改成 4500M)
2)修改数据库参数
(sga_target不得大于sga_max_size,一般保持两者相等)
SQL> alter system set sga_max_size=10000M scope=spfile;
SQL> alter system set sga_target=10000M scope=spfile;
--SQL> alter system set pga_aggregate_limit=10000M scope=spfile; 这个按需执行
--SQL> alter system set pga_aggregate_target=5000M scope=spfile; 这个按需执行
3)重启数据库
SQL> shutdown immediate;
SQL> startup;
4、异常处理
4.1重启数据库异常ORA-27104
报错:ORA-27104: system-defined limits for shared memory was misconfigured (原因:应该是oracle配置超出了linux内核共享内存的问题)
查看参数文件恢复参数
修改:/home/app/oracle/product/12.2/dbs/spfileORCL.ora (/home/app/oracle/product/12.2为安装目录)
找到刚刚配置的*.sga_max_size和*.sga_target参数,恢复到初始值(可参考上方ORCL.__sga_target的值)。
4.2修改配置不生效异常ORA-32001
报错:ORA-32001:write to SPFILE requested but no SPFILE is in use
修复:
查看是否有spfile文件
sql> show parameter spfile;
如果没有,需要创建
sql> create spfile from pfile;
确认是否有了
sql> show parameter spfile;
然后再重新做3.2章节的修改配置。
转自:(59条消息) 关于Oracle12C性能(sga、pga)调优记录_unified_audit_sga_queue_size_LingDong Jey的博客-CSDN博客