使用ttXactAdmin、ttSQLCmdCacheInfo、ttSQLCmdQueryPlan获取SQL相关具体信息[TimesTen运维]
使用ttXactAdmin、ttSQLCmdCacheInfo、ttSQLCmdQueryPlan获取SQL相关具体信息,适合于tt11以上版本号。
$ ttversion
TimesTen Release 11.2.2.4.3 (64 bit Linux/x86_64) (tt1122:53396) 2013-02-09T17:19:52Z
Instance admin: timesten
Instance home directory: /TimesTen/tt1122
Group owner: timesten
Daemon home directory: /TimesTen/tt1122/info
PL/SQL enabled.
Command> create table ty(tid tt_smallint,tname varchar2(20));
Command> set autocommit 0;
Command> insert into ty values(1,'tangyun');
1 row inserted.
---使用ttxactadmin查看未提交的事务相关信息
Command> host ttxactadmin tytt
2014-06-14 15:58:30.301
/ttchk/DataStore/11g/TYTT/TYTTdata
TimesTen Release 11.2.2.4.3
Outstanding locks
PID Context TransID TransStatus Resource ResourceID Mode SqlCmdID Name
Program File Name: ttIsqlCmd
3473 0x14a82610 1.5 Active Database 0x01312d0001312d00 IX 0
Row BMUFVUAAABoAAAAAAO Xn
135710768 TIMESTEN.TY
Table 1732208 IXn
135710768 TIMESTEN.TY
1 outstanding transaction found
---上面插入一行记录能够看到Database的IX锁和table的IXn和Row的Xn锁信息。
---关于TimesTen的IX锁,能够參考:
http://blog.itpub.net/24930246/viewspace-1183227/
http://blog.csdn.net/tangyun_/article/details/30902729
这个时候假设对表进行DDL。将会超时退出
Command> alter table ty add tdept varchar2(20);
6003: Lock request denied because of time-out
Details: Tran 2.8 (pid 3604) wants X lock on table TIMESTEN.TY. But tran 1.5 (pid 3473) has it in IXn (request was IXn). Holder SQL (insert into ty values(1,'tangyun'))
The command failed.
----以下获取SQL信息
Command> call ttsqlcmdcacheinfo(135710768);
< 135710768, 2048, 1, 1, 0, 1, 1640, TIMESTEN , insert into ty values(1,'tangyun') >
1 row found.
Command> call ttsqlcmdqueryplan(135710768);
< 135710768, insert into ty values(1,'tangyun'), <NULL>, <NULL>, <NULL>, <NULL>, <NULL>, <NULL>, <NULL>, <NULL> >
< 135710768, <NULL>, 1, 1, Insert , TY , TIMESTEN , , , >
2 rows found.
Command> vertical 1;
Command> call ttsqlcmdcacheinfo(135710768);
SQLCMDID: 135710768
PRIVATE_COMMAND_CONNECTION_ID: 2048
EXECUTIONS: 1
PREPARES: 1
REPREPARES: 0
FREEABLE: 1
SIZE: 1640
OWNER: TIMESTEN
QUERYTEXT: insert into ty values(1,'tangyun')
1 row found.
Command> call ttsqlcmdqueryplan(135710768);
SQLCMDID: 135710768
QUERYTEXT: insert into ty values(1,'tangyun')
STEP: <NULL>
LEVEL: <NULL>
OPERATION: <NULL>
TABLENAME: <NULL>
TABLEOWNERNAME: <NULL>
INDEXNAME: <NULL>
INDEXEDPRED: <NULL>
NONINDEXEDPRED: <NULL>
SQLCMDID: 135710768
QUERYTEXT: <NULL>
STEP: 1
LEVEL: 1
OPERATION: Insert
TABLENAME: TY
TABLEOWNERNAME: TIMESTEN
INDEXNAME:
INDEXEDPRED:
NONINDEXEDPRED:
2 rows found.
Command>
----提交后。锁的信息将不存在。
Command> commit;
Command> host ttxactadmin tytt
2014-06-14 16:00:13.051
/ttchk/DataStore/11g/TYTT/TYTTdata
TimesTen Release 11.2.2.4.3
0 outstanding transactions found
Command>
----还能够使用 explain plan for sqlcmdid 查看对应的运行计划
Command> explain plan for sqlcmdid 135710768;
Query Optimizer Plan:
Query Text: insert into ty values(1,'tangyun')
STEP: 1
LEVEL: 1
OPERATION: Insert
TABLENAME: TY
TABLEOWNERNAME: TIMESTEN
INDEXNAME:
INDEXEDPRED:
NONINDEXEDPRED:
Command>
也能够使用showplan命令,然后运行SQL以显示对应的运行计划。
=====================End==============================================
使用ttXactAdmin、ttSQLCmdCacheInfo、ttSQLCmdQueryPlan获取SQL相关具体信息[TimesTen运维]的更多相关文章
- C# 获取操作系统相关的信息
本文通过一个Demo,讲解如何通过C#获取操作系统相关的信息,如内存大小,CPU大小,机器名,环境变量等操作系统软件.硬件相关信息,仅供学习分享使用,如有不足之处,还请指正. 涉及知识点: Envir ...
- ios 获取设备相关的信息
.获取设备的信息 UIDevice *device = [[UIDevice alloc] int]; NSString *name = device.name; //获取设备所有者的名称 NSStr ...
- ios 获取手机相关的信息
获取手机信息 应用程序的名称和版本号等信息都保存在mainBundle的一个字典中,用下面代码可以取出来 //获取版本号 NSDictionary *infoDict = [[NSBundl ...
- snmp获取设备相关管理信息
在本文中,作者将向我们展示如何用snmp代理监视网络设备,甚至发送软件警告. 网络上很多代理在为我们服务.只要我们开启UDP/161,162端口,这些代理就会以Management Informati ...
- python介绍、安装及相关语法、python运维、编译与解释
1.python介绍 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/)是一种广泛使用的解释型.高级编程.通用型编程语言,由吉多.范罗苏姆创造,第一版发布于1991年.可以视 ...
- C# 获取计算机cpu,硬盘,内存相关的信息
using System;using System.Management; namespace MmPS.Common.Helper{ /// <summary> /// 获取计算机相关的 ...
- Oracle中SQL调优(SQL TUNING)之最权威获取SQL执行计划大全
该文档为根据相关资料整理.总结而成,主要讲解Oracle数据库中,获取SQL语句执行计划的最权威.最正确的方法.步骤,此外,还详细说明了每种方法中可选项的意义及使用方法,以方便大家和自己日常工作中查阅 ...
- PySpark SQL 相关知识介绍
title: PySpark SQL 相关知识介绍 summary: 关键词:大数据 Hadoop Hive Pig Kafka Spark PySpark SQL 集群管理器 PostgreSQL ...
- 【Oracle】获取SQL执行计划
一.plsql developer工具F5 在sqldeveloper中选中sql按F5即可查看执行计划
随机推荐
- 【ZOJ】3609 Modular Inverse
1. 题目描述求乘法逆元. 2. 基本思路利用扩展gcd求逆元,模板题目. 3. 代码 /* 3609 */ #include <iostream> #include <sstrea ...
- 从Excel表格导入数据到数据库
数据库:SQL 1.小数据直接粘贴 2.用导入向导 3.用SSIS包 4.用SQL语句 现在详细说一下第4种方法,以.xlsx文件为例 .xlsx文件需要用provider“Microsoft.ACE ...
- FreeMarker中if标签内的判断条件
reeMarker中的<#if>标签除了里面直接判断 boolean 类型的变量外,也可以进行表达式判断,有几个细节记录一下 1. 判断对象是否存在(null) 经常会用到,如果对象 != ...
- Codeforces Round #306 (Div. 2)
A. Two Substrings You are given string s. Your task is to determine if the given string s contains t ...
- java适配器模式
原文查看:http://www.cnblogs.com/java-my-life/archive/2012/04/13/2442795.html
- ORACLE:profile的管理
PROFILE的管理(资源文件) 当需要设置资源限制时,必须设置数据库系统启动参数RESOURCE_LIMIT,此参数默认值为FALSE 可以使用如下命令来启动当前资源限制: ...
- 【转】COCOS2D-X之CCHttpRequest下载图片Demo
#include "pthread.h" #pragma comment(lib,"libcurl_imp.lib") #pragma comment(lib, ...
- JavaEE基本了解
1. 为什么需要JavaEE 我们编写的JSP代码中,由于大量的显示代码和业务逻辑混淆在一起,彼此嵌套,不利于程序的维护和扩展.当业务需求发生变化的时候,对于程序员和美工都是一个很重的负担. 为了程 ...
- HDU4578 Transformation 线段树
这个题让我重新学习了加 乘 在区间的操作 题解:http://blog.csdn.net/guognib/article/details/25324025?utm_source=tuicool& ...
- 初涉C#防止黑客攻击站短
一.同一个IP如果在一分钟内连续发送5个站短可以认为是不正确的,原因有2方面: 1.发站短的页面是有点击按钮,点击按钮后马上按钮会变为不可点击,所以在前端要防止点击一次触发多次的情况 2.发送短信的U ...