Oracle 参数 SERIAL_REUSE 官方解释,作用,如何配置最优化建议
本站中文解释
=true
**SERIAL_REUSE参数**
SERIAL_REUSE参数是oracle中重要的参数之一,直接影响到oracle的分布式事务处理和应用程序性能。它默认为false,这意味着当事务结束时,如果没有外部的“引用”,oracle会释放事务所在的序列号(比如说,在以前的cursors中会保存序列号),并且重新生成新的序列号来唤醒新的事务。
如果将SERIAL_REUSE参数设置为true,oracle就不会放弃以前的分布式事务中生成的序列号,而是会引用以前的序列号,然后重复使用它们。
正确设置SERIAL_REUSE参数有助于提高数据库的性能,特别是在重复执行相同的分布式事务中。在复杂的分布事务处理系统中,该参数也可以带来精确的并行度和精确的吞吐量,但要确保不影响现有的分布式事务的精确性,所以应该尽量避免将SERIAL_REUSE参数设置为true。
官方英文解释
SERIAL_REUSE
specifies which types of cursors make use of the serial-reusable memory feature. This feature allocates private cursor memory in the SGA so that it can be reused (serially, not concurrently) by sessions executing the same cursor.
Property | Description |
---|---|
Parameter type |
String |
Syntax |
|
Default value |
|
Modifiable |
No |
Modifiable in a PDB |
No |
Basic |
No |
Note:
The SERIAL_REUSE
parameter is deprecated. It is retained for backward compatibility only.
Values
-
disable
Disables the option for all SQL statement types. This value overrides any other values included in the list.
-
all
Enables the option for both DML and
SELECT
statements. Equivalent to settingselect
,dml
, andplsql
. -
select
Enables the option for
SELECT
statements. -
dml
Enables the option for DML statements.
-
plsql
Currently has no effect (although PL/SQL packages do support the serial-reuse memory option using PL/SQL pragmas).
Note:
If CURSOR_SPACE_FOR_TIME
is set to true
, then the value of SERIAL_REUSE
is ignored and treated as if it were set to disable
.
See Also:
“CURSOR_SPACE_FOR_TIME”