11.1数据库版本修改memory_target参数应避开4的倍数
实验环境:
RAC集群,memory_target自动内存管理。
firstnode:
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string +DATA_DB/orcl/spfileORCL.
ora
SQL> show parameter mem
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 50G
memory_target big integer 50G
shared_memory_address integer 0
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 50G
sga_target big integer 0
SQL> alter system set memory_max_target=40G scope=spfile sid='*';
System altered.
SQL> alter system set memory_target=40G scope=spfile sid='*';
System altered.
SQL> alter system set sga_max_size=40G scope=spfile sid='*';
System altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORA-00604: error occurred at recursive SQL level 1
ORA-04030: out of process memory when trying to allocate 304 bytes (PCursor,kglob)
告警日志报错:
Reconfiguration complete
Thu Dec 12 15:53:31 2013
LCK0 started with pid=74, OS id=18994
Thu Dec 12 15:53:31 2013
Starting background process RSMN
Thu Dec 12 15:53:31 2013
RSMN started with pid=77, OS id=18996
ORACLE_BASE from environment = /u01/oracle
Thu Dec 12 15:53:33 2013
Errors in file /u01/oracle/diag/rdbms/orcl/orcl1/trace/ORCL1_ora_18997.trc (incident=1640240):
ORA-04030: out of process memory when trying to allocate 304 bytes (PCursor,kglob)
Incident details in: /u01/oracle/diag/rdbms/orcl/ORCL1/incident/incdir_1640240/ORCL1_ora_18997_i1640240.trc
Thu Dec 12 15:53:35 2013
NOTE:Loaded library: System
Thu Dec 12 15:53:36 2013
Trace dumping is performing id=[cdmp_20131212155336]
Thu Dec 12 15:53:36 2013
SUCCESS: diskgroup DATA_ZKF was mounted
Errors in file /u01/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_mmon_18884.trc (incident=1640656):
ORA-04031: unable to allocate 393288 bytes of shared memory ("large pool","unknown object","large pool","ASM map operations hashtable")
Incident details in: /u01/oracle/diag/rdbms/orcl/ORCL1/incident/incdir_1640656/ORCL1_mmon_18884_i1640656.trc
Thu Dec 12 15:53:38 2013
Errors in file /u01/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_ping_18844.trc:
Trace dumping is performing id=[cdmp_20131212155340]
Errors in file /u01/oracle/diag/rdbms/orcl/ORCL1/trace/ORCL1_mmon_18884.trc (incident=1640657):
ORA-00600: internal error code, arguments: [kmgs_parameter_update_timeout_1], [4031], [], [], [], [], [], []
ORA-04031: unable to allocate 393288 bytes of shared memory ("large pool","unknown object","large pool","ASM map operations hashtable")
Incident details in: /u01/oracle/diag/rdbms/orcl/ORCL1/incident/incdir_1640657/ORCL1_mmon_18884_i1640657.trc
节点2:
SQL> show parameter mem
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 50G
memory_target big integer 50G
shared_memory_address integer 0
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 50G
sga_target big integer 0
SQL> alter system set memory_max_target=42G scope=spfile sid='*';
System altered.
SQL> alter system set memory_target=42G scope=spfile sid='*';
System altered.
SQL> alter system set sga_max_size=42G scope=spfile sid='*';
System altered.
节点1:
$ ps -ef |grep smon
root 2541 1 0 Dec 11 ? 0:00 /etc/opt/resmon/lbin/emsagent
orazkf 18876 1 0 15:52:55 ? 0:00 ora_smon_ORCL1
root 3045 1 0 Dec 11 ? 0:00 /etc/opt/resmon/lbin/p_client
grid 3612 1 0 Dec 11 ? 0:01 asm_smon_+ASM1
orazkf 19539 18437 0 15:55:29 pts/1 0:00 grep smon
$ sqlplus / as sysdba
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Dec 12 15:55:35 2013
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected.
SQL> shutdown immediate
ORA-00604: error occurred at recursive SQL level 1
ORA-04030: out of process memory when trying to allocate 304 bytes (PCursor,kglob)
SQL> exit
Disconnected
$ ps -ef |grep smon
root 2541 1 0 Dec 11 ? 0:00 /etc/opt/resmon/lbin/emsagent
orazkf 18876 1 0 15:52:55 ? 0:00 ora_smon_ORCL1
root 3045 1 0 Dec 11 ? 0:00 /etc/opt/resmon/lbin/p_client
grid 3612 1 0 Dec 11 ? 0:01 asm_smon_+ASM1
orazkf 19551 18437 1 15:55:55 pts/1 0:00 grep smon
$ kill -9 18876
再尝试启动:
$ sqlplus / as sysdba
SQL*Plus: Release 11.1.0.6.0 - Production on Thu Dec 12 15:57:19 2013
Copyright (c) 1982, 2007, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 4.4896E+10 bytes
Fixed Size 2119288 bytes
Variable Size 2.3951E+10 bytes
Database Buffers 2.0938E+10 bytes
Redo Buffers 4362240 bytes
Database mounted.
Database opened.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24500180/viewspace-1063482/ ,如需转载,请注明出处,否则将追究法律责任。