原来在Windows10中文版上安装Oracle19c数据库软件时,根据安装提示,默认设置的就是操作系统全部内存大小的40%。后期使用过程中,觉得给Oracle19c分配的内存过大,尤其是再启动虚拟机的RHEL8.1上的Oracle时,导致体验非常差,非常慢。
所以现在需要给Windows10中文版上安装的Oracle19c数据库软件缩小内存使用量,调整数据库sga_target和sga_max_size大小为1G,过程如下:
SQL> shutdown immediate; --和谐关闭数据库
SQL> startup nomount; --启动数据库到nomount状态,此状态下可以修改参数
SQL> create pfile='D:\WINDOWS.X64_193000_db_home\dbs\yinainit.ora' from spfile; --利用二进制的spfile创建一个肉眼可见可读的pfile文件,检查一下现有参数设置情况
SQL> show parameter sga; --查看一下和sga相关的参数设置情况
SQL> alter system set sga_max_size=1024m scope=spfile; --在spfile范围内更改sga_max_size参数设置
SQL> alter system set sga_target=1024m scope=both; --在memory和spfile范围内,更改sga_target参数设置情况
SQL> shutdown immediate --和谐关闭数据库
SQL> startup nomount; --将数据库启动到nomount状态
ORACLE 例程已经启动。
Total System Global Area 1073738560 bytes
Fixed Size 9036608 bytes
Variable Size 905969664 bytes
Database Buffers 150994944 bytes
Redo Buffers 7737344 bytes
SQL> show parameter sga --查看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 1G
sga_min_size big integer 0
sga_target big integer 1G
unified_audit_sga_queue_size integer 1048576
SQL> alter database mount; --将数据库启动到mount状态
数据库已更改。
SQL> alter database open; --打开数据库
数据库已更改。
SQL> select status from v$instance; --查看数据库状态
STATUS
OPEN
已选择 1 行。
SQL>