Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database oracle中的数据库缓冲缓存_Database_Oracle12c - Fatal编程技术网

Database oracle中的数据库缓冲缓存

Database oracle中的数据库缓冲缓存,database,oracle12c,Database,Oracle12c,块写入发生在以下情况: 向数据库发出关闭命令 发生完全或部分检查点 满足恢复时间阈值 需要一个空闲块,并且在给定的时间和许多其他原因后找不到空闲块 为什么我们有这么多触发块写入的点。为什么不只是在需要空闲块时通过LRU算法替换缓冲缓存中的脏块呢。我认为这可以提高性能。对此有何看法?您有什么性能问题?没有,但第一点是数据库关闭是有效的,因为如果在关闭之前未完成块写入,我们可能会丢失它。但为什么会有其他三点。当我们可以简单地使用LRU算法时,为什么要使它更复杂呢。

块写入发生在以下情况:

  • 向数据库发出关闭命令
  • 发生完全或部分检查点
  • 满足恢复时间阈值
  • 需要一个空闲块,并且在给定的时间和许多其他原因后找不到空闲块

  • 为什么我们有这么多触发块写入的点。为什么不只是在需要空闲块时通过LRU算法替换缓冲缓存中的脏块呢。我认为这可以提高性能。对此有何看法?

    您有什么性能问题?没有,但第一点是数据库关闭是有效的,因为如果在关闭之前未完成块写入,我们可能会丢失它。但为什么会有其他三点。当我们可以简单地使用LRU算法时,为什么要使它更复杂呢。