背景
本文是基于共享服务器模式配置大池的系列文章,主要测试如何配置参数dispatchers结论
1, dispatchers参数,里面包括诸多属性,比如:address,protocol,可以自定义控制调度器进程的不同行为2,可以指定多个不同配置的dispatchers,如采用PFILE启动数据库,可以在文件指定多条DISPATCHERS记录,这样即可启动多个调度器进程
3,可以通过几个视图,获知调度器进程的负载与压力,然后进行针对性的优化与调整
v$queue
v$dispatcher
v$dispather_rate
至少如何使用这些视图,请查看官方文档,有空再测试这块内容
4,共享服务器使用的大池子组件为session heap
测试
先放一个整体的架构图
1,学习配置dispatchers参数
---可见仅启动一个调度器进程
SQL> show parameter dispa
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
dispatchers string (protocol=tcp)(service=ora10g)
max_dispatchers integer 2
SQL> host ps -ef|grep -i --color d00
ora10g 4832 1 0 Sep22 ? 00:00:00 ora_d000_ora10g
ora10g 13087 6658 0 05:11 pts/1 00:00:00 /bin/bash -c ps -ef|grep -i --color d00
SQL>
2,从官方手册可知,可以以逗号指定多个调度器配置,但好像不成哟
SQL> alter system set dispatchers='(address=(protocol=tcp)(port=5000)),(address=(protocol=tcp)(port=5001))';
alter system set dispatchers='(address=(protocol=tcp)(port=5000)),(address=(protocol=tcp)(port=5001))'
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00119: invalid specification for system parameter DISPATCHERS
---官方手册也说,可以在PFILE中指定dispatchers多行,这样也可以配置多个不同的调度器,但这些记录必须相邻,这些产生的调度器是从0开始递增的
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /home/ora10g/product/10.2.0/db
_1/dbs/spfileora10g.ora
SQL> create pfile='/home/ora10g/dis.ora' from spfile;
File created.
[ora10g@seconary admin]$ more /home/ora10g/dis.ora|grep -i --color dispatchers
*.dispatchers='(protocol=tcp)(service=10g) (dispatchers=2)'
*.max_dispatchers=10
[ora10g@seconary admin]$ more /home/ora10g/dis.ora|grep -i --color dispatchers
*.dispatchers='(protocol=tcp)(service=10g)'
*.dispatchers='(protocol=tcp)(service=10g)'
*.max_dispatchers=10
采用PFILE配置多条DISPATCHERS记录,可以启动多个调度器进程
SQL> startup pfile='/home/ora10g/dis.ora'
ORA-32006: PARALLEL_AUTOMATIC_TUNING initialization parameter has been deprecated
ORACLE instance started.
Total System Global Area 1157627904 bytes
Fixed Size 2095800 bytes
Variable Size 352322888 bytes
Database Buffers 771751936 bytes
Redo Buffers 31457280 bytes
Database mounted.
Database opened.
SQL> host ps -ef|grep -i --color s00
ora10g 15189 1 0 06:23 ? 00:00:00 ora_s000_ora10g
ora10g 15191 1 0 06:23 ? 00:00:00 ora_s001_ora10g
ora10g 15215 15154 0 06:23 pts/1 00:00:00 /bin/bash -c ps -ef|grep -i --color s00
ora10g 15217 15215 0 06:23 pts/1 00:00:00 grep -i --color s00
SQL> host ps -ef|grep -i --color d00
ora10g 15185 1 0 06:23 ? 00:00:00 ora_d000_ora10g
ora10g 15187 1 0 06:23 ? 00:00:00 ora_d001_ora10g
ora10g 15225 15154 0 06:23 pts/1 00:00:00 /bin/bash -c ps -ef|grep -i --color d00
SQL>
从监听可知,里面注册了2个启动的调度器进程
LSNRCTL> services
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
Services Summary...
Service "10g" has 1 instance(s).
Handler(s):
"D001" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: seconary, pid: 15187>
(ADDRESS=(PROTOCOL=tcp)(HOST=secondary.redhat.com)(PORT=51720))
"D000" established:0 refused:0 current:0 max:1022 state:ready
DISPATCHER <machine: seconary, pid: 15185>
(ADDRESS=(PROTOCOL=tcp)(HOST=secondary.redhat.com)(PORT=33639))
Service "ora10g" has 1 instance(s).
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
3,查看在共享服务器下如何使用大池
SQL> show parameter large_pool_size
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
large_pool_size big integer 48M
SQL> select pool,name,bytes from v$sgastat where pool='large pool';
POOL NAME BYTES
------------ -------------------------- ----------
large pool free memory 50331648
[ora10g@seconary ~]$ sqlplus scott/system@ora10g
SQL> select server,status,count(*) from v$session group by server,status;
SERVER STATUS COUNT(*)
--------- -------- ----------
NONE INACTIVE 1
DEDICATED ACTIVE 17
SQL> select pool,name,bytes from v$sgastat where pool='large pool';
POOL NAME BYTES
------------ -------------------------- ----------
large pool free memory 49903584
large pool session heap 428064
[ora10g@seconary ~]$ sqlplus scott/system@ora10g
可见采用共享服务器模式,如配置大池,即会使用大池内存
SQL> select pool,name,bytes from v$sgastat where pool='large pool';
POOL NAME BYTES
------------ -------------------------- ----------
large pool free memory 49606720
large pool session heap 724928
个人简介
8年oracle从业经验,具备丰富的oracle技能,目前在国内北京某专业oracle服务公司从事高级技术顾问。
服务过的客户:
中国电信
中国移动
中国联通
中国电通
国家电网
四川达州商业银行
湖南老百姓大药房
山西省公安厅
中国邮政
北京302医院
河北廊坊新奥集团公司
项目经验:
中国电信3G项目AAA系统数据库部署及优化
中国联通4G数据库性能分析与优化
中国联通4G数据库性能分析与优化
中国联通CRM数据库性能优化
中国移动10086电商平台数据库部署及优化
湖南老百姓大药房ERR数据库sql优化项目
四川达州商业银行TCBS核心业务系统数据库模型设计和RAC部署及优化
四川达州商业银行TCBS核心业务系统后端批处理存储过程功能模块编写及优化
北京高铁信号监控系统RAC数据库部署及优化
河南宇通客车数据库性能优化
中国电信电商平台核心采购模块表模型设计及优化
中国邮政储蓄系统数据库性能优化及sql优化
北京302医院数据库迁移实施
河北廊坊新奥data guard部署及优化
山西公安厅身份证审计数据库系统故障评估
国家电网上海灾备项目4 node rac+adg
贵州移动crm及客服数据库性能优化项目
贵州移动crm及客服务数据库sql审核项目
深圳穆迪软件有限公司数据库性能优化项目
贵州移动crm及客服数据库性能优化项目
贵州移动crm及客服务数据库sql审核项目
深圳穆迪软件有限公司数据库性能优化项目
联系方式:
手机:18201115468
qq : 305076427
qq微博: wisdomone1
新浪微博:wisdomone9
qq群:275813900
itpub博客名称:wisdomone1 http://blog.itpub.net/9240380/
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9240380/viewspace-1807519/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9240380/viewspace-1807519/