深入浅出DB2
浙商银行项目
深入浅出DB2
杭州信雅达系统工程股份技有限公司
2015年9月22日
陈善语
深入浅出DB2
目 录
1
DB2安装与卸载 ............................................................................................................... 1 1.1 安装 .................................................................................................................................... 1 1.1.1 上传安装包 ............................................................................................................... 1 1.1.2 解压 ........................................................................................................................... 1 1.1.3 安装DB2 .................................................................................................................. 1 1.2 创建用户用户组 ................................................................................................................ 1 1.3 创建DB2实例 .................................................................................................................. 2 1.4 配置DB2 ........................................................................................................................... 2 1.5 创建数据库 ........................................................................................................................ 3 1.6 卸载 .................................................................................................................................... 5 1.6.1 删除数据库 ............................................................................................................... 5 1.6.2 删除管理服务 ........................................................................................................... 5 1.6.3 删除实例 ................................................................................................................... 5 1.6.4 卸载DB2 .................................................................................................................. 5 1.6.5 删除用户组及主目录 ............................................................................................... 6 2
系统表 ................................................................................................................................ 6 2.1 表的视图 ............................................................................................................................ 6 2.2 视图的视图 ........................................................................................................................ 6 2.3 用户定义函数和存储过程 ................................................................................................ 7 2.4 常规执行程序视图 ............................................................................................................ 8 2.5 字段的视图 ........................................................................................................................ 8 2.6 包的视图 ............................................................................................................................ 9 2.7 视图和DB2对象间的关系 .............................................................................................. 9 2.8 约束视图 .......................................................................................................................... 10 2.9 索引视图 .......................................................................................................................... 10 2.10 序列视图 ..................................................................................................................... 11 3
数据导入、导出 .............................................................................................................. 11 3.1 数据移动格式 .................................................................................................................. 11 3.2 EXPORT........................................................................................................................... 11 3.2.1 EXPORT概述 ........................................................................................................ 11 3.2.2 导出数据 ................................................................................................................. 11 3.2.3 导出数据实例 ......................................................................................................... 12 3.3 导入 .................................................................................................................................. 13 3.3.1 import导入数据 ..................................................................................................... 13 3.3.2 load导入 ................................................................................................................. 13 4
存储过程 .......................................................................................................................... 14 4.1 循环插入 .......................................................................................................................... 14 4.2 拉链基础 .......................................................................................................................... 14 4.3 DB2拉链算法实例 ......................................................................................................... 14 4.4 ORACLE拉链算法实例 .................................................................................................... 18
I
深入浅出DB2
5
函数 .................................................................................................................................. 18 5.1 一般函数 .......................................................................................................................... 18 5.2 DB2正则表达式 .............................................................................................................. 19 6
存储 .................................................................................................................................. 19 6.1 分区表 .............................................................................................................................. 19 7
权限管理 .......................................................................................................................... 19 7.1 用户列表 .......................................................................................................................... 19 7.2 常用授权命令 .................................................................................................................. 20 7.3 DB2权限详解 ................................................................................................................. 20 7.4 普通用户拥有实例用户权限 .......................................................................................... 25 7.4.1 Bnd命令 ................................................................................................................. 25 8 9 10
DB2LOOK用法 ............................................................................................................. 25 CATALOG用法 ............................................................................................................. 29 常用SQL ......................................................................................................................... 30
10.1 建表 ............................................................................................................................. 30 10.2 复制表 ......................................................................................................................... 30 10.3 修改表格 ..................................................................................................................... 31 10.4 建立索引 ..................................................................................................................... 31 10.5 删除 ............................................................................................................................. 31 10.6 更新 ............................................................................................................................. 31 10.7 回滚 ............................................................................................................................. 31 10.8 插入 ............................................................................................................................. 32 10.9 查询 ............................................................................................................................. 32 10.10 当前时间 ..................................................................................................................... 40 10.11 快速连接数据库 ......................................................................................................... 40 10.12 排序去重复 ................................................................................................................. 40 11
常用命令 .......................................................................................................................... 41
11.1 查看表空间 ................................................................................................................. 41 11.2 查看表空间容器路径 ................................................................................................. 41 11.3 查看数据库的表死锁 ................................................................................................. 41 11.4 查看和更改快照参数 ................................................................................................. 42 11.5 查看和更改锁相关的主要配置参数.......................................................................... 42 11.6 查看当前并发应用 ..................................................................................................... 43 11.7 使用事件查看器 ......................................................................................................... 43 11.8 查看执行最耗时的SQL ............................................................................................. 44 11.9 查看耗CPU时间最多的SQL ................................................................................... 44 11.10 查看总排序时间降序排列排序时间最长的SQL ..................................................... 44 11.11 查看表上的索引 ......................................................................................................... 44 11.12 得到误删除表的ID .................................................................................................... 44 11.13 数据库导入导出 ......................................................................................................... 44
II
深入浅出DB2
11.14 编目数据库 ................................................................................................................. 44 11.15 查询SQLCODE .......................................................................................................... 45 11.16 备份数据库 ................................................................................................................. 45 11.17 停止单个数据库 ......................................................................................................... 45 11.18 查看并修改DB2端口 ................................................................................................ 45 11.19 查看数据库 ................................................................................................................. 45 11.20 插入空值到表中 ......................................................................................................... 45 11.21 建立NICKNAME ........................................................................................................... 46 11.22 查看前几条记录 ......................................................................................................... 46 11.23 查看DB2实例 ............................................................................................................. 46 11.24 查看数据库语句执行时间 ......................................................................................... 46 11.25 创建数据库 ................................................................................................................. 46 11.26 查看BUFFERPOOL ....................................................................................................... 46 11.27 单表导入导出 ............................................................................................................. 46 11.28 数据库所有快照 ......................................................................................................... 47 11.29 查看临时表空间使用情况 ......................................................................................... 47 11.30 通过性能管理视图监控数据库 ................................................................................. 47 11.31 监控缓冲池命中率 ..................................................................................................... 47 11.32 监控PACKAGE CACHE 大小 ....................................................................................... 47 11.33 监控执行成本最高的SQL ......................................................................................... 47 11.34 监控允许最长的SQL ................................................................................................. 48 11.35 监控SQL准备和预编译时间最长的SQL ............................................................... 48 11.36 监控执行次数最多的SQL ......................................................................................... 48 11.37 监控排序次数最多的SQL ......................................................................................... 48 11.38 监控LOCK WAIT等待时间 ...................................................................................... 48 11.39 监控LOCK CHAIN .................................................................................................... 49 11.40 诊断锁超时 ................................................................................................................. 50 11.41 捕获正在等待的锁定 ................................................................................................. 50 11.42 监控动态的SQL语句 ................................................................................................ 50 11.43 监控内存使用情况 ..................................................................................................... 50 11.44 监控全表扫描的表 ..................................................................................................... 50 11.45 监控日志使用情况 ..................................................................................................... 50 11.46 收集操作系统信息 ..................................................................................................... 50 11.47 获取数据库管理器配置参数 ..................................................................................... 50 11.48 获取数据库配置参数 ................................................................................................. 51 11.49 扩大数据库事务日志 ................................................................................................. 51 11.50 DB2MTRK使用方法 ..................................................................................................... 51 11.51 列出所有的DB2注册变量 ......................................................................................... 51 12
小常识 .............................................................................................................................. 51
12.1 DB2四种隔离级别 ..................................................................................................... 51 12.2 查看数据库表结构 ..................................................................................................... 52 12.3 命令行执行SQL ......................................................................................................... 53 12.3.1 执行固定结尾?;?的SQL语句 ................................................................................ 53 12.3.2 执行非固定结尾的函数、存储过程 ..................................................................... 53
III
深入浅出DB2
12.3.3 Describe................................................................................................................... 53 12.4 意外删除CATALOG...................................................................................................... 53 12.5 DB排错 ....................................................................................................................... 53
IV