直接通过sqlplus命令行处理:
1、查看当前oracle内存占用情况:
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 12.2.0.1.0 Production on 星期日 1月 17 10:14:58 2021
Copyright (c) 1982, 2016, Oracle. All rights reserved.
SQL> conn / as sysdba
已连接。
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDBORCL READ WRITE NO
4 DEV READ WRITE NO
SQL>
SQL>
SQL> show parameter sga;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
allow_group_access_to_sga boolean FALSE
lock_sga boolean FALSE
pre_page_sga boolean TRUE
sga_max_size big integer 19648M
sga_min_size big integer 0
sga_target big integer 19648M
unified_audit_sga_queue_size integer 1048576
SQL>
SQL>
2、更改oracle占用内存大小:
SQL> alter system set sga_target=8192m scope=spfile;
系统已更改。
SQL>
SQL> alter system set sga_max_size=8192m scope=spfile;
系统已更改。
SQL>
这里注意:sga_target 必须小于或等于 sga_max_size,否则库就启动不了啦!
3、重启oracle服务:
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 8589934592 bytes
Fixed Size 12478408 bytes
Variable Size 2986346552 bytes
Database Buffers 5570035712 bytes
Redo Buffers 21073920 bytes
数据库装载完毕。
数据库已经打开。
SQL>
4、再次查看当前oracle内存占用情况:
SQL> show parameter sga;
NAME TYPE VALUE
------------------------------------ ----------- -----------
allow_group_access_to_sga boolean FALSE
lock_sga boolean FALSE
pre_page_sga boolean TRUE
sga_max_size big integer 8G
sga_min_size big integer 0
sga_target big integer 8G
unified_audit_sga_queue_size integer 1048576
SQL>
oracle内存占用大小修改成功。