Subscribe to Posts by Email

Subscriber Count

    701

Disclaimer

All information is offered in good faith and in the hope that it may be of use for educational purpose and for Database community purpose, but is not guaranteed to be correct, up to date or suitable for any particular purpose. db.geeksinsight.com accepts no liability in respect of this information or its use. This site is independent of and does not represent Oracle Corporation in any way. Oracle does not officially sponsor, approve, or endorse this site or its content and if notify any such I am happy to remove. Product and company names mentioned in this website may be the trademarks of their respective owners and published here for informational purpose only. This is my personal blog. The views expressed on these pages are mine and learnt from other blogs and bloggers and to enhance and support the DBA community and this web blog does not represent the thoughts, intentions, plans or strategies of my current employer nor the Oracle and its affiliates or any other companies. And this website does not offer or take profit for providing these content and this is purely non-profit and for educational purpose only. If you see any issues with Content and copy write issues, I am happy to remove if you notify me. Contact Geek DBA Team, via geeksinsights@gmail.com

Pages

Oracle 20c: Expression for Initialization Parameters

Starting 20c, One can keep expression in Initialization Parameters. some examples from documentation as below

Initialization parameter expressions can contain the following constructs:Integer values

OLAP_PAGE_POOL_SIZE = 1073741824

Decimal values, only when they are part of a numeric operation

CPU_COUNT = 8 * 0.6

If the operation resolves to a decimal value, then the result is truncated to an integer value. This example would set CPU_COUNT to 4.

An integer value followed by an indicator that the integer is expressed in kilobytes (k or K), megabytes (m or M), gigabytes (g or G), terabytes (t or T), petabytes (p or P), or exabytes (e or E) OLAP_PAGE_POOL_SIZE = 900m

MEMORY_TARGET = 2G

Other parameter names

JOB_QUEUE_PROCESSES = PROCESSES

The binary operators for multiplication (*), division (/), modulo (%), addition (+), and subtraction (-)

SHARED_SERVERS = MAX_SHARED_SERVERS / 2 DATA_GUARD_MAX_LONGIO_TIME = DATA_GUARD_MAX_IO_TIME + 10 * 3

Operator precedence: the multiplication, division, and modulo operators are evaluated first, from left to right, and then the addition and subtraction operators are evaluated from left to right.If the expression resolves to a decimal value, then the result is truncated to an integer value.

Parentheses, which allow you to override operator precedence

SHARED_SERVERS = (MAX_SHARED_SERVERS - 1) / 2 DATA_GUARD_MAX_LONGIO_TIME = (DATA_GUARD_MAX_IO_TIME + 10) * 3

The MIN and MAX functions. These functions take two operands and return the minimum and maximum value, respectively.

AQ_TM_PROCESSES = MIN(40, PROCESSES * .1) SESSIONS = MAX(200, PROCESSES * 1.5)

Environment variable values, which must be preceded by the dollar sign ($)CPU_COUNT = $SYSTEM_CPU/5

You can specify an expression when using any of the following methods to set an initialization parameter:

For example:

ALTER SESSION SET AQ_TM_PROCESSES = 'MIN(40, PROCESSES * .1)';

ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 'PROCESSES' SCOPE=BOTH;

Comments are closed.