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”