降低oracle 12c数据库的内存,启动oracle数据库后报错:
MEMORY_TARGET not supported on this system
需要降低memory_target配置,使 memory_target配置低于/dev/shm配置。
原来配置:
pfile配置里:
memory_target=26G设置为 memory_target=12G
tmpfs 31G 7.8G 23G 26% /dev/shm
原先系统内存:
total used free shared buffers cached
Mem: 61 58 2 7 0 55
-/+ buffers/cache: 2 58
Swap: 1 0 1
降配到32GB内存, /dev/shm变为16GB,原本 memory_target是26GB,无法启动oracle数据库,于是把
memory_target改为12GB。(在pfile内修改)
先关闭数据库:
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
删除spfile:
mv spfilewmsprod.ora spfilewmsprod.ora.bak
启动数据库:
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 1.2827E+10 bytes
Fixed Size 2265224 bytes
Variable Size 7583305592 bytes
Database Buffers 5200936960 bytes
Redo Buffers 40861696 bytes
SQL> create spfile from pfile;
File created.
SQL> alter database mount;
Database altered.
SQL> alter database open;
Database altered.
SQL> select status from v$instance;
STATUS
------------
OPEN
SQL> show parameter sga;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 12G
sga_target big integer 0
SQL> show parameter memory;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 12G
memory_target big integer 12G
shared_memory_address integer 0
降配完成。