有时候我们为了学习Oracle而需要在自己的PC上安装Oracle数据库软件。而众所周知,Oracle是一个吃内存的大户,默认安装后,内存占用量很大,那么,对于个人学习Oracle来说,有没有节约内存的办法呢。当然有了,那就是,可以设置SGA(系统全局区)来节省内存。具体方法和步骤,可以参看一下内容。
首先,查看一下SGA的配置情况,在C:\oracle\product\10.2.0\db_1\dbs(具体文件位置视个人具体安装而定)下面的SPFILEoracleID.ORA。
这个文件下面有如下默认的两行,这就是我们想要修改的参数。但是,注意不要直接修改这个文件,因为这个是二进制的文件,用记事本等手段修改后会导致Oracle启动不起来的问题,如果不小心修改了的朋友请参考这个帖子可以改回来。
*.sga_target=287309824(274M)
*.pga_aggregate_target=95420416(91M)
--(括号内是标注的多少M,实际文件中只标写了字符数)
如果是个人PC的话,可以将*.sga_target=160M,*.pga_aggregate_target=24M。这样可以省下来181M的内存大小。
下面我们来看具体如何修改这两个参数的大小。
进入SQL*Plus工具,或者CMD连接SQL*Plus工具都可以,以DBA身份登录。然后:
1,show parameter spfile;
此命令来查看spfile的参数(包括名称,类型和值)
2,alter system set sga_target=160M scope=both;
3,alter system set pga_aggregate_target=24M scope=both;
注意,scope范围要设置,否则默认情况下是当前应用,数据库从新启动后设置不保存而消失。
另外,如果作为测试服务器,可以停掉一下两个服务:
1,OracleDBConsoleoracleID
2,OracleOraDb10g_home1iSQL*Plus
注:1停掉后通过IE就无法访问数据库配置了
至此,Oracle的SGA就简单从新分配一下,帮你节约了不少内存吧。其实,从新分配的这么多内存对于一个测试服务器来说,也已经完全够用了。