将内存使用量从16GB减少到8GB - Oracle

 哎哟不错哦凉皮 发布于 2023-02-12 18:04

我使用"Database Configuration Assistant"创建了一个oracle实例.我的系统有64GB RAM.我在初始化参数向导中给了oracle实例16GB.

现在我想将16GB减少到8GB.这样,oracle占用的RAM将为8GB.我在SQL Developer中试过这个,

ALTER SYSTEM SET pga_aggregate_target = 8289 M;
ALTER SYSTEM SET sga_target = 1536 M;

我重新启动了oracle服务.它没有得到反映.oracle还在使用16GB.

我不知道这是否正确.是否需要系统重启.?或者如何减少内存使用量.

1 个回答
  • 有多种方法可以定义使用的内存量.从历史上看,您需要进行大量设置才能更改以影响总内存占用量.如今,它通常默认只设置一个并在稍后开始调整(当Oracle安装程序没有搞砸时;它经常设置错误).

    我会检查以下内容:

    select *
    from   v$parameter
    where  name like '%size%' 
           or 
           name like '%target%'
    

    检查哪些已设置并需要更改.它可以是shared_pool_size,memory_target,sga_target等设置.

    当您更改它时,可以在实例打开并运行时更改某些设置(取决于版本和版本),而某些设置需要重新启动.此外,有时您使用的是文本文件(pfile),在某些情况下,您可能正在使用二进制文件(spfile).二进制文件是允许在线更改而不重新启动的前提条件.

    您可能会成功使用以下内容:

    alter system set NAME = VALUE scope=[spfile|both]
    

    作为sys用户.Scope = spfile只更改spfile,更改运行时和spfile.使用像init*.ora这样的pfile时,只需编辑文本文件并重新启动实例.

    要快速重启,最好的方法是恕我直言:

    startup force
    

    请减小尺寸,假设尺寸足以处理负载,通常不会有问题.首先在测试环境中进行.当增加并取决于平台时,请首先确保您的新设置可以处理.例如,增加在Linux上分配的内存可能需要您更改内核设置.否则,除非首先进行更正,否则您的Oracle实例将无法启动.

    2023-02-12 18:07 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有