Sql 列出Oracle中的所有缓存

Sql 列出Oracle中的所有缓存,sql,oracle,oracle11g,oracle10g,Sql,Oracle,Oracle11g,Oracle10g,有没有一种方法可以使用SQL查询列出Oracle中的所有缓存?我想在Oracle 12c Enterprise Edition中列出有关它们的所有可用信息。从v$parameter中选择* 其中的名称如“result_cache%” 不确定我是否正确理解了你的问题。但此查询将为您提供结果缓存模式、结果缓存最大大小、结果缓存最大结果、结果缓存远程过期。希望能有帮助 谢谢。Oracle有许多不同类型的缓存。没有一个查询可以全部显示它们 缓冲区缓存SGA这是最重要的缓存,它包含表、索引和其他对象块。通

有没有一种方法可以使用SQL查询列出Oracle中的所有缓存?我想在Oracle 12c Enterprise Edition中列出有关它们的所有可用信息。

从v$parameter中选择* 其中的名称如“result_cache%”

不确定我是否正确理解了你的问题。但此查询将为您提供结果缓存模式、结果缓存最大大小、结果缓存最大结果、结果缓存远程过期。希望能有帮助


谢谢。

Oracle有许多不同类型的缓存。没有一个查询可以全部显示它们

缓冲区缓存SGA这是最重要的缓存,它包含表、索引和其他对象块。通常,最活跃和最近使用的 对象将位于缓冲区缓存中。但是,围绕缓冲区缓存中对象的大小和持久性的算法是复杂的,并且部分没有文档记录

共享池SGA这是包含SQL查询、存储过程、数据字典等的多个缓存的集合

会话和客户端缓存PGA通常程序全局区域用于存储特定于查询的数据,如排序和哈希区域。但它也包含 程序变量,这意味着它有时可以用作缓存

内存中选项缓存面向列的数据的选项,可能还有整个数据

SQL结果缓存缓存特定SQL查询的结果。此缓存不经常使用,必须手动启用

PL/SQL函数结果缓存缓存函数的结果。此缓存也不常见,必须手动启用

子查询缓存自动缓存某些子查询,从而提高查询性能。例如,从另一个大表中选择select count*from large_table; 可能比你预期的要快得多


看来你不想帮你。好的,然后读这个,然后你就会明白我为什么问你,好的,Oracle中有多少缓存?正如文档所解释的,有很多方法可以获取缓存,老实说,我从来没有使用过这种方法,但我正试图帮助你。此查询是否有助于从V$RESULT\u缓存中选择*_OBJECTS@PeterPenzov您是对缓存的内容感兴趣,还是只想知道缓存了多少数据?Oracle中有几种不同类型的缓存,答案可能是针对每种缓存的不同查询的列表。在我的脑海中,有一个缓冲区缓存,内存中可能包括整个数据库、结果缓存、子查询缓存等。这可能需要一个社区Wiki答案。你能告诉我所有你知道的缓存,SQL查询可以获得所需的数据吗?谢谢你的回答。能否为每个缓存添加SQL查询?如何列出和计算内容?