签到成功

知道了

CNDBA社区CNDBA社区

Oracle 一次小优化

2016-11-25 16:02 3286 0 原创 Oracle 性能优化
作者: dave

 

         公司的系统上线已经一年半了,服务器内存是很充裕的,有72G 刚上线那会对PGASGA进行过一次调整,性能好了点。 前段时间做AWR分析的时候发现PGASGA 需要调整了。 先对AWR做几个截图:

 

  

 

       

       从上面3个截图可以看出如下信息:当SGA 调整为现在的1.5倍,即14136M, 逻辑读有明显的降低。 PGA增加900M, 磁盘读写也是降低的很明显。

 

         根据上面的分析,写了个报告,周五晚上停机修改一下。 正好周六回家睡大觉。 系统是2个节点的Data Guard。很简单。

 

操作过程如下:

 

1. 在主备库上用spfile 创建pfile文件,然后做一个备份。 万一修改有问题,在还原回来。

         SQL>create pfile from spfile;

 

2.  shutdown 主库

 

3.  shutdown 备库

          Data Guard 环境对主备库停机顺序是有要求的:

                   停机:先停主库,在停备库

                   启动:先起备库,在起主库

http://www.cndba.cn/dave/article/1568

 

4. 修改2pfile参数

         *.pga_aggregate_target=5153751040

         *.sga_max_size=14822670336

         *.sga_target=14822670336

 

5. 在主备库上用pfile 创建spfile文件

http://www.cndba.cn/dave/article/1568

SQL>create spfile from pfile='/dba/oracle/product/10.2.0/db_1/dbs/initorcl.ora';

 

6. 一起准备就绪,启动备库。结果报了一个错:http://www.cndba.cn/dave/article/1568

 

ORA-27102: out of memory

Linux-x86_64 Error: 28: No space left on device

 

改个参数还能报个错,杯具了。 goole 一下,找到了原因。 因为/etc/sysctl.conf文件里的一个参数有错误。

 

kernel.shmall = 8388608  -- 为物理内存除以pagesize;

http://www.cndba.cn/dave/article/1568

kernel.shmmax = 29968709120 -- 这个是物理内存大小一半。

 

我报错的原因就是shmall 设为2k的。 修改之后启动没有问题。

http://www.cndba.cn/dave/article/1568

 

修改之后,用: $sysctl -p 命令生效一下。

 

关于这些参数的调整,可以参考Blog

         Linux 内核参数及Oracle相关参数调整

         http://blog.csdn.net/tianlesoftware/archive/2009/10/15/4668741.aspx

 

http://www.cndba.cn/dave/article/1568

先启动监听:

         #lsnrctl start

 

启动数据库是mount

         SQL>startup nomount;

         SQL>alter database mount standby database;

         SQL>alter database recover managed standby database disconnect from session;

 

 

7. 启动主库的监听和实例

         #lsnrctl start

         SQL>startuphttp://www.cndba.cn/dave/article/1568

 

 

8. 检查一下同步情况

 

在主库切换下日志:

         SQL>alter system switch lofile;

         SQL>select max(sequence#) from v$archived_log;

 

到备库检查一下是否同步:

         SQL>select sequence#,applied from v$archived_log;

 

 主备一致, 一切正常。 等明天业务上线之后就可以观察下参数修改之后的影响了。

 

Data Guard 的知识,参考Bloghttp://www.cndba.cn/dave/article/1568http://www.cndba.cn/dave/article/1568

         Oracle Data Gurad Physical Standby 相关说明http://www.cndba.cn/dave/article/1568

         http://blog.csdn.net/tianlesoftware/archive/2010/05/04/5557410.aspx

 

 

 

 

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

Blog http://blog.csdn.net/tianlesoftware

网上资源: http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1 群:62697716(); DBA2 群:62697977()

DBA3 群:63306533;     聊天 群:40132017

--加群需要在备注说明表空间和数据文件之间的关系,否则拒绝申请

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2262
    原创
  • 3
    翻译
  • 579
    转载
  • 192
    评论
  • 访问:8092552次
  • 积分:4350
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ