热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

oracle内存碎片,[20170126]hugepage与内存碎片.txt

[20170126]hugepage与内存碎片.txt--昨天给一台配置很低的机器安装dg(内存4G),同事安装完操作系统回家了,剩下的安装配置dg工作由我来完成.--完成后我想看

[20170126]hugepage与内存碎片.txt

--昨天给一台配置很低的机器安装dg(内存4G),同事安装完操作系统回家了,剩下的安装配置dg工作由我来完成.

--完成后我想看看是否可以使用hugepage,遇到一些问题,做一个测试:

1.环境:

$ cat /etc/issue

Oracle Linux Server release 5.9

Kernel \r on an \m

2.我的配置数据使用内存如下:

SYS@xxxxxxdg> show sga

Total System Global Area 1039765504 bytes

Fixed Size                  2234800 bytes

Variable Size             352323152 bytes

Database Buffers          679477248 bytes

Redo Buffers                5730304 bytes

SYS@xxxxxxdg> show parameter sga_

NAME         TYPE         VALUE

------------ ------------ --------

sga_max_size big integer  996M

sga_target   big integer  0

--//这样配置vm.nr_hugepages = 520就足够了.

3.我执行如下:

# sysctl -p

# sysctl vm.nr_hugepages

vm.nr_hugepages = 183

--//检查发现实际上仅仅得到183.到底那里配置错了.

--//仔细想想不对,机器配置内存太小,一定是无法找到对应大小的内存.

--//而实际free显示内存是足够的,估计内存碎片,无法满足这个数量.本来想重启机器,想想太复杂,我没有进入机房的权利,如果重启出问

--//题,这个大过年简直是没事找事.

$ free -m

total       used       free     shared    buffers     cached

Mem:          3951       1469       2482          0          9        168

-/+ buffers/cache:       1291       2659

Swap:        10236         62      10173

--//我停止数据库监听(数据库已经关闭).依然无法获得足够的数量hugepages.

# echo 3 >| /proc/sys/vm/drop_caches

# sysctl vm.nr_hugepages

vm.nr_hugepages = 328

--我停止许多不需要的服务sendmail....,仅仅回收:

# sysctl vm.nr_hugepages

vm.nr_hugepages = 381

--继续看不顺眼的服务全部停止,注意停止后还必须使用ntsys补选上相应的服务(注意做好记录,这步很重要,许多服务我自己也不是很了

--解).最后:

# echo 3 >| /proc/sys/vm/drop_caches

# sysctl vm.nr_hugepages

vm.nr_hugepages = 520

# cat /proc/meminfo  | grep -i huge

HugePages_Total:   520

HugePages_Free:    520

HugePages_Rsvd:      0

Hugepagesize:     2048 kB

--//终于达到需求了.启动dg,检查alert*.log文件:

****************** Large Pages Information *****************

Total Shared Global Region in Large Pages = 998 MB (100%)

Large Pages used by this instance: 499 (998 MB)

Large Pages unused system wide = 21 (42 MB) (alloc incr 4096 KB)

Large Pages configured system wide = 520 (1040 MB)

Large Page size = 2048 KB

***********************************************************

$ cat /proc/meminfo | grep -i huge

HugePages_Total:   520

HugePages_Free:    223

HugePages_Rsvd:    202

Hugepagesize:     2048 kB

--//现在数据库终于可以使用hugepages了.剩下等放假回来再说....



推荐阅读
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 上图是InnoDB存储引擎的结构。1、缓冲池InnoDB存储引擎是基于磁盘存储的,并将其中的记录按照页的方式进行管理。因此可以看作是基于磁盘的数据库系统。在数据库系统中,由于CPU速度 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文介绍了在处理不规则数据时如何使用Python自动提取文本中的时间日期,包括使用dateutil.parser模块统一日期字符串格式和使用datefinder模块提取日期。同时,还介绍了一段使用正则表达式的代码,可以支持中文日期和一些特殊的时间识别,例如'2012年12月12日'、'3小时前'、'在2012/12/13哈哈'等。 ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • 本文讨论了在VMWARE5.1的虚拟服务器Windows Server 2008R2上安装oracle 10g客户端时出现的问题,并提供了解决方法。错误日志显示了异常访问违例,通过分析日志中的问题帧,找到了解决问题的线索。文章详细介绍了解决方法,帮助读者顺利安装oracle 10g客户端。 ... [详细]
  • 合并列值-合并为一列问题需求:createtabletab(Aint,Bint,Cint)inserttabselect1,2,3unionallsel ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 本文介绍了在PostgreSQL中批量导入数据时的优化方法。包括使用unlogged表、删除重建索引、删除重建外键、禁用触发器、使用COPY方法、批量插入等。同时还提到了一些参数优化的注意事项,如设置effective_cache_size、shared_buffer等,并强调了在导入大量数据后使用analyze命令重新收集统计信息的重要性。 ... [详细]
author-avatar
昀尧约_146
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有