/*
部分SQL
*/ --添加主键
alter TABLE TABLE_SCHEMA.TABLE_NAME
add constraint PK_TABLE_NAME
primary key(COL1 ,COL2); --收集统计信息runsats
db2 "runstats on table tbschema.tbname with distribution on all columns and indexes all" /*
以下为数据库监控部分
*/
--监控最耗费用户CPU的时间的动态SQL
select STMT_TEXT from sysibmadm.snapdyn_sql order by total_usr_cpu_time desc fetch first 5 rows only --监控访问热点对象执行次数最多的SQL,<TableName>指热点表名
select STMT_TEXT,num_executions
from sysibmadm.snapdyn_sql where stmt like '%<TableNameForHotIndex>%'
order by num_executions desc fetch first 5 rows only --监控访问热点对象执行次数最多的SQL,<TableNameForHotIndex>指热点索引
select STMT_TEXT,num_executions
from sysibmadm.snapdyn_sql where stmt like '%<TableNameForHotIndex>%'
order by pool_index_p_reads desc fetch first 5 rows only --监控运行时间最长的SQL
select * from sysibmadm.long_running_sql
order by elapsed_time_min desc
fetch first 1 rows only --监控运行次数最多的SQL
select stmt_text,num_executions from sysibmadm.top_dynamic_sql
order by num_executions desc
fetch first 5 row only --监控排序次数最多的SQL
select stmt_text,stmt_sorts from sysibmadm.top_dynamic_sql
order by stmt_sorts desc
fetch first 5 row only --日志写入速度
db2 "select (log_write_time_ns/1000000)/num_log_write_io as average_log_wirte_ms from sysibmadm.snapdb" --锁升级及死锁
db2 "select lock_escals,deadlocks from sysibmadm.snapdb" --获取所有管理视图
db2 list tables for schema SYSIBMADM --查看表结构
db2look -d test -e -nofed -t test.test1 | awk '/CREATE TABLE/,/;/{print}' --查看执行计划
db2 connect to test
db2 "explain plan for select distinct contno from table_schema.table_name"
db2exfmt -d test -1 -o /tmp/a.exfmt
more /tmp/a.exfmt --修改表名
RENAME TABLE_SCHEMA.OLD_TABLENAME TO NEW_TABLENAME; --修改表字段
ALTER TABLE TABLE_SCHEMA.OLD_TABLENAME ALTER COLUMNS SET DATA TYPE VARCHAR(10); --修改字段名称【DB2不允许修改字段名称,但是可以删除后新增字段】
ALTER TABLE TABLE_SCHEMA.TABLE_NAME DROP COLUMNS;
ALTER TABLE TABLE_SCHEMA.TABLE_NAME ADD COLUMNS VARCHAR(10);

参考资料:

DB2设计、管理与性能优化艺术 --王飞鹏 、 李玉明 、 朱志辉 、 王富国 等  著  胡伟民  校

DB2部分查询SQL的更多相关文章

  1. DB2分页查询SQL

    select * from (select row_number() over() as rown,tpag.* from(SELECT int(COALESCE(列名1,0)),COALESCE(列 ...

  2. DB2、ORACLE SQL写法的主要区别

    DB2.ORACLE SQL写法的主要区别   说实话,ORACLE把国内的程序员惯坏了,代码中的SQL充斥着大量ORACLE特性,几乎没人知道ANSI的标准SQL是什么样子,导致程序脱离了ORACL ...

  3. 详述 DB2 分页查询及 Java 实现的示例_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 博主说:有时候,我们需要对数据库中现有的数据进行大量处理操作(例如表中的某个字段需要全部更新等),如果直接使用selec ...

  4. MySQL - 常用命令及常用查询SQL

    常用查询SQL #查看临时目录 SHOW VARIABLES LIKE '%tmp%'; #查看当前版本 SELECT VERSION(); 常用命令 #查看当前版本,终端下未进入mysql mysq ...

  5. 【ORACLE】记录通过执行Oracle的执行计划查询SQL脚本中的效率问题

    记录通过执行Oracle的执行计划查询SQL脚本中的效率问题   问题现象: STARiBOSS5.8.1R2版本中,河北对帐JOB执行时,无法生成发票对帐文件.   首先,Quartz表达式培植的启 ...

  6. Oracle数据库和DB2数据库分页SQL的区别举例

    --------------------------ORACLE数据库分页SQL举例------------------------------------------------ SELECT * ...

  7. 查询sql语句所花时间

    --1:下面这种是SQL Server中比较简单的查询SQL语句执行时间方法,通过查询前的时间和查询后的时间差来计算的: declare @begin_date datetime declare @e ...

  8. 跨服务器查询sql语句样例

    若2个数据库在同一台机器上:insert into DataBase_A..Table1(col1,col2,col3----)select col11,col22,col33-- from Data ...

  9. 查询sql表列名

    --查询sql 查询表列名Select Name FROM SysColumns Where id=Object_Id('Tab') --查询sql数据库表列名称select name from sy ...

随机推荐

  1. Liunx之django项目部署

    一.python web 项目部署 python django默认启动python3 manage.py runserver 0.0.0.0:8000这种方式调用wsgiref单机模块,性能较低,生产 ...

  2. 下板不动, 上板匀速平板间流动(Crank-Nicolson格式)【转载】

    摘自<FLUENT流体工程仿真计算实例与分析>,程序略有修改 两个间距为1cm水平平板,如下图所示: 上板匀速平板间流动(Crank-Nicolson格式)[转载]"> 充 ...

  3. spring boot处理跨域

    使用重写WebMvcConfigurer的方式 @Component public class WebMvcConfig extends WebMvcConfigurationSupport { @O ...

  4. 使用PyMySQL连接MySQL错误

    使用PyMySQL连接MySQL错误 之前写了一个小项目,今天突然想起来,准备优化一下,但是原本好好的项目竟然跑不起来了 emmm....我真的啥都没干呀 具体错误是这样的: Traceback (m ...

  5. Flutter用dio封装http网络请求,设置统一的请求地址、headers及处理返回内容

    封装http请求是项目中经常需要做的,常用于设置通用请求地址.请求headers以及处理返回结果,例如在项目中开发地址.测试地址.上线地址是不一样的,当在封装的请求设置好默认地址之后只需要改一个地址而 ...

  6. 前端 - 轮询, 长轮训, websocket

    轮询 概念 ajax 轮询的原理很简单,让浏览器间隔几秒就发送一次请求,询问服务器是否有新信息 代码 function showUnreadNews() { $(document).ready(fun ...

  7. 002-多线程-JUC集合-List-CopyOnWriteArrayList

    一.概述 CopyOnWriteArrayList是Java并发包中提供的一个并发容器,它是个线程安全且读操作无锁的ArrayList,写操作则通过创建底层数组的新副本来实现,是一种读写分离的并发策略 ...

  8. 003-多线程-JUC线程池-几种特殊的ThreadPoolExecutor【newFixedThreadPool、newCachedThreadPool、newSingleThreadExecutor、newScheduledThreadPool】

    一.概述 在java doc中,并不提倡我们直接使用ThreadPoolExecutor,而是使用Executors类中提供的几个静态方法来创建线程池: 以下方法是Executors下的静态方法,Ex ...

  9. java字符串MD5加密后再转16进制

    话不多说上码 pom.xml <!-- MD5 --> <dependency> <groupId>org.apache.commons</groupId&g ...

  10. Delphi 中自定义异常及异常处理的一般方法

    delphi中异常定义如下: TCustomException   =   class(Exception)     private     public         constructor   ...