Oracle在 32位系统上运行突破sga1.7g的方法

php中文网
发布: 2016-06-07 17:12:56
原创
1246人浏览过

在32bit或者64bit的平台上跑32bit的oracle的时候,SGA总是受到限制,导致大内存的机器不能完全发挥作用,最近就专门找了一些关于

在32bit或者64bit的平台上跑32bit的Oracle的时候,,SGA总是受到限制,导致大内存的机器不能完全发挥作用,最近就专门找了一些关于调整最大SGA区的文档,看了看,感觉收获蛮大的,总结了一下几个平台的,但是不全,欢迎大家探讨补全。

我先把我总结的几个平台贴出来大家讨论讨论。

在RedHat ADVANCED SERVER2.1上扩展SGA(1.7G以上)

Fireflies.ai
Fireflies.ai

自动化会议记录和笔记工具,可以帮助你的团队记录、转录、搜索和分析语音对话。

Fireflies.ai 160
查看详情 Fireflies.ai

一.        目标:
1.        在一个4G以上的内存的机器上将SGA从1.7G增至2.7G
2.        兼容8.1.7,9.0.1,9.2.0版本的数据库
3.        整个SGA都能够被提高
二.        限制:
1.        只允许在本地启动和关闭数据库
2.        如果为PGA保存的虚拟内存太少就会导致ORA-4030的错误
三.        基本步骤:
1.        查看启动oracle用户的shel的进程号PID
ps -ef或者echo $$
2.        以root用户单独开一个进程,执行:
echo 268435456 > /proc/$PID/mapped_base
       这个要对server上所有产生oracle进程的shell
3.        修改shmmax的值。用root用户执行
echo 3000000000 > /proc/sys/shmmax
4.        重新分配SGA
shutdown immediate所有的oracle实例
cd $ORACLE_HOME/lib
cp –a libserver9.a libserver9.a.org(备份liberver9.a文件)
cd $ORACLE_HOME/bin
cp –a oracle oracle.org(备份oracle文件)
cd $ORACLE_HOME/rdbms/lib
genksms –s 0x15000000 > ksms.s
make –f ins_rdbms.mk ksms.o(编译新的sga地址)
make –f ins_rdbms.mk ioracle(重新链接)
  这样改过以后就可以支持到2.65G的sga,从而可以提高db_cache_size或者db_block_buffers去提高数据库的缓冲区了。

更多Oracle相关信息见Oracle 专题页面 ?tid=12

linux

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号