ITPub博客

首页 > Linux操作系统 > Linux操作系统 > v$sqlarea,v$sql,v$sqltext三个视图的区别

v$sqlarea,v$sql,v$sqltext三个视图的区别

原创 Linux操作系统 作者:chinagjj2008 时间:2009-04-14 15:11:51 0 删除 编辑
V$SQL:Child cursor details for V$SQLAREA
V$SQLAREA:Shared pool details for statements/anonymous blocks
V$SQLTEXT:SQL text of statements in the shared pool
v$sql的每一行表示的是每一个sql语句的一个版本,而v$sqlarea存放的是相同语句不同版本一个group by汇总。
v$sql与v$sqlarea的源都是X$KGLCURSOR
v$sql及v$sqlarea存放着统计信息在调优时使用居多,但其sql是不全的,如果想获得完整的sql需使用v$sqltext。


v$sqltext中存储的是完整的SQL,SQL被分割。
SQL> desc v$sqltext
Name Type Nullable Default Comments
------------ ------------ -------- ------- --------
ADDRESS RAW(8) Y
HASH_VALUE NUMBER Y
COMMAND_TYPE NUMBER Y
PIECE NUMBER Y
SQL_TEXT VARCHAR2(64) Y
address和hash_value一起唯一标识一条sql语句,piece是完整的sql语句的分片号,sql_text是每片中的sql语句。

v$sqlarea中存储sql语句和一些相关的信息(例如累计执行次数,逻辑读,物理读等统计信息)
SQL> desc v$sqlarea
Name Type Nullable Default Comments
------------------- -------------- -------- ------- --------
SQL_TEXT VARCHAR2(1000) Y
SHARABLE_MEM NUMBER Y
PERSISTENT_MEM NUMBER Y
RUNTIME_MEM NUMBER Y
SORTS NUMBER Y
VERSION_COUNT NUMBER Y
LOADED_VERSIONS NUMBER Y
OPEN_VERSIONS NUMBER Y
USERS_OPENING NUMBER Y
FETCHES NUMBER Y
EXECUTIONS NUMBER Y
USERS_EXECUTING NUMBER Y
LOADS NUMBER Y
FIRST_LOAD_TIME VARCHAR2(38) Y
INVALIDATIONS NUMBER Y
PARSE_CALLS NUMBER Y
DISK_READS NUMBER Y
BUFFER_GETS NUMBER Y
ROWS_PROCESSED NUMBER Y
COMMAND_TYPE NUMBER Y
OPTIMIZER_MODE VARCHAR2(25) Y
PARSING_USER_ID NUMBER Y
PARSING_SCHEMA_ID NUMBER Y
KEPT_VERSIONS NUMBER Y
ADDRESS RAW(8) Y
HASH_VALUE NUMBER Y
MODULE VARCHAR2(64) Y
MODULE_HASH NUMBER Y
ACTION VARCHAR2(64) Y
ACTION_HASH NUMBER Y
SERIALIZABLE_ABORTS NUMBER Y
CPU_TIME NUMBER Y
ELAPSED_TIME NUMBER Y
IS_OBSOLETE VARCHAR2(1) Y
CHILD_LATCH NUMBER Y

v$sql中存储具体的sql和执行计划的相关信息。实际上,v$sqlarea可看成是v$sql根据sqltext等group by之后的信息。
SQL> desc v$sql
Name Type Nullable Default Comments
------------------- -------------- -------- ------- --------
SQL_TEXT VARCHAR2(1000) Y
SHARABLE_MEM NUMBER Y
PERSISTENT_MEM NUMBER Y
RUNTIME_MEM NUMBER Y
SORTS NUMBER Y
LOADED_VERSIONS NUMBER Y
OPEN_VERSIONS NUMBER Y
USERS_OPENING NUMBER Y
FETCHES NUMBER Y
EXECUTIONS NUMBER Y
USERS_EXECUTING NUMBER Y
LOADS NUMBER Y
FIRST_LOAD_TIME VARCHAR2(38) Y
INVALIDATIONS NUMBER Y
PARSE_CALLS NUMBER Y
DISK_READS NUMBER Y
BUFFER_GETS NUMBER Y
ROWS_PROCESSED NUMBER Y
COMMAND_TYPE NUMBER Y
OPTIMIZER_MODE VARCHAR2(10) Y
OPTIMIZER_COST NUMBER Y
PARSING_USER_ID NUMBER Y
PARSING_SCHEMA_ID NUMBER Y
KEPT_VERSIONS NUMBER Y
ADDRESS RAW(8) Y
TYPE_CHK_HEAP RAW(8) Y
HASH_VALUE NUMBER Y
PLAN_HASH_VALUE NUMBER Y
CHILD_NUMBER NUMBER Y
MODULE VARCHAR2(64) Y
MODULE_HASH NUMBER Y
ACTION VARCHAR2(64) Y
ACTION_HASH NUMBER Y
SERIALIZABLE_ABORTS NUMBER Y
OUTLINE_CATEGORY VARCHAR2(64) Y
CPU_TIME NUMBER Y
ELAPSED_TIME NUMBER Y
OUTLINE_SID NUMBER Y
CHILD_ADDRESS RAW(8) Y
SQLTYPE NUMBER Y
REMOTE VARCHAR2(1) Y
OBJECT_STATUS VARCHAR2(19) Y
LITERAL_HASH_VALUE NUMBER Y
LAST_LOAD_TIME VARCHAR2(38) Y
IS_OBSOLETE VARCHAR2(1) Y
CHILD_LATCH NUMBER Y

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/464838/viewspace-588998/,如需转载,请注明出处,否则将追究法律责任。

下一篇: AIX 常用命令汇总
请登录后发表评论 登录
全部评论

注册时间:2008-01-14

  • 博文量
    32
  • 访问量
    60702