zoukankan      html  css  js  c++  java
  • tune 06 Database Configuration and I/O Issues

    image

    1. 尽量读内存中的数据

    2. 尽量减少IO矛盾, 即多个任务同时读写一块磁盘

    image

    image

    image

    image

    image

    表和索引要尽量分开在不同磁盘, 因为表和它的索引是同时读取的, 所以分磁盘后, 对性能会提高.

    物理磁盘的调优相关

    redo log file 放在最快的磁盘上, data 放在容量大, 速度慢一点也没关系

    表和索引是同时读取的,所以表和索引分开磁盘比较好

    image

    image

    image

    image

    image

    image

    image

    image

    image

    FTS 就是全表扫描的意思

    并不是所有时刻都要避免全表扫描,通常来说需要避免不必要的全表扫描

    一次性读取多少块这个参数的设置(DB_FILE_MULTIBLOCK_READ_COUNT),是需要和操作系统配合的,必须在操作系统准许的范围内

    是server process 去读这个磁盘的块, 所以可以设置session 级别来设置这个参数, 如果你要设置这个参数, 那么就在操作系统准许的情况下设置最大值.

    image

    image

    image

    image

    image

    image

    image

    一般都是 incremental checkpoints 这种情况, 因为 full checkpoint 很费时, 这样虽然是提高了效率, 但是这个有个问题就是如果数据库出现问题, 那么recovery 时就要费更多时间. 那么这种情况是一般DBWn 会慢慢的或者数据库空闲时将实际数据写到磁盘上.

    image

    ALTER SYSTEM CHECKPOINT; 全检查点

    Tablespace 只是把相关的 tablespace 的数据写到磁盘上.

    image

    image

    fast_start_mttr_target 这个参数比较重要, 断电到正常工作恢复所需要的时间, 这个参数是recovery database 的秒数, 比如 600秒, 你设定这个参数以后, oracle会自动调整其他指标来满足用户的要求.

    image

    LGWR 写的信息从 group1 到 group2 的同时, archivelog 将 group1 中的内容归档, 所以这里有个时间同步利用. 另外, 当 group1 要被覆盖时, 要确定它所对数据库做的修改而触发的 checkpoint 是否完成, 如果没有完成表示DBWn 还没有把信息写到磁盘, 这时候 group1 就不能被覆盖, 那么这时候数据库就hang在这了.

    image

    image

    image

    image

    image

  • 相关阅读:
    Mac 安装实用开发软件和日常软件清单
    Docker zabbix-agent 监控 docker tomcat 多实例
    zabbix 组件监控概述
    实况8操作指南
    关于哲哲跳舞这件小事儿
    左耳听风笔记摘要(11-12)程序的异常处理
    左耳听风笔记摘要(07-10)推荐书单/Go/Docker
    从零开始的vue学习笔记(一)
    简述Spark工作流程
    opengl简单入门实例
  • 原文地址:https://www.cnblogs.com/moveofgod/p/3245106.html
Copyright © 2011-2022 走看看