Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

5

积分

1

好友

3

主题
1#
发表于 2013-9-6 17:39:47 | 查看: 5859| 回复: 5
  版本: redhat 10.2.0.4.0

RACDB1@rac1 /home/oracle$ uname -a
Linux rac1 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux
RACDB1@rac1 /home/oracle$ sqlplus / as sysdba;

SQL*Plus: Release 10.2.0.4.0 - Production on Fri Sep 6 17:32:44 2013

Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

应用中 我遇到如果px 数大于parallel_max_servers 后,会跨实例进行同时查询,这样对于大表全表扫描肯定会引起性能影响,然后查这资料说,设置alter session set parallel_instance_group='RACDB1';   此会话就只在本节点运行,但是我测试发现, 并行却开不起了,即使我设置不超过本节点还是不行,有什么更好的办法么,还我理解没对(RACDB1为我运行的节点实例名)
SQL> alter session set parallel_instance_group='';

Session altered.

SQL> select /*+parallel(t 10)*/ count(1) from t;

  COUNT(1)
----------
  11900802

SQL> alter session set parallel_instance_group='RACDB1';   

Session altered.

SQL> select /*+parallel(t 5)*/ count(1) from t;

  COUNT(1)
----------
  11900802

SQL> select /*+parallel(t 5)*/ count(1) from t;

  COUNT(1)
----------
  11900802

SQL> show parameter parallel

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
fast_start_parallel_rollback         string      LOW
parallel_adaptive_multi_user         boolean     TRUE
parallel_automatic_tuning            boolean     FALSE
parallel_execution_message_size      integer     2148
parallel_instance_group              string      RACDB1
parallel_max_servers                 integer     5
parallel_min_percent                 integer     0
parallel_min_servers                 integer     0
parallel_server                      boolean     TRUE
parallel_server_instances            integer     2
parallel_threads_per_cpu             integer     2

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
recovery_parallelism                 integer     0
2#
发表于 2013-9-6 20:08:50
但是我测试发现, 并行却开不起了

==>你怎么得到这个结论的?

回复 只看该作者 道具 举报

3#
发表于 2013-9-7 17:53:12
我在开始测试时,两边都有5个p进程,但是当我设置以后,在RACDB1那边就没有出现P进程,而且从v$session里面也只有一个会话。

回复 只看该作者 道具 举报

4#
发表于 2013-9-7 21:04:32
PARALLEL_INSTANCE_GROUP is an Oracle RAC parameter that you can specify in parallel mode only. Used in conjunction with services or with the INSTANCE_GROUPS parameter, it lets you restrict parallel query operations to a limited number of instances. Note that the INSTANCE_GROUPS parameter has been deprecated.

This parameter identifies the parallel instance group Oracle will use for spawning parallel execution processes. If used in conjunction with services, then parallel operations will spawn parallel execution processes only on instances defined in the service. If used in conjunction with INSTANCE_GROUPS, then parallel operations will spawn parallel execution processes only on instances that specify a matching group in their INSTANCE_GROUPS parameter.

If the value assigned to PARALLEL_INSTANCE_GROUP is the name of a service or group that does not exist, then the operation runs serially. No parallelism is used.

回复 只看该作者 道具 举报

5#
发表于 2013-9-10 17:27:19
1、alter system set instance_groups='racdb1','racdb2' scope=spfile;
2、startup force;
3、alter session set parallel_instance_group='racdb1';
4、try test  again

回复 只看该作者 道具 举报

6#
发表于 2013-9-13 15:22:37
并行跨实例运行
建议一般情况下并行查询限制在实例内,这可以通过INSTANCE_GROUPS、PARALLEL_INSTANCE_GROUPS参数来实现.
比如在节点1上设置:
rac1.Instance_groups=rac1,rac
Rac1.Parallel_instance_group=rac1
在节点2上设置:
Rac2.Instance_groups=rac2,rac
Rac2.Parallel_instance_group=rac2
通过这些参数的设置,在缺省环境下,并行查询只能在实例内进行。因为每个实例的缺省PARALLEL_INSTANCE_GROUP都是实例名,只有本实例的instance_groups参数中包含和本实例名相同的instance_group。而如果我们想要让某个SQL跨实例做并行查询的时候,可以通过下面的方法进行:
Alter session set parallel_instance_group='rac';
Select ....
由于两个实例都属于rac instance_group,所以只要parallel_instance_group设置为‘rac’就可以了。

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-5-17 15:43 , Processed in 0.046583 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569