开发用的电脑,内存升级到了40G,发现Oracle服务占用内存特别大,甚至高达9个G,
搜索了以下,貌似是因为Oracle默认设置占用内存是内存的1/8,照这个数看应该是指物理内存加虚拟内存总和了,
因为只是进行开发并不需要测试数据库有多高的性能,决定缩小Oracle内存配置,
以下这篇博文比较全面,其他很多文章只调sga_开头的并没有效果.
原文地址:https://www.cnblogs.com/jingdian1956/p/7429214.html
按如下的步骤调整内存
1. sqlplus /nolog
2. conn / as sysdba
3. show parameter target
4. show parameter sga
alter system set sga_max_size=512M scope=spfile;
alter system set sga_target=512M scope=spfile;
5. show parameter pga
alter system set pga_aggregate_target=512m scope=spfile;
6. show parameter memory
alter system set memory_target = 2048M scope=spfile;
alter system set memory_max_target =2048M scope=spfile;
7. shutdown immediate
8. startup
如果出现启动失败,可以用默认init.ora文件启动,修复过程如下
1.使用此pfile(init.ora)文件启动oracle
startup pfile='E:\app\Administrator\product\11.2.0\dbhome_1\dbs\init.ora';
2.删除原始spfile,并创建新的spfile
create spfile from memory;
3.按照正常方式重启oracle即可。
SQL> shutdown abort
SQL> startup
------------------------------------
其他参考文章:https://blog.csdn.net/wh445306/article/details/102881209
其中提到 sga_target < = sga_max_size <= memory_target <= memory_max_target
标签:spfile,11g,set,target,占用,sga,内存,Oracle From: https://www.cnblogs.com/dirgo/p/16984877.html