When starting an Oracle Instance, the following messages are displayed in the warning log files, ORA-700 errors are called flexible claims to note that something unexpected has happened, but not fatal to a transaction or moment, so the transaction can proceed without any damage.
Cause
PGA_AGGREGATE_TARGET specified is high
Errors in file /u01/app/oracle/diag/rdbms/bugra/BUGRA/trace/BUGRA_ora_14488.trc (incident=948025):
ORA-00700: soft internal error, arguments: [pga physmem limit], [139586437120], [95766457958], [], [], [], [], [], [], [], [], []
Incident details in: /u01/app/oracle/diag/rdbms/bugra/BUGRA/incident/incdir_948025/BUGRA_ora_14488_i948025.trc
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
2023-02-13 23:24:37.775 : USRTHRD:4015187712: [ INFO] {2:20523:2} InstConnection::connectInt 280 OCIException OCI error 3135
2023-02-13 23:24:37.775 : USRTHRD:4015187712: [ INFO] {2:20523:2} InstConnection::disConnect 100 this:0x7fbd100680e0 get SessionLock 0x7fbce403a970 for OCISessionEnd
2023-02-13 23:24:37.775 : USRTHRD:4015187712: [ INFO] {2:20523:2} InstConnection:connect 040 excp OCIException OCI error 3135 count 1
2023-02-13 23:24:37.775 : USRTHRD:4015187712: [ INFO] {2:20523:2} InstConnection::connectInt 020 this:0x7fbd100680e0 logon_mode:8000 m_oracleSid:+ASM2 m_oracleHome:/u01/app/19.3.0/grid attach
2023-02-13 23:24:37.795 : USRTHRD:4015187712: [ INFO] {2:20523:2} ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 4475
Additional information: 1262282731
Process ID: 0
Session ID: 0 Serial number: 0
…
Solutions
Check out -> Control OS Huge pages and OS free memory
vi /etc/sysctl.conf or /etc/sysctl.d/sysctl.conf
-> net.ipv4.ipfrag_high_thresh = 16777216
-> net.ipv4.ipfrag_low_thresh = 15728640
vm.min_free_kbytes = It is necessary to calculate
vm.min_free_kbytes -> 0.5% or 1 gb of physical memory, whichever is larger – which was 256 gb in the SDF, we wanted it to be set to 2 gb.
vm.nr_hugepages or Hugepagesize = It is necessary to calculate
Auto script:
https://gist.github.com/vinayakrk/d0b572bc0580c1f09d37b9ba7b58cf05
Recommended setting: vm.nr_hugepages = xxxx
OR
grep Huge /proc/meminfo Hugepagesize Oracle Linux: Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration (Doc ID 401749.1) Root – > sysctl -p Check out the sga and pga Check that the MEMORY_TARGET parameters have not been set for the database and that the SGA_TARGET and PGA_AGGREGATE_TARGET parameters are being used instead.
Show spparameter pga -> An instance restart is required
Show spparameter sga -> An instance restart is required
Let’s check the use_large_pages parameter in the database; if it’s not TRUE, let’s make it TRUE.
SQL> select value from v$parameter where name = ‘use_large_pages’;
VALUE ——————————————————————————–
TRUE
İt’s not true
ALTER SYSTEM SET use_large_pages=true SCOPE=SPFILE; SHUTDOWN IMMEDIATE; STARTUP; For SGA/PGA sql> alter system set pga_aggregate_target = 24g comment='internally adjusted' scope=spfile; sql> alter system set pga_aggregate_limit=48G scope=spfile; sql>alter system set sga_max_size = 48g comment='internally adjusted' scope=spfile; sql> alter system set sga_target = 48g comment='internally adjusted' scope=spfile; SHUTDOWN IMMEDIATE; STARTUP;
Have a nice day.
Tags: