1. /*
  2. 部分SQL
  3. */
  4.  
  5. --添加主键
  6. alter TABLE TABLE_SCHEMA.TABLE_NAME
  7. add constraint PK_TABLE_NAME
  8. primary key(COL1 ,COL2);
  9.  
  10. --收集统计信息runsats
  11. db2 "runstats on table tbschema.tbname with distribution on all columns and indexes all"
  12.  
  13. /*
  14. 以下为数据库监控部分
  15. */
  16. --监控最耗费用户CPU的时间的动态SQL
  17. select STMT_TEXT from sysibmadm.snapdyn_sql order by total_usr_cpu_time desc fetch first 5 rows only
  18.  
  19. --监控访问热点对象执行次数最多的SQL,<TableName>指热点表名
  20. select STMT_TEXT,num_executions
  21. from sysibmadm.snapdyn_sql where stmt like '%<TableNameForHotIndex>%'
  22. order by num_executions desc fetch first 5 rows only
  23.  
  24. --监控访问热点对象执行次数最多的SQL,<TableNameForHotIndex>指热点索引
  25. select STMT_TEXT,num_executions
  26. from sysibmadm.snapdyn_sql where stmt like '%<TableNameForHotIndex>%'
  27. order by pool_index_p_reads desc fetch first 5 rows only
  28.  
  29. --监控运行时间最长的SQL
  30. select * from sysibmadm.long_running_sql
  31. order by elapsed_time_min desc
  32. fetch first 1 rows only
  33.  
  34. --监控运行次数最多的SQL
  35. select stmt_text,num_executions from sysibmadm.top_dynamic_sql
  36. order by num_executions desc
  37. fetch first 5 row only
  38.  
  39. --监控排序次数最多的SQL
  40. select stmt_text,stmt_sorts from sysibmadm.top_dynamic_sql
  41. order by stmt_sorts desc
  42. fetch first 5 row only
  43.  
  44. --日志写入速度
  45. db2 "select (log_write_time_ns/1000000)/num_log_write_io as average_log_wirte_ms from sysibmadm.snapdb"
  46.  
  47. --锁升级及死锁
  48. db2 "select lock_escals,deadlocks from sysibmadm.snapdb"
  49.  
  50. --获取所有管理视图
  51. db2 list tables for schema SYSIBMADM
  52.  
  53. --查看表结构
  54. db2look -d test -e -nofed -t test.test1 | awk '/CREATE TABLE/,/;/{print}'
  55.  
  56. --查看执行计划
  57. db2 connect to test
  58. db2 "explain plan for select distinct contno from table_schema.table_name"
  59. db2exfmt -d test -1 -o /tmp/a.exfmt
  60. more /tmp/a.exfmt
  61.  
  62. --修改表名
  63. RENAME TABLE_SCHEMA.OLD_TABLENAME TO NEW_TABLENAME;
  64.  
  65. --修改表字段
  66. ALTER TABLE TABLE_SCHEMA.OLD_TABLENAME ALTER COLUMNS SET DATA TYPE VARCHAR(10);
  67.  
  68. --修改字段名称【DB2不允许修改字段名称,但是可以删除后新增字段】
  69. ALTER TABLE TABLE_SCHEMA.TABLE_NAME DROP COLUMNS;
  70. 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. 「CF484E」Sign on Fence「整体二分」「线段树」

    题意 给定一个长度为\(n\)的正整数序列,第\(i\)个数为\(h_i\),\(m\)个询问,每次询问\((l, r, w)\),为\([l, r]\)所有长度为\(w\)的子区间最小值的最大值.( ...

  2. mac 安装oh-my-zsh的问题

    安装完,如果想切换回mac原来的bash终端,可以: chsh -s /bin/bash 反之,切换回zsh: chsh -s /bin/zsh

  3. 以字符串为例,谈谈Python到底要学到什么程度

    古语云:慈不掌兵,义不为商:离商业越近,离人性越远:我们在自学数据科学时,一定会辅助一些书籍或者视频来学习,怎么学习,选择哪些资料来学习?这时,我们都要理解好第一句话,理解不好,浪费钱是次要,重要的是 ...

  4. spring-boot 定时任务需要注意的地方

    spring-boot 跑定时任务非常容易 启动类上添加两个注解基本OK @EnableScheduling @EnableAsync 当然要记录的肯定不是这里的问题了 首先, fixedDelayf ...

  5. html 刷新更新背景图

    需求:每次刷新页面,随机获取背景图 实现方式: 1 通过js动态生成标签 <body> <script type="text/javascript"> va ...

  6. CF1197B

    CF1197B 题意: 出n个柱子,每个柱子一个圆盘,其半径各不相同,每次只能将柱子上只有一个圆盘的移到相邻位置,问能否全部移到一个柱子上. 解法: 思路题. 如果所有盘子都能移动到同一个柱子上,那么 ...

  7. opensuse tumbleweed中安装code

    在opensuse上启用snaps并安装visual studio code snaps是一个应用程序,运行在很多流行linux发行版上, 其所有依赖项都打包在一个构建中,并且会自动更新并能优雅地回滚 ...

  8. Python __dict__和vars()

    1 __dict__ 设想这样一个场景.有一个字典,从某个地方获取的,比如http请求发过来的,比如从redis中hgetall出来的.我要根据这个字典来构建一个对象. 比如类 class Perso ...

  9. ubuntu 无法访问windows使用的磁盘

    安装双系统的电脑,正常情况下Ubuntu是可以访问windows下使用的磁盘的, 当出现如下图所示问题时: Windows没有正常关闭. 解决方法: sudo apt-get install ntfs ...

  10. java课后实验性问题4

    课后作业一: 使用类的静态字段和构造函数,我们可以跟踪某个类所创建对象的个数.请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象? 设计思路:定义类的构造函数时使静态变量i进行i++,即每构 ...