Oracle数据库初始化参数更改的注意事项

一般只有在大型应用中或者数据据库性能明显下降时才需要修改这个初始化参数。所以从这个角度来讲,初始化参数的调整算是Oracle数据库中的一个高级应用。但是这也是一个Oracle数据库管理员必须要掌握的内容。为了更高的调整数据库的初始化参数,笔者认为管理员在了解各个初始化参数的用途以及调整规则之前,需要先了解一些初始化参数调整的一些共性的内容。具体来说,主要有以下几个方面。

一、需要了解哪些参数不用重新启动即可生效。

在Oracle数据库中,根据生效的时间不同,可以把参数大致分为两类。一类是必须重新启动后才能够修改或者生效的参数;另外一类就是修改后不用重新启动即生效的参数。一般来说,数据库管理员比较喜欢第二类参数,即修改后不需要重新启动立即生效的参数。为什么呢?因为数据库服务器投入生产使用之后,不能够随意重新启动。如果修改后需要重新启动才能够生效,或者需要重新启动后才能够修改参数,那么在调整参数的过程中显然需要中断用户的访问,会增加停机时间。这对于数据库部署来说,打击会非常的大。因为从稳定性与可用性出发,数据库管理员是以最小的停机时间为目标的。而此时人为的增加停机时间,显然跟这个目标有冲突。所以,数据库管理员就需要知道哪些参数是不用重新启动就可以修改与生效的;而哪些参数则必须重新启动才可以。这是数据库管理员再调整参数之前首先需要知道的内容。一方面管理员可以根据这个特性,来评估停机的损失与调整参数可能带来的收益。如果收益大于损失的话,那么仍然有调整初始化参数的必要。二是来确定参数调整的时间。哪些不需要重新启动,即调整参数不会导致停机的情况下,则参数的调整时间相对来说灵活一点,限制不多。但是如果需要调整重新启动才能够生效或者修改的参数,那么就需要选择一个合适的时机了。如需要选择晚上12点以后的时间,这个时段往往使用数据库的用户并不是很多。当然这个时间每个起夜都可能不同。总之就是选择一个使用数据库用户尽量少的时候。如此的话,才能够在***程度上降低数据库停机造成的损失。

那么哪些参数不需用重新启动就可以被修改呢?其实,数据库管理员只需要查询动态视图,即可以知道哪些参数不用关闭或者重新启动就可以更改。如在动态视同v$parameter中,存储着初始化参数的值。一般来说,可以在查询语句中加入条件issys_modifiable<>’FALSE’ or isses_modifiable<>’FALSE’(注意他们之间是or的关系,而不是and关系),***查询出来的参数就是不用关闭或者重新启动数据库就可以设置的初始化参数。同时这些参数也是可以利用ALTER SYSTEM与ALTER SESSION命令可以更改的部分初始化参数。也就是说,不用关闭或者重新启动数据库就可以修改的参数都可以使用上面两个命令来进行重新设置。但是并不是说,利用这两个命令都可以在不用重新启动或者关闭数据库的情况更改初始化参数。简单的说,就是可以利用这两个命令来更改的参数,有些需要重新启动或者关闭数据库,而有些则不用。

二、根据20/80原则来确定需要更改的参数。

Oracle数据库中的初始化参数有上百个。无论出于什么目的,去一一调整这些参数往往是不现实的。一个优秀的数据库管理员,只需要掌握其中少数几个参数的修改即可。往往掌握这几个参数的修改方法、原则以注意事项,就可以完成大部分的数据库维护任务。这就是20/80的规律在其作用。也就是说,只需要掌握20%的参数(其实还远远不到这个比例),就可以完成80%的任务(其实远远高于这个比例)。也就是说,10/90规则对这个Oracle初始化参数来说,可能更加的适用。总之笔者要说的就是,只需要掌握众多初始化参数中的少数几个即可。即使需要通过调整初始化参数来提高数据库性能或者其他目的的,也就是在这几个少数的初始化参数中。对于其他的参数,数据库管理员只需要了解其用途,而不需要了解该如何调整这些参数。因为遇到的几率可以说基本没有。

那么这些重要的参数到底有哪些呢?主要有以下几个参数。最重要的一个参数就是 DB_CACHE_SIZE。这是一个用来调整数据库缓存大小的参数。在必要的时候,调整这个参数的大小,可以提高数据缓存的命中率,从而大幅度的提高数据库的性能。第二个参数是DB_BLOCK_SIZE。这个参数主要是用来指定数据库在建立时所默认的块大小。如果块设置的比较小,则有可能会发生行链化现象,从而降低数据库的性能;也有可能增加数据库的碎片,浪费表空间的存储空间以及降低数据库的查询性能等等。所以根据需要有时候也要调整这个块大小来改善数据库的性能。第三个参数是SHARED_POOL_SIZE参数。这个参数主要是为那些数据字典缓存和共享SQL语句指定了在SGA里所分配的内存。简单的来说,合理配置这个参数,能够同等的共享SQL语句。调整这个参数,也是一种优化数据库性能的常用手段。第四个参数为SGA_MAX_SIZE参数,这个参数指定了SGA可以动态增长的***内存。在SQLServer数据库中也有类似的参数。一般来说,在同台数据库服务器中若部署有多个应用服务的话,则往往需要合理配置这个参数来避免多个应用服务之间争用内存。如果这个参数设置的不合适的话,则有时候会导致另外一种应用服务由于没有足够的内存而停止服务。第五个参数为LOG_CHECKPOINT_INTERVAL。这个参数主要用来设置检查点的频率。在每个检查点中,数据库系统执行数据写出,将所有脏块(已经修改还没有保存到硬盘中的数据)写入到数据库中对应的数据文件中。默认情况下,如果在数据库缓存中有1/4的数据缓冲区是脏缓冲区,则数据库系统会自动执行检查点。另外一个强制的原则就是在进行日志切换时,也会执行检查点。在一些特定的情况下,如建立数据仓库,需要调整这个参数以满足特定场合的需要。

这五个参数是笔者这几年工作以上遇到的最频繁的初始化参数。基本上数据库维护与性能调优就是围绕着这几个参数来的。为此笔者建议,各位数据库管理员在学习数据库初始化参数的调整技巧时,可以从这几个参数出发。或者说,这几个参数是数据库管理员必须要掌握的。不只是简单的了解,而是需要吃透它。只有如此,在遇到情况时,才可以判断是否需要进行更改,以及应对在更改过程中可能出现的问题。对于其他的一些参数,笔者认为数据库管理员只需要了解其基本用途即可。或许笔者在总结这些参数的时候,有漏掉的地方,欢迎大家来补充。以后若有机会,笔者也会像大家详细介绍在什么情况下该调整什么参数;以及在调整过程中可能会遇到的麻烦。大家若对这方面的话题感兴趣,可以关注笔者后面的文章。

三、使用SPFILE来动态修改参数。

在Oracle10G以后的版本中,还允许数据库管理员使用一个SPFILE来存储实例参数的动态修改。在10G以前的版本中,除非将参数手动的添加到初始参数文件中,否则动态的修改参数在数据库重新启动后都会丢失。这跟环境变量的设置有些类似。但是在10G以后的版本中,在这方面有了很大的改善。如开启SPFILE机制的话,则系统就会启用一个服务器参数文件,在内存中动态改变某些参数的时候,同时将这些改变记录到这个服务器参数文件中。等到下次重新启动时,服务器会读取喜欢个服务器参数文件中的值,用来初始化数据库系统。也就是说,从现在开始一些动态修改的参数也可以***生效了。这对于数据库管理员来说,无疑是一个福音。

从以上的分析中可以看出,这个数据库参数的调整还是一个比较复杂的工作。笔者认为,管理员在学习如何调整这个参数之前,需要先了解上面这些共性的内容。即参数修改的时间限制、最可能需要调整的参数以及如何让动态参数永远生效等等。这些是做好参数优化工作的基础。

 

【编辑推荐】

  1. 创建Oracle数据库索引的三个标准
  2. Oracle检索数据一致性与事务恢复
  3. Oracle性能优化借助分区技术实现
  4. Oracle并发处理机制的简单看法
  5. 让Oracle表列管理更加简单的三个方法

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/286224.html<

(0)
运维的头像运维
上一篇2025-05-15 06:21
下一篇 2025-05-15 06:23

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注