v$sql、v$sqlarea、v$sqltext、v$sql_plan
--v$sqltext
--Concept:This view contains the text of SQL statements belonging to shared SQL cursors in the SGA.
--记录完整的sql,但sql被分片存储
/*Name Null? Type----------------------------------------- -------- ----------------------------ADDRESS RAW(4)HASH_VALUE NUMBER --address、hash_value唯一标识一条sqlSQL_ID VARCHAR2(13)COMMAND_TYPE NUMBERPIECE NUMBER --PIECE分片之后的顺序SQL_TEXT VARCHAR2(64) --SQL_TEXT为sql文本*/
select * from v$sqltext;--v$sqlarea
--Concept:V$SQLAREA lists statistics on shared SQL area and contains one row per SQL string. It provides statistics on SQL statements that are in memory,
-- parsed, and ready for execution.
--记录共享sql区中的统计信息(执行次数、逻辑读、物理读等);相同文本的sql只记录一次
/*Name Null? Type----------------------------------------- -------- ----------------------------SQL_TEXT VARCHAR2(1000)SQL_FULLTEXT CLOBSQL_ID VARCHAR2(13)SHARABLE_MEM NUMBERPERSISTENT_MEM NUMBERRUNTIME_MEM NUMBERSORTS NUMBERVERSION_COUNT NUMBERLOADED_VERSIONS NUMBEROPEN_VERSIONS NUMBERUSERS_OPENING NUMBERFETCHES NUMBEREXECUTIONS NUMBERPX_SERVERS_EXECUTIONS NUMBEREND_OF_FETCH_COUNT NUMBERUSERS_EXECUTING NUMBERLOADS NUMBERFIRST_LOAD_TIME VARCHAR2(76)INVALIDATIONS NUMBERPARSE_CALLS NUMBERDISK_READS NUMBERDIRECT_WRITES NUMBERBUFFER_GETS NUMBERAPPLICATION_WAIT_TIME NUMBERCONCURRENCY_WAIT_TIME NUMBERCLUSTER_WAIT_TIME NUMBERUSER_IO_WAIT_TIME NUMBERPLSQL_EXEC_TIME NUMBERJAVA_EXEC_TIME NUMBERROWS_PROCESSED NUMBERCOMMAND_TYPE NUMBEROPTIMIZER_MODE VARCHAR2(10)OPTIMIZER_COST NUMBEROPTIMIZER_ENV RAW(797)OPTIMIZER_ENV_HASH_VALUE NUMBERPARSING_USER_ID NUMBERPARSING_SCHEMA_ID NUMBERPARSING_SCHEMA_NAME VARCHAR2(30)KEPT_VERSIONS NUMBERADDRESS RAW(4)HASH_VALUE NUMBEROLD_HASH_VALUE NUMBERPLAN_HASH_VALUE NUMBERMODULE VARCHAR2(64)MODULE_HASH NUMBERACTION VARCHAR2(64)ACTION_HASH NUMBERSERIALIZABLE_ABORTS NUMBEROUTLINE_CATEGORY VARCHAR2(64)CPU_TIME NUMBERELAPSED_TIME NUMBEROUTLINE_SID VARCHAR2(40)LAST_ACTIVE_CHILD_ADDRESS RAW(4)REMOTE VARCHAR2(1)OBJECT_STATUS VARCHAR2(19)LITERAL_HASH_VALUE NUMBERLAST_LOAD_TIME DATEIS_OBSOLETE VARCHAR2(1)CHILD_LATCH NUMBERSQL_PROFILE VARCHAR2(64)PROGRAM_ID NUMBERPROGRAM_LINE# NUMBEREXACT_MATCHING_SIGNATURE NUMBERFORCE_MATCHING_SIGNATURE NUMBERLAST_ACTIVE_TIME DATEBIND_DATA RAW(2000)
*/
select * from v$sqlarea--v$sql
--Concept:V$SQL lists statistics on shared SQL area without the GROUP BY clause and contains one row for each child of the original SQL text entered.
--Statistics displayed in V$SQL are normally updated at the end of query execution. However, for long running queries, they are updated every 5 seconds.
-- This makes it easy to see the impact of long running SQL statements while they are still in progress.
--记录共享sql区中的统计信息(执行次数、逻辑读、物理读等);每一次执行sql语句都会记录,且与v$sql_plan关联可查询每条sql语句的执行计划。
/*Name Null? Type----------------------------------------- -------- ----------------------------SQL_TEXT VARCHAR2(1000)SQL_FULLTEXT CLOBSQL_ID VARCHAR2(13)SHARABLE_MEM NUMBER --占用共享内存的大小PERSISTENT_MEM NUMBER --生命周期内的固定内存大小RUNTIME_MEM NUMBER --执行期内的固定内存大小SORTS NUMBER --完成的排序数LOADED_VERSIONS NUMBEROPEN_VERSIONS NUMBERUSERS_OPENING NUMBER --执行语句的用户数FETCHES NUMBER --sql语句的fetch数EXECUTIONS NUMBER --自它被载入缓存库后的执行次数PX_SERVERS_EXECUTIONS NUMBEREND_OF_FETCH_COUNT NUMBERUSERS_EXECUTING NUMBER --执行语句的用户数LOADS NUMBER --对象被载入过的次数FIRST_LOAD_TIME VARCHAR2(76) --初次载入时间INVALIDATIONS NUMBER --无效的次数PARSE_CALLS NUMBER --解析调用次数DISK_READS NUMBER --读磁盘数DIRECT_WRITES NUMBERBUFFER_GETS NUMBER --读缓存区数APPLICATION_WAIT_TIME NUMBERCONCURRENCY_WAIT_TIME NUMBERCLUSTER_WAIT_TIME NUMBERUSER_IO_WAIT_TIME NUMBERPLSQL_EXEC_TIME NUMBERJAVA_EXEC_TIME NUMBERROWS_PROCESSED NUMBERCOMMAND_TYPE NUMBEROPTIMIZER_MODE VARCHAR2(10)OPTIMIZER_COST NUMBEROPTIMIZER_ENV RAW(797)OPTIMIZER_ENV_HASH_VALUE NUMBERPARSING_USER_ID NUMBERPARSING_SCHEMA_ID NUMBERPARSING_SCHEMA_NAME VARCHAR2(30)KEPT_VERSIONS NUMBERADDRESS RAW(4)TYPE_CHK_HEAP RAW(4)HASH_VALUE NUMBEROLD_HASH_VALUE NUMBERPLAN_HASH_VALUE NUMBERCHILD_NUMBER NUMBERSERVICE VARCHAR2(64)SERVICE_HASH NUMBERMODULE VARCHAR2(64)MODULE_HASH NUMBERACTION VARCHAR2(64)ACTION_HASH NUMBERSERIALIZABLE_ABORTS NUMBEROUTLINE_CATEGORY VARCHAR2(64)CPU_TIME NUMBERELAPSED_TIME NUMBEROUTLINE_SID NUMBERCHILD_ADDRESS RAW(4)SQLTYPE NUMBERREMOTE VARCHAR2(1)OBJECT_STATUS VARCHAR2(19)LITERAL_HASH_VALUE NUMBERLAST_LOAD_TIME VARCHAR2(76)IS_OBSOLETE VARCHAR2(1)CHILD_LATCH NUMBERSQL_PROFILE VARCHAR2(64)PROGRAM_ID NUMBERPROGRAM_LINE# NUMBEREXACT_MATCHING_SIGNATURE NUMBERFORCE_MATCHING_SIGNATURE NUMBERLAST_ACTIVE_TIME DATEBIND_DATA RAW(2000)
*/
select * from v$sql;
--注:可根据视图v$sql中的plan_hash_value直接判断sql语句的执行计划是否相同--v$sql_plan
--Concept:V$SQL_PLAN contains the execution plan information for each child cursor loaded in the library cache.
--记录每条sql语句的执行计划
/*Name Null? Type----------------------------------------- -------- ----------------------------ADDRESS RAW(4)HASH_VALUE NUMBERSQL_ID VARCHAR2(13)PLAN_HASH_VALUE NUMBERCHILD_ADDRESS RAW(4)CHILD_NUMBER NUMBERTIMESTAMP DATEOPERATION VARCHAR2(120)OPTIONS VARCHAR2(120)OBJECT_NODE VARCHAR2(160)OBJECT# NUMBEROBJECT_OWNER VARCHAR2(30)OBJECT_NAME VARCHAR2(30)OBJECT_ALIAS VARCHAR2(65)OBJECT_TYPE VARCHAR2(80)OPTIMIZER VARCHAR2(80)ID NUMBERPARENT_ID NUMBERDEPTH NUMBERPOSITION NUMBERSEARCH_COLUMNS NUMBERCOST NUMBERCARDINALITY NUMBERBYTES NUMBEROTHER_TAG VARCHAR2(140)PARTITION_START VARCHAR2(20)PARTITION_STOP VARCHAR2(20)PARTITION_ID NUMBEROTHER VARCHAR2(4000)DISTRIBUTION VARCHAR2(80)CPU_COST NUMBERIO_COST NUMBERTEMP_SPACE NUMBERACCESS_PREDICATES VARCHAR2(4000)FILTER_PREDICATES VARCHAR2(4000)PROJECTION VARCHAR2(4000)TIME NUMBERQBLOCK_NAME VARCHAR2(30)REMARKS VARCHAR2(4000)OTHER_XML CLOB
*/
select * from v$sql_plan;--注:看似相同的sql语句,往往具有不同的sql执行计划,而v$sql_area恰恰忽略了sql执行计划的差异。--应用举例
--查看资源消耗最多的sql
select *
from v$sqlarea
where buffer_gets>10000000 or disk_reads>1000000
order by buffer_gets+100*disk_reads desc;
--查看使用频率最高的前5条sql
select address,hash_value,sql_text,executions
from (
select row_number() over(order by executions desc) as top,address,hash_value,sql_text,executions
from v$sql
) t
where t.top<=5;
--查看某条语句的资源消耗情况
select address,hash_value,sql_text,disk_reads,buffer_gets,round((buffer_gets-disk_reads)/buffer_gets,4)*100 as "hits(%)"
,round(cpu_time/executions,4) as "cpu(秒/次)",round(elapsed_time/executions,4) as "execute(秒/次)",executions
from v$sqlarea
where address=hextoraw('4DC41CA4') and hash_value=864012087
--查看磁盘读取频率最高的前5条sql
select address,hash_value,sql_text,disk_reads
from (
select row_number() over(order by disk_reads desc) as top,address,hash_value,sql_text,disk_reads
from v$sql
) t
where t.top<=5;
--查看缓冲区读取频率最高的前5条sql
select address,hash_value,sql_text,buffer_gets
from (
select row_number() over(order by buffer_gets desc) as top,address,hash_value,sql_text,buffer_gets
from v$sql
) t
where t.top<=5;
v$sql、v$sqlarea、v$sqltext、v$sql_plan相关推荐
- v$sql、v$sqlarea 、v$sqltext
分享: ------------------------------- v$sql.v$sqlarea .v$sqltext 这三个视图都可以用于查询共享池中已经解析过的SQL语句及其相关信息. V$ ...
- 【SQL Server数据迁移】链接服务器、分布式查询
链接服务器为SQL Server提供了从远程数据源访问数据的能力,可以执行查询.修改数据.远程过程调用.远程数据源可以是同类的(数据源可以是另一个SQL Server实例),也可以是不同类的(其他关系 ...
- SQL Server2019数据库查询所有数据库名、表名、表结构、表字段、主键方法演示,执行sql提示对象名‘user_tab_columns‘、 ‘user_cons_columns‘ 无效问题解决
SQL Server2019 数据库查询所有数据库名.表名.表结构.表字段.主键方法演示 第一章:查询方法 ① 查询所有数据库名 ② 查询所有表名方法 ③ 查询表结构.表字段方法 ④ 查询主键方法 第 ...
- Database之SQLSever:SQLSever数据表管理(GUI法/SQL语句命令法两种方法实现建立表、修改表,以及增、删、改、查)之详细攻略
Database之SQLSever:SQLSever数据表管理(GUI法/SQL语句命令法两种方法实现建立表.修改表,以及增.删.改.查)之详细攻略 目录 一.两种方法建立表.修改表,插入多条数据记录 ...
- MySQL删除s表命令_SQLServer数据库sql语句中----删除表数据drop、truncate和delete的用法...
本文主要向大家介绍了SQLServer数据库sql语句中----删除表数据drop.truncate和delete的用法,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 虽 ...
- “问答官”活动SQL专场来啦!小米行李箱、无线鼠标等你拿!
简介:"我是技术小白,如何进行Spring Cloud Gateway实战?求大佬解惑"."元宇宙到底是个啥"."拥抱云原生技术的开发者对于职业可以做 ...
- 你真的会玩SQL吗?和平大使 内连接、外连接
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- 一个 SQL 同时验证帐号是否存在、密码是否正确
出处:http://www.cnblogs.com/jacklondon/archive/2012/01/13/2321686.html近日偶尔看到一个很巧妙的 SQL 技巧,一个简单的 SQL 同时 ...
- android 访问服务器sql_XSS 攻击、CSRF 攻击、SQL 注入、流量劫持(DNS 劫持、HTTP 劫持)—— 浏览器安全
今天看了 jsliang 大佬关于网络安全的文章,为了加深一下印象,自己动手写一下. 主要参考文章:网络安全 --- jsliang XSS攻击 XSS(Cross Site Script)跨站脚本攻 ...
- c是过程化语言吗数据库,关于SQL错误的是()A、所有数据库的公共语言B、非过程化的C、统一的语言D、所有用SQL缩写的程序都...
关于SQL错误的是()A.所有数据库的公共语言B.非过程化的C.统一的语言D.所有用SQL缩写的程序都 更多相关问题 [多选] 在彩色电视机遥控系统中,属于模拟量控制的有()等几种. [多选] 在色度 ...
最新文章
- 微信小程序教学第三章第四节(含视频):小程序中级实战教程:下拉更新、分享、阅读标识...
- python php linux-linux怎么运行python?
- JSPDF运用实例(解决图片跨域问题)
- cross--向量或矩阵的叉乘
- 成功解决Module Not Found Error : No module named mglearn
- python在ubuntu执行sh脚本,提示权限不够的解决方法, 转载
- sysstat工具包提供的主要命令
- ibd 导入mysql_拷贝ibd实现MySQL的数据导入
- HTML CSS JavaScript学习心得
- 1416711-60-8,DBCO-PEG4-Hydroxyl,DBCO-PEG4-alcohol,DBCO-PEG4-OH含有DBCO部分和末端伯羟基的PEG连接剂
- 理解快速排序 | 打通算法学习的任督二脉
- GIF录制编辑工具(GifCam)
- poi操作word docx文档内容替换详解
- vue输入框禁止输入表情的实现方法
- P1796 汤姆斯的天堂梦
- 腾讯Android自动化测试实战
- 央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家
- 使用idea pom.xml文件打开就报错
- 梯度提升树(GBDT)算法超详细版本
- 小白之通俗易懂的贝叶斯定理(Bayes‘ Theorem)