背景:
ERP系统由三个数据库节点(RAC)及四个应用节点组成,为了避免数据库内部节点之间心跳网上的频繁的大量的数据传输(cache fusion) - 这也是目前11i产品的主要性能问题,程序被分组运行在指定的数据库实例,这样可以使数据尽可能的cache在"本地"内存中。
1. 创建数据库service: ERP1,ERP2,ERP3
$ srvctl add service -d hwerp -s ERP1 -r "szsit01" -a "szsit02,szsit03" -p NONE -y MANUAL -e NONE -m NONE
$ srvctl add service -d hwerp -s ERP2 -r "szsit02" -a "szsit03,szsit01" -p NONE -y MANUAL -e NONE -m NONE
$ srvctl add service -d hwerp -s ERP3 -r "szsit03" -a "szsit01,szsit02" -p NONE -y MANUAL -e NONE -m NONE
备注:以ERP1服务为例,表示主要连接szsit01数据库,如果szsit01不能访问,那么连接另外两台。数据库
系统启动后,这些service需要手工(MANUAL)启动
$ srvctl start service -d hwerp -s "ERP1" -n szsit01
$ srvctl start service -d hwerp -s "ERP2" -n szsit02
$ srvctl start service -d hwerp -s "ERP3" -n szsit03
2. 配置应用层的Concurrent Mananger
在应用服务器上
$ cd $TNS_ADMIN
编辑tnsnames.ora 文件,分别在不同的应用服务器上加入对应的别名及连接串。
ERP1=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit01-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP1))
)
ERP2=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit02-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP2))
)
ERP3=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit03-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP3))
)
修改$CONTEXT_FILE中的s_cp_twotask值,应用服务器节点1,2,3分别修改为ERP1,ERP2,
ERP3 ,对于第四个应用服务器节点,不限制,还是使用默认的值(应该是hwerp这个service),
那么第四个节点不用于concurrent manager, 被用于web,form,sqlplus等 。
请注意备份每个应用节点 $TNS_ADMIN 目录下的tnsnames.ora文件,因为在修改s_cp_twotask
值后,需要关闭应用做adautocfg.sh ,应用服务器中的tnsnames.ora会恢复为原状(原来加入
的erp1等都消失了),做完adautocfg.sh后,需要重新设置tnsnames.ora中的erp1,erp2,erp3。
ERP系统由三个数据库节点(RAC)及四个应用节点组成,为了避免数据库内部节点之间心跳网上的频繁的大量的数据传输(cache fusion) - 这也是目前11i产品的主要性能问题,程序被分组运行在指定的数据库实例,这样可以使数据尽可能的cache在"本地"内存中。
1. 创建数据库service: ERP1,ERP2,ERP3
$ srvctl add service -d hwerp -s ERP1 -r "szsit01" -a "szsit02,szsit03" -p NONE -y MANUAL -e NONE -m NONE
$ srvctl add service -d hwerp -s ERP2 -r "szsit02" -a "szsit03,szsit01" -p NONE -y MANUAL -e NONE -m NONE
$ srvctl add service -d hwerp -s ERP3 -r "szsit03" -a "szsit01,szsit02" -p NONE -y MANUAL -e NONE -m NONE
备注:以ERP1服务为例,表示主要连接szsit01数据库,如果szsit01不能访问,那么连接另外两台。数据库
系统启动后,这些service需要手工(MANUAL)启动
$ srvctl start service -d hwerp -s "ERP1" -n szsit01
$ srvctl start service -d hwerp -s "ERP2" -n szsit02
$ srvctl start service -d hwerp -s "ERP3" -n szsit03
2. 配置应用层的Concurrent Mananger
在应用服务器上
$ cd $TNS_ADMIN
编辑tnsnames.ora 文件,分别在不同的应用服务器上加入对应的别名及连接串。
ERP1=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit01-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP1))
)
ERP2=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit02-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP2))
)
ERP3=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=szsit03-vip)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ERP3))
)
修改$CONTEXT_FILE中的s_cp_twotask值,应用服务器节点1,2,3分别修改为ERP1,ERP2,
ERP3 ,对于第四个应用服务器节点,不限制,还是使用默认的值(应该是hwerp这个service),
那么第四个节点不用于concurrent manager, 被用于web,form,sqlplus等 。
请注意备份每个应用节点 $TNS_ADMIN 目录下的tnsnames.ora文件,因为在修改s_cp_twotask
值后,需要关闭应用做adautocfg.sh ,应用服务器中的tnsnames.ora会恢复为原状(原来加入
的erp1等都消失了),做完adautocfg.sh后,需要重新设置tnsnames.ora中的erp1,erp2,erp3。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-774981/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-774981/