2012-11-11 45 views
2

是否有可能在oracle中控制或限制用户的并行线程使用情况?在Oracle中控制/限制用户的线程使用情况?

可以说,用户dev正在执行一个带有32个并行线程的SELECT查询。

但是,不管提示或表设计,我希望查询在单线程中运行,与/*NOPARALLEL*/提示一样。这应该发生在DML交易用户dev对数据库所做的任何事情上。

有什么办法可以做到这一点? 我试图寻找一种方法,但无法到达任何地方。

回答

2

我们可以限制用户使用系统资源的唯一方法是使用配置文件。 CREATE PROFILE选项提供了一些限制CPU使用率的选项,CPU_PER_SESSION和CPU_PER_CALL,但不包括CPU数量。 Find out more

我想说的是,在那种环境中,我们将要征收资源限制 - 即一个人住一个 - 使用并行查询要么通过PARALLEL_AUTOMATIC_TUNING参数交由数据库或通过并行被锁定仅提示预先查询的查询。