Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1021813
  • 博文数量: 584
  • 博客积分: 2293
  • 博客等级: 大尉
  • 技术积分: 3045
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-28 11:15
文章分类

全部博文(584)

文章存档

2012年(532)

2011年(47)

2009年(5)

我的朋友

分类:

2012-03-04 22:13:34

原文地址:oracle数据库添加内存 作者:syxian

1.修改挂载参数,linux运行就了重启会强制检测磁盘,将最后2个数据全设置为0
  1. [root@ora29 ~]#cat /etc/fstab
2.修改SGA使用大小
  1. [root@ora29 ~]# cat /etc/sysctl.conf
  2. kernel.shmall=x 可用共享内存的总量,单位页;x*页大小/1024/1024= G
  3. kernel.shmmax=y 单个共享内存段的最大数;y/1024/1024/1024= G
  4. kernel.shmmni=z 单个共享内存段的最小值;z单位是bytes,一般都是4K

 [root@ora29]#tune2fs -l /dev/sda1| grep "Block size"查看块大小,到内存中即页大小

 cat >> /etc/sysctl.conf << EOF
 kernel.shmall = 7340032
 kernel.shmmax = 34359738368
 EOF

3.修改PGA参数
  1. alter system set sga_max_size=22526m scope=spfile;
  2. alter system set sga_target=22528m scope=spfile;
  3. alter system set pga_aggregate_target = 6144m scope=spfile;
4.如若数据文件以后有大量增加需要修改db_files,修改完成需要重启。
  1. SYS>show parameter db_files

    SYS>alter system set db_files=9300  scope=spfile ;

5.修改完成后查看修改结果
  1. [oracle@ora29 ~]$ ipcs -l

扩展:
并不是所有的SGA内存区都能被SGA_TARGET控制,在10g中,只有5个部分的的内存会再实例运行中,由oracle自动调整其使用的内存空间:
DB_CACHE_SIZE
SHARE_POOL_SIZE
JAVA_POOL_SIZE
LARGE_POOL_SIZE
STREAMS_POOL_SIZE
另外
SGA_TARGET:设置为0,则为手动设置;大于0,则SGA内存将会自动分配。
STATISTICS_LEVEL:设置为TYPICAL或ALL,以便收集到足够的统计信息,否则oracle没有先关统计信息作为参照,就无法确定如何分配SGA各部分的内存。
阅读(444) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~