zoukankan      html  css  js  c++  java
  • Oracle 缓存

    Oracle 缓存

    一、空暇缓存快

    当我们又一次启动数据库后。系统就会为数据库分配一些空暇的缓存快。

    空暇缓存快中是没有不论什么数据的,他们在等待后台进程或server进程向当中写入数据。

    Oracle数据库从数据文件里读取数据后,数据库就会寻找空暇缓存块将数据写入其中。

    一般来说。数据库在启动时,就会在内存中预先分配这些缓存块。

    二、命中缓存块

    命中缓存块保存那些正在使用的数据

    select语句先从数据库文件里读取数据后,会把取得的数据放入到这个命中缓存块中。

    直到快速缓存消耗完成等原因,这个空间才会被释放。如此下次假设再次访问同样的数据的时候

    就能从这里进行查找,节省时间(由于仅仅是被select,因此这里的数据是不会换出内存的)。

    三、脏缓存块

    脏缓存块保存已经被改动可是还没有被写入数据库文件的数据。当访问数据之后。

    由空暇缓存块标志转化为命中缓存块标志。当我们允许update这类带侵略性的操作是,我们要

    先去命中缓存区去寻找数据,假设存在就直接进行操作。而且此时命中缓存区标志被转为脏缓存块标志。

    这样就行实现数据的一致性。当满足一定的条件时,这些脏缓存块中的数据内容会被写入到数据库文件里去,

    以便永久性的保留数据库改动记录。

    当写入数据库之后脏缓存块标志就会转化为空暇缓存块。

     

    清除缓存:

    ALTER SYSTEM FLUSH SHARED_POOL

    ALTER SYSTEM FLUSH BUFFER_CACHE

    ALTER SYSTEM FLUSH GLOBAL CONTEXT

  • 相关阅读:
    【BZOJ 4151 The Cave】
    【POJ 3080 Blue Jeans】
    【ZBH选讲·树变环】
    【ZBH选讲·拍照】
    【ZBH选讲·模数和】
    【CF Edu 28 C. Four Segments】
    【CF Edu 28 A. Curriculum Vitae】
    【CF Edu 28 B. Math Show】
    【CF Round 439 E. The Untended Antiquity】
    【CF Round 439 C. The Intriguing Obsession】
  • 原文地址:https://www.cnblogs.com/xunyi/p/8931995.html
Copyright © 2011-2022 走看看