zoukankan      html  css  js  c++  java
  • 迁移数据之后,读取数据库变得很慢

    在某天晚上,业务人员把数据库迁至新库,通过数据泵导入导出这种方式迁至新库上。

    新库与老库均为rac环境

    在第二天上午,业务人员突然报说数据库处理单子的速度变的很慢,一上午压了2000个单子。

    出现这种情况的原因有这么几种:

      1.导数的时候没有导统计信息

      2.表和索引的统计信息变了

      3.是否产生了不同的计划任务

      这里我就能想到这么三点,可能会有各种不同的问题,下面我们跟业务人员要一下跑的业务语句

    select SERIAL_NUMBER,
           ORD_NO,
           USER_ID,
           ACCNO,
           ACTION_TYPE,
           START_DATE,
           RETURN_DATE,
           RECONFIG_REASON,
           DEAL_FLAG,
           RETURN_CODE,
           RETURN_DESC,
           BACK_REASON,
           LOGTIME,
           CW_STATE,
           CW_desc,
           DL_STATE,
           DL_DESC,
           HD_FLAG,
           ORDER_ID,
           WORK_ORDER_ID
      from (select *
              from fwkt_new.tif_rs_info t2
             where deal_flag = '0'
               and rownum < 500
            union
            select *
              from fwkt_new.tif_rs_info t
             where deal_flag = '1'
               and rownum < 80000);
    

    以上是业务人员的处理单子的sql语句

    拿到sql语句,我们首先分析下老库和新库的执行计划是否一致

    老库的执行计划

     新库的执行计划

    对比两个库,执行计划两边完全一致,并没有说执行计划有变。

    那这个问题出现在哪儿呢?

    后来又有业务人员说登陆数据库慢,会不会是登录数据库慢导致业务处理的速度变慢了呢?

    原来业务人员使用的是数据库连接地址是scan,用scan ip可以负载均衡,但是会产生大量的gc,还会导致闩锁的出现。所以让业务人员把scan ip禁掉,让应用使用vip去连接数据库

    改完之后,数据库的处理速度有改善,但是处理速度改善的不是很明显,说明还是有问题,到底是什么问题导致数据库处理的速度变慢呢?

    连接数据库慢,会不会是监听有问题导致的呢?

    遂登陆grid用户查看监听信息

    在这之间没有做截图,我口述一下吧!!!

    lsnrctl status

    发现节点1和节点2的监听注册信息不一致。

    然后登陆数据库查看service_name

    发现两边的service_name也不一致

    更改数据库的service_name名称与节点1和节点2保持一致,并且节点1和节点2可以支持多个service_name的名称。

    更改完毕,重新加载一下数据库的监听,并在数据库里面注册一下监听的信息。

    所有操作完成之后,业务人员说积压的单子瞬间就没了。

    至此,问题解决。

    总结一下:

      这究其原因就是oracle数据库里面的service_name不一致,导致监听的注册信息不一致,会导致数据库处理速度变慢,所以大家在改任何数据库参数的时候一定要小心谨慎。

      

  • 相关阅读:
    XSS平台简单使用
    XSS基础笔记 from 《Web安全攻防 渗透测试实战指南》
    《Web安全攻防渗透测试实战指南》 各类型 SQL注入 实验过程整理
    BurpSuite抓取本地包方法
    渗透测试之信息收集(Web安全攻防渗透测试实战指南第1章)
    渗透测试方法论(qf总结)
    Linux Shell脚本简单语法汇总(Deepin下运行)
    写一个方法去掉字符串中的空格
    link 与 @import 区别
    uni-app 开发小工具——uni-toolkit
  • 原文地址:https://www.cnblogs.com/Oman/p/9222849.html
Copyright © 2011-2022 走看看