DB2学习-01Database Monitoring
DB2数据库巡检报告
DB2数据库巡检报告
DB2数据库巡检报告主要包括以下内容:
1.引言:介绍DB2数据库巡检的目的、背景和重要性。
2.巡检范围和方法:说明巡检所涵盖的数据库系统、版本和
环境,以及采用的巡检方法和工具。
3.数据库服务器硬件:对数据库服务器硬件进行检测和分析,
包括CPU、内存、存储、网络等硬件资源的使用情况和性
能表现。
4.数据库软件:对DB2数据库软件的版本、补丁和配置进行
检查和分析,包括数据库实例、表空间、索引、日志等关
键对象的属性和状态。
5.数据安全性和完整性:对数据库的数据安全性和完整性进
行检查,包括用户访问权限、数据备份恢复、加密解密等
安全控制措施的配置和运行情况。
6.性能监控和优化:对DB2数据库的性能进行监控和优化,
包括CPU利用率、I/O性能、内存分配等关键指标的监控
和分析,以及针对性能瓶颈的优化建议。
7.故障排除和恢复:对DB2数据库可能出现的故障进行排查
和恢复,包括系统崩溃、数据损坏等故障类型和相应的恢
复流程和方法。
8.建议和改进:根据巡检结果和分析,提出针对DB2数据库
系统的建议和改进措施,包括硬件升级、软件配置调整、
安全策略改进等。
9.结论:总结巡检报告的主要发现和建议,强调DB2数据库
系统的健康状况和需要关注的方面,以及对未来的改进方向的建议。
需要注意的是,DB2数据库巡检报告的具体内容可能因实际情况而异,上述内容仅供参考。
在实际操作中,需要根据具体的环境和需求进行调整和定制。
DB2监控指标说明
DB2监控指标说明1.缓存命中率:缓存命中率是指数据库从缓存中读取数据而不是从磁盘上读取的比例。
高的缓存命中率表示大部分请求都可以在内存中得到满足,减少了IO操作,提高了数据库的读取性能。
2.锁等待时间:锁等待时间是指事务等待其他事务释放锁并获取锁的时间。
高的锁等待时间可能会导致事务延迟或超时,降低数据库的并发性能。
通过监控锁等待时间,可以及时发现锁竞争问题,并进行适当的调整。
3.日志使用率:日志使用率是指数据库日志空间使用量与总空间的比例。
高的日志使用率表明数据库写入操作频繁,可能需要定期进行日志备份和清理,以避免日志空间不足导致数据库无法正常运行。
4.磁盘空间使用率:磁盘空间使用率是指数据库所在磁盘的空间使用量与总空间的比例。
高的磁盘空间使用率可能会导致数据库无法写入新数据或扩展,因此需要及时监控和清理磁盘空间,以保证数据库的正常运行。
5.缓冲区池命中率:缓冲区池命中率是指从缓冲区池中读取数据而不是从磁盘上读取的比例。
高的缓冲区池命中率表示大部分数据都在缓冲区池中,减少了磁盘IO操作,提高了数据库的读取性能。
6.日志刷新时间:日志刷新时间是指写入日志记录后,需要等待多长时间将日志刷新到磁盘上。
较长的日志刷新时间可能会导致事务等待并降低数据库的写入性能。
因此,监控日志刷新时间可以帮助及时优化写入性能。
7.总命中率:总命中率是指从所有缓存中读取数据而不是从磁盘上读取的比例。
高的总命中率表示数据库的缓存管理良好,读取性能高。
8.平均CPU利用率:平均CPU利用率是指数据库使用的CPU资源与总CPU资源的比例。
较低的平均CPU利用率可能表示数据库在一些时候闲置了CPU资源。
通过监控平均CPU利用率,可以进行合理的资源分配,提高性能。
9.平均响应时间:平均响应时间是指数据库响应用户请求的平均时间。
较长的平均响应时间可能导致用户体验差,并可能需要优化数据库的查询和索引。
10.访问计划分析:通过分析访问计划,可以确定是否存在性能问题。
DB2数据库常用命令数据库学习
db2 list active databases 列出所有活动的数据库
db2 list tables for all 列出当前数据库下所有的表
db2 list tables for schema btp 列出当前数据库中schema为btp的表
注:appl-handler可以从list applicaitions的输出中得到
-查看表级别快照信息
DB2 get snapshot for tables on dbname
注:需要把tables快照开关设为ON才会有作用
-查看锁快照信息
DB2 get snapshot for locks on dbname
1、 以默认分隔符加载,默认为“,”号
db2 "import from btpoper.txt of del insert into btpoper"
2、 以指定分隔符“|”加载
db2 "import from btpoper.txt of del modified by coldel| insert into btpoper"
可以使用时间查看器收集锁事件,SQL语句事件,从而根据事件分析锁原因。
事件类型
使用事件监控器,首先要选定所关注的事件类型,DB2中有很多事件类型,可以用于锁分析的通常会用到以下三种:
DEADLOCKS
DEADLOCKS WITH DETAILS
STATEMENTS
db2 list tablespaces show detail 查看当前数据库表空间分配状况
db2 list tablespace containers for 2 show detail 查看tablespace id=2使用容器所在目录
DB2-培训内容
2024/9/22
8
DB2 旳总体构造
2024/9/22
9
DB2 旳总体构造
DB2 Environment
DB2 Instance
DB2 DataBase
DB2 DataBase
DB2 Instance
DB2 DataBase
DB2 Environment (db2set)
DB2 Instance (db2i…)
DB2 培训内容纲要
DB2简介
DB2 产品简介 DB2 旳总体构造 DB2 连接
DB2 SQL
数据库对象操作(DDL+) 数据操作(DML) 高级SQL
DB2 管理
数据存储 系统维护 监控和优化
附录
2024/9/22
1
DB2 产品简介
2024/9/22
2
DB2 产品简介
2024/9/22
2024/9/22
19
DB2 SQL
RETRIEVING DATA(查询)
Retrieving the Entire Table Projecting Columns from a Table Changing the Order of the Columns Restricting Rows from a Table Limiting Result Table Size Selecting Columns from Multiple Tables Using Correlation Names DB2 Functions(Row、Column) Subquery(子查询)
DB2 DataBase(db)
2024/9/22
10
DB2 连接
2024/9/22
DB2使用手册
DB2使⽤⼿册第⼀部分DB2系统管理命令1. Db2有域,实例,和数据库三层的概念。
2.查看数据库服务器中有⼏个数据库。
包括⽹络中数据库的引⽤。
进⼊数据库安装⽬录下的bin⽬录:C:\Program Files\IBM\SQLLIB\BIN执⾏db2 list database directory命令3.查看命令选项说明list command options4.查看运⾏的数据库服务器中关联了多少个引⽤程序对数据库的访问。
进⼊数据库安装⽬录下的bin⽬录:C:\Program Files\IBM\SQLLIB\BINdb2 list applications命令可以通过db2 force application(进程id) 杀死对应的进程。
5.如何强制断开应⽤程序和数据库的连接。
进⼊数据库安装⽬录下的bin⽬录:C:\Program Files\IBM\SQLLIB\BIN⾏下列的命令 db2 force applications 可以强制断开应⽤程序和数据库的连接。
6.如何备份数据库进⼊db2的操作环境,然后运⾏backup database 数据库别名 user ⽤户名 using 密码命令7.停⽌数据库的服务器。
进⼊数据库安装⽬录下的bin⽬录:C:\Program Files\IBM\SQLLIB\BIN或db2操作环境中,如果在db2操作环境中必须通过的db2 terminate命令终结db2操作环境中启动的所有⼦进程(即停⽌所有命令⾏处理器回话)再执⾏db2stop命令。
注意:在执⾏此命令的时候,必须没有应⽤程序或⽤户和数据库连接。
可以在执⾏停⽌命令之前查看于db2服务器连接的应⽤程序和⽤户。
然后执⾏牵制断开命令断开连接的数据库和⽤户。
8.如何从旧版本中把数据库迁移到新的安装版本中(在新版数据库种运⾏下列代码)1. 验证数据库是否可以被迁移。
⽤db2ckmig命令,db2ckmig /e 数据库别名 /l 验证信息保存路径 /u ⽤户名 /p 密码1. 执⾏数据库的迁移命令MIGRATE database 数据库别名 user ⽤户名 using 密码命令9.启动DB2服务器进⼊数据库安装⽬录下的bin⽬录:C:\Program Files\IBM\SQLLIB\BIN或db2操作环境中执⾏db2start命令10.关于命令⾏编辑器的使⽤使⽤命令⾏编辑器之前要连接到⼀个数据库。
db2数据库 sql常用命令
DB2数据库 SQL常用命令一、连接数据库1. 从命令行连接数据库- 语法: db2 connect to <database_name> user <username> using <password>- 示例: db2 connect to sample user db2inst1 using passw0rd2. 从命令行断开数据库连接- 语法: db2 connect reset- 示例: db2 connect reset3. 显示当前连接的数据库- 语法: db2 list database directory- 示例: db2 list database directory二、管理数据库对象4. 创建数据库- 语法: db2 create database <database_name>- 示例: db2 create database sample5. 删除数据库- 语法: db2 drop database <database_name>- 示例: db2 drop database sample6. 创建表- 语法: db2 create table <table_name> (<column1_name> <data_type>, <column2_name> <data_type>, ...)- 示例: db2 create table employee (id int, name varchar(50), age int)7. 删除表- 语法: db2 drop table <table_name>- 示例: db2 drop table employee8. 插入数据- 语法: db2 insert into <table_name> values (<value1>,<value2>, ...)- 示例: db2 insert into employee values (1, 'John', 25)9. 删除数据- 语法: db2 delete from <table_name> where <condition> - 示例: db2 delete from employee where id = 110. 更新数据- 语法: db2 update <table_name> set <column_name> =<new_value> where <condition>- 示例: db2 update employee set age = 30 where id = 111. 查询数据- 语法: db2 select <column1_name>, <column2_name>, ... from <table_name> where <condition>- 示例: db2 select * from employee三、管理数据库事务12. 启动事务- 语法: db2 autmit off- 示例: db2 autmit off13. 提交事务- 语法: db2mit- 示例: db2mit14. 回滚事务- 语法: db2 rollback- 示例: db2 rollback四、管理数据库权限15. 创建用户- 语法: db2 create user <username> password <password> - 示例: db2 create user testuser password testpass16. 授权- 语法: db2 grant <privilege> on <object> to <user>- 示例: db2 grant select, insert, update on employee to testuser17. 撤销授权- 语法: db2 revoke <privilege> on <object> from <user> - 示例: db2 revoke select, insert, update on employee from testuser五、管理数据库性能18. 优化SQL查询- 语法: db2expln -d <database_name> -t <sql_statement> - 示例: db2expln -d sample -t "select * from employee"19. 查看数据库锁- 语法: db2 list applications show det本人l- 示例: db2 list applications show det本人l20. 查看数据库表空间使用情况- 语法: db2pd -d <database_name> -tablespaces- 示例: db2pd -d sample -tablespaces六、其他常用命令21. 导出数据- 语法: db2 export to <file_name> of del select * from<table_name>- 示例: db2 export to employee.csv of del select * from employee22. 导入数据- 语法: db2 import from <file_name> of del insert into<table_name>- 示例: db2 import from employee.csv of del insert into employee23. 查看数据库配置参数- 语法: db2 get db cfg for <database_name>- 示例: db2 get db cfg for sample结语以上就是DB2数据库SQL常用命令的介绍,通过掌握这些命令,可以更方便地管理和使用DB2数据库。
DB2学习总结(1)——DB2数据库基础入门
DB2学习总结(1)——DB2数据库基础⼊门DB2的特性完全Web使能的:可以利⽤HTTP来发送询问给服务器。
⾼度可缩放和可靠:⾼负荷时可利⽤多处理器和⼤内存,可以跨服务器地分布数据库和数据负荷;能够以最⼩的数据丢失快速地恢复,提供多种备份策略。
DB2数据库启停启动数据库:db2start停⽌数据库:db2stop检查存在的数据库LIST DATABASE DIRECTORY数据库连接、断开CONNECT TO databasenameCONNECT RESET创建、删除数据库CREATE DB databasename注:如果已经连着⼀个数据库的话,就创建不了数据库,会报“应⽤程序已经与⼀个数据库相连”的错DROP DB databasename第⼆节表数据类型可分为数值型(numeric)、字符串型(character string)、图形字符串(graphic string)、⼆进制字符串型(binary string)或⽇期时间型(datetime)。
还有⼀种叫做DATALINK的特殊数据类型。
DATALINK值包含了对存储在数据库以外的⽂件的逻辑引⽤。
数值型数据类型包括:⼩整型,SMALLINT:两字节整数,精度为5位。
范围从-32,768到32,767。
⼤整型,INTEGER或INT:四字节整数,精度为10位。
范围从-2,147,483,648到2,147,483,647。
巨整型,BIGINT:⼋字节整数,精度为19位。
范围从-9,223,372,036,854,775,808到9,223,372,036,854,775,807。
⼩数型,DECIMAL(p,s)、DEC(p,s)、NUMBERIC(p,s)或NUM(p,s):⼩数型的值是⼀种压缩⼗进制数,它有⼀个隐含的⼩数点。
压缩⼗进制数将以⼆-⼗进制编码(binary-coded decimal,BCD)记数法的变体来存储。
⼩数点的位置取决于数字的精度(p)和⼩数位(s)。
DB2数据库的操作命令总结
DB2数据库的操作命令总结以下是DB2数据库的操作命令总结:1. 连接数据库:CONNECT TO database_name USER username USING password使用CONNECTTO命令可以连接到特定的数据库,需要提供数据库的名称、用户名和密码。
2. 断开数据库连接:DISCONNECT database_name使用DISCONNECT命令可以断开与数据库的连接。
3. 创建数据库:CREATE DATABASE database_name使用CREATEDATABASE命令可以创建一个新的数据库。
4. 删除数据库:DROP DATABASE database_name使用DROPDATABASE命令可以删除一个已经存在的数据库。
5.列出所有数据库:LISTDATABASEDIRECTORY使用LISTDATABASEDIRECTORY命令可以列出所有的数据库。
6. 切换数据库:CONNECT TO database_name使用CONNECTTO命令可以切换到另一个已存在的数据库。
7. 创建表:CREATE TABLE table_name (column1 datatype1, column2 datatype2, ...)使用CREATETABLE命令可以创建一个新的表,需要提供表名和各个列的名称及数据类型。
8. 删除表:DROP TABLE table_name使用DROPTABLE命令可以删除一个已经存在的表。
9. 查询表的结构:DESCRIBE TABLE table_name使用DESCRIBETABLE命令可以查询一个表的结构,包括各个列的名称和数据类型。
10. 查询表的数据:SELECT * FROM table_name使用SELECT命令可以查询一个表中的数据,使用*表示查询所有的列。
11. 插入数据:INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...)使用INSERTINTO命令可以向一个表中插入新的数据,需要提供插入的列和相应的值。
DB2基础知识(二)
内部资料 注意保密
12
二、DB2的数据类型 DB2的数据类型
2.1 数值型
类型
smallint
精度
5位, 2个字节 10位, 4个字节 19位, 8个字节 31位 Decimal(p,s)
取值范围
-32,768 到 32,767
int
-2,147,483,648 到 2,147,483,647
bigint
3.1 CREATE TABLE
Check约束 create table DWA_FAT.A80_GRPTRX ( STA_MON INT not null default 200901 constraint C_STA_MON check (STA_MON between 200901 and 200912), BRN_NBR CHAR(6) not null, BBK_NBR CHAR(3), not null 主键 GRP_NBR CHAR(2) not null, constraint "P_Key_1" primary key (STA_MON, BRN_NBR, GRP_NBR) ) 表空间 in HISDTA3_TBS index in HISIDX1_TBS distribute by 表注释及字 分区键 ( 段注释 BRN_NBR ); '随机销售团队月度业绩统计 随机销售团队月度业绩统计’; comment on table DWA_FAT.A80_GRPTRX is '随机销售团队月度业绩统计 ; '数据月份 数据月份'; comment on column DWA_FAT.A80_GRPTRX.STA_MON is '数据月份'; '交易归属分行 交易归属分行'; comment on column DWA_FAT.A80_GRPTRX.BBK_NBR is '交易归属分行'; '交易归属网点 交易归属网点'; comment on column DWA_FAT.A80_GRPTRX.BRN_NBR is '交易归属网点'; '团队编号 团队编号'; comment on column DWA_FAT.A80_GRPTRX.GRP_NBR is '团队编号';
db2日志维护
db2⽇志维护1、查看数据库配置get db cfg for hdxtdb 查看数据库参数db2 => get db cfg for hdxtdbDatabase Configuration for Database hdxtdb数据库 hdxtdb的数据库配置Database configuration release level数据库配置发⾏版级别= 0x0a00Database release level 数据库发⾏版级别 = 0x0a00Database territory 数据库地域 = cnDatabase code page 数据库代码页 = 1386Database code set 数据库代码集 = gbkDatabase country/region code 数据库国家/地区代码 = 86Database collating sequence 数据库整理顺序 = UNIQUEAlternate collating sequence (ALT_COLLATE) =备⽤整理顺序Dynamic SQL Query management (DYN_QUERY_MGMT) = DISABLE动态 SQL 查询管理Discovery support for this database (DISCOVER_DB) = ENABLE对此数据库的发现⽀持 (DISCOVER_DB)Default query optimization class (DFT_QUERYOPT) = 5缺省查询优化类 (DFT_QUERYOPT)Degree of parallelism 并⾏度 (DFT_DEGREE) = 1Continue upon arithmetic exceptions (DFT_SQLMATHWARN) = NO 在算术异常时继续 Default refresh age (DFT_REFRESH_AGE) = 0 缺省刷新有效期Default maintained table types for opt (DFT_MTTB_TYPES) = SYSTEM缺省维护的选项(DFT_MTTB_TYPES)的表类型Number of frequent values retained (NUM_FREQVALUES) = 10保留的⾼频值的数⽬ Number of quantiles retained (NUM_QUANTILES) = 20保留的分位点数⽬Backup pending = NO备份暂挂Database is consistent = NO数据库是⼀致的Rollforward pending = NO前滚暂挂Restore pending = NO复原暂挂Multi-page file allocation enabled = YES启⽤的多页⽂件分配Log retain for recovery status 恢复状态的⽇志保留 = NOUser exit for logging status = NO⽇志记录状态的⽤户出⼝Data Links Token Expiry Interval (sec) (DL_EXPINT) = 60Data Links 标记到期时间间隔(秒)Data Links Write Token Init Expiry Intvl(DL_WT_IEXPINT) = 60Data Links 写标记初始时间间隔Data Links Number of Copies (DL_NUM_COPIES) = 1副本的 Data Links 数⽬Data Links Time after Drop (days) (DL_TIME_DROP) = 1删除后的 Data Links 时间(天数)Data Links Token in Uppercase (DL_UPPER) = NO⼤写的 Data Links 标记Data Links Token Algorithm (DL_TOKEN) = MAC0Data Links 标记算法Database heap (4KB) 数据库堆(4KB (DBHEAP) = 1200Size of database shared memory (4KB) (DATABASE_MEMORY) = AUTOMATIC数据库共享内存⼤⼩(4KB)Catalog cache size (4KB) (CATALOGCACHE_SZ) = (MAXAPPLS*4) ⽬录⾼速缓存⼤⼩(4KB)Log buffer size (4KB) (LOGBUFSZ) = 512⽇志缓冲区⼤⼩(4KB)Utilities heap size (4KB) (UTIL_HEAP_SZ) = 5000实⽤程序堆⼤⼩(4KB)Buffer pool size (pages) (BUFFPAGE) = 1000缓冲池⼤⼩(页)Extended storage segments size (4KB) (ESTORE_SEG_SZ) = 16000扩充存储段⼤⼩(4KB)Number of extended storage segments (NUM_ESTORE_SEGS) = 0扩充存储段的数⽬Max storage for lock list (4KB) (LOCKLIST) = 40960锁定列表的最⼤存储量(4KBMax size of appl. group mem set (4KB) (APPGROUP_MEM_SZ) = 30000应⽤程序组内存集的最⼤⼤⼩(4KB)Percent of mem for appl. group heap (GROUPHEAP_RATIO) = 70应⽤程序组堆的内存百分⽐Max appl. control heap size (4KB) (APP_CTL_HEAP_SZ) = 128最⼤应⽤程序控制堆⼤⼩(4KB)Sort heap thres for shared sorts (4KB) (SHEAPTHRES_SHR) = (SHEAPTHRES) 共享排序的排序堆域值(4KB)Sort list heap (4KB) (SORTHEAP) = 4096排序列表堆(4KB)SQL statement heap (4KB) SQL 语句堆(4KB) (STMTHEAP) = 2048Default application heap (4KB) (APPLHEAPSZ) = 4096缺省应⽤程序堆(4KB)Package cache size (4KB) (PCKCACHESZ) = (MAXAPPLS*8) 程序包⾼速缓存⼤⼩(4KB)Statistics heap size (4KB) (STAT_HEAP_SZ) = 4384统计信息堆⼤⼩(4KB)Interval for checking deadlock (ms) (DLCHKTIME) = 10000检查死锁的时间间隔(毫秒)Percent. of lock lists per application (MAXLOCKS) = 30每个应⽤程序的锁定百分⽐列表Lock timeout (sec) (LOCKTIMEOUT) = 60锁定超时(秒)Changed pages threshold (CHNGPGS_THRESH) = 60更改的页阈值Number of asynchronous page cleaners (NUM_IOCLEANERS) = 2异步页清除程序的数⽬Number of I/O servers (NUM_IOSERVERS) = 7I/O 服务器的数⽬Index sort flag (INDEXSORT) = YES索引排序标志Sequential detect flag (SEQDETECT) = YES顺序检测标志Default prefetch size (pages) (DFT_PREFETCH_SZ) = AUTOMATIC缺省预取⼤⼩(页)Track modified pages (TRACKMOD) = OFF跟踪修改的页数Default number of containers = 1容器的缺省数⽬Default tablespace extentsize (pages) (DFT_EXTENT_SZ) = 32缺省表空间扩展数据块⼤⼩(页)Max number of active applications (MAXAPPLS) = AUTOMATIC 活动应⽤程序的最⼤数⽬Average number of active applications (AVG_APPLS) = 1活动应⽤程序的平均数⽬Max DB files open per application (MAXFILOP) = 64每个应⽤程序的最⼤打开数据库⽂件数Log file size (4KB) (LOGFILSIZ) = 20000⽇志⽂件⼤⼩(4KB)Number of primary log files (LOGPRIMARY) = 30主⽇志⽂件的数⽬Number of secondary log files (LOGSECOND) = 20辅助⽇志⽂件的数⽬Changed path to log files (NEWLOGPATH) =已更改的⾄⽇志⽂件的路径Path to log files ⽇志⽂件路径 = /home/hdxtdb/db2inst1/NODE0000/SQL00001/SQLOGDIR/Overflow log path (OVERFLOWLOGPATH) =溢出⽇志路径Mirror log path (MIRRORLOGPATH) =镜像⽇志路径First active log file =⾸个活动⽇志⽂件Block log on disk full (BLK_LOG_DSK_FUL) = NO磁盘上已满的块⽇志Percent of max active log space by transaction(MAX_LOG) = 0事务使⽤的最⼤活动⽇志空间的百分⽐Num. of active log files for 1 active UOW(NUM_LOG_SPAN) = 0 1 个活动 UOW 的活动⽇志⽂件的数⽬Group commit count (MINCOMMIT) = 1组落实计数Percent log file reclaimed before soft chckpt (SOFTMAX) = 100软检查点前回收的⽇志⽂件的百分⽐Log retain for recovery enabled (LOGRETAIN) = OFF启⽤的恢复的⽇志保留User exit for logging enabled (USEREXIT) = OFF启⽤的⽇志记录的⽤户出⼝HADR database role = STANDARD HADR 数据库⾓⾊HADR local host name (HADR_LOCAL_HOST) =HADR 本地主机名HADR local service name (HADR_LOCAL_SVC) =HADR 本地服务名称HADR remote host name (HADR_REMOTE_HOST) =HADR 远程主机名HADR remote service name (HADR_REMOTE_SVC) =HADR 远程服务名称HADR instance name of remote server (HADR_REMOTE_INST) =远程服务器的 HADR 实例名HADR timeout value (HADR_TIMEOUT) = 120 HADR 超时值 (HADR_TIMEOUT)HADR log write synchronization mode (HADR_SYNCMODE) = NEARSYNC HADR ⽇志写同步⽅式 (HADR_SYNCMODE) First log archive method (LOGARCHMETH1) = OFF第⼀个⽇志归档⽅法Options for logarchmeth1 (LOGARCHOPT1) = logarchmeth1 的选项Second log archive method (LOGARCHMETH2) = OFF第⼆个⽇志归档⽅法Options for logarchmeth2 (LOGARCHOPT2) = Logarchmeth2 的选项Failover log archive path (FAILARCHPATH) =故障转移⽇志归档路径Number of log archive retries on error (NUMARCHRETRY) = 5错误时重试⽇志归档次数Log archive retry Delay (secs) (ARCHRETRYDELAY) = 20⽇志归档重试延迟(秒)Vendor options (VENDOROPT) =供应商选项 (VENDOROPT)Auto restart enabled (AUTORESTART) = ON启⽤的⾃动重新启动Index re-creation time and redo index build (INDEXREC) = SYSTEM (RESTART) 索引重新创建时间和重做索引构建Log pages during index build (LOGINDEXBUILD) = OFF在索引构建期间记录页Default number of loadrec sessions (DFT_LOADREC_SES) = 1loadrec 会话的缺省数⽬Number of database backups to retain (NUM_DB_BACKUPS) = 12要保留的数据库备份的数⽬Recovery history retention (days) (REC_HIS_RETENTN) = 366恢复历史保留时间(天数)TSM management class TSM 管理类 (TSM_MGMTCLASS) =TSM node name TSM 节点名 (TSM_NODENAME) =TSM owner TSM 所有者 (TSM_OWNER) =TSM password TSM 密码 (TSM_PASSWORD) =Automatic maintenance ⾃动维护 (AUTO_MAINT) = OFFAutomatic database backup (AUTO_DB_BACKUP) = OFF⾃动数据库备份Automatic table maintenance (AUTO_TBL_MAINT) = OFF⾃动表维护Automatic runstats (AUTO_RUNSTATS) = OFF⾃动 runstatsAutomatic statistics profiling (AUTO_STATS_PROF) = OFF⾃动统计信息概要分析Automatic profile updates (AUTO_PROF_UPD) = OFF⾃动概要⽂件更新Automatic reorganization (AUTO_REORG) = OFF⾃动重组db2 =>修改对应的参数,使⽤命令:update db cfg [fordbname] using <参数名> <参数值>db2 => update db cfg using logretain onDB20000I UPDATE DATABASE CONFIGURATION命令成功完成。
DB2基础教程文档
DB2基础教程文档DB2是一个关系型数据库管理系统(RDBMS),用于存储、管理和操作数据。
它是由IBM开发的,被广泛应用于企业级应用程序和数据仓库。
本教程将介绍DB2的基本概念、常用命令和操作,帮助初学者快速入门并使用DB2进行开发和管理。
1.DB2简介-DB2的历史和发展-DB2的特点和优势-DB2的应用场景2.安装和配置DB2-配置DB2实例-创建和配置数据库3.数据库对象的管理-创建表和定义列-管理数据类型和约束-创建索引和视图-管理存储过程和触发器4.数据的插入、查询和更新-插入数据到表中-使用SELECT语句查询数据-更新和删除数据-使用JOIN操作关联表5.数据库事务和并发控制-事务的概念和特性-事务的隔离级别-并发控制的方法和技术6.数据库备份和恢复-备份和还原数据库-日志和事务恢复-数据库迁移和升级7.性能优化和查询调优-查询执行计划的分析-索引的设计和优化-查询性能调优的常用技巧8.高级功能和扩展-分布式数据库和数据复制-数据库安全和权限管理-数据库监控和性能调优工具9.常用的DB2命令和工具-DB2的命令行工具- 使用DB2 Control Center管理数据库- 使用IBM Data Studio进行开发和调试10.实际案例和练习-设计和创建一个简单的数据库-实现一个实际应用的数据模型-进行数据库调优和性能提升的练习总结:DB2是一款功能强大的关系型数据库管理系统,本教程详细介绍了DB2的基本概念、常用命令和操作,帮助初学者快速入门并能够实践开发和管理数据库。
希望通过学习本教程,读者能够掌握DB2的基本知识和技能,并在实际应用中获得更好的数据库性能和效果。
数据库管理系统DB2监控与调优技巧
数据库管理系统DB2监控与调优技巧随着现代企业对数据存储和管理的重要性越来越高,数据库管理系统已经成为了现代企业不可或缺的一部分。
DB2是IBM的一款关系型数据库管理系统,被广泛应用于企业级应用中。
在使用DB2进行数据管理时,我们需要掌握一些监控和调优技巧来保证其高效性和可靠性。
一、DB2监控技巧1. 监视系统资源使用情况在使用DB2进行数据管理时,我们需要关注系统资源的使用情况以及性能瓶颈。
可以使用IBM提供的一些监控工具来监视系统资源的使用情况,例如db2top、db2pd等工具。
通过使用这些工具,我们可以快速了解系统资源使用情况,及时发现性能瓶颈并进行调整。
2. 监视数据库活动除了监视系统资源的使用情况外,我们还需要监视数据库的活动情况。
可以使用db2diag命令查看数据库操作日志,查看数据库的活动情况并及时处理可能存在的问题。
此外,可以使用db2pd命令查看数据库锁定、响应时间等信息,也可根据情况对数据库进行调整和优化。
3. 周期性维护在长时间的数据库运行过程中,可能会产生类似磁盘碎片等问题,导致系统资源使用效率下降。
因此,我们需要定期进行数据库维护工作,例如备份和还原数据库、重建索引、收缩日志等操作,以保证数据库的高效性和可靠性。
二、DB2调优技巧1. 参数调整在使用DB2进行数据管理时,我们需要根据业务需求来调整DB2的参数,以提高数据库的性能。
例如,我们可以调整DB2的缓存大小、线程数、日志文件大小等参数,以达到更好的性能表现。
2. 建立索引索引是数据库管理中非常重要的一部分,可以大大提高数据库的查询效率。
在使用DB2进行数据管理时,我们需要针对数据库中经常查询的列建立索引,以加快查询速度。
此外,我们还需要定期检查并优化索引的性能。
3. 批量提交在进行大量数据处理时,我们可以采用批量提交的方式,以减少数据库服务器的负担。
如果逐条提交数据,会导致数据库频繁切换工作状态,从而影响数据库性能。
DB2数据库系统命令与配置参数
DB2数据库系统命令与配置参数DB2 系统命令dasauto -自动启动DB2 管理服务器dascrt -创建 DB2 管理服务器dasdrop -除去DB2 管理服务器dasmigr -迁移DB2 管理服务器dasupdt -更新 DB2 管理服务器db2_deinstall -卸载DB2 产品或功能部件db2_install -安装DB2 产品db2admin -DB2 管理服务器db2adutl -管理TSM 内的DB2 对象db2advis -DB2 设计顾问程序db2audit -审计设施管理员工具db2batch -基准程序工具db2bfd -绑定文件描述工具db2ca -启动“配置助手”db2cap -CLI/ODBC 静态程序包绑定工具db2cat -系统目录分析db2cc -启动控制中心db2cfexp -连接配置导出工具db2cfimp -连接配置导入工具db2chglibpath -修改嵌入的运行时库搜索路径db2chgpath -更改嵌入的运行时路径db2ckbkp -检查备份db2ckmig -数据库预迁移工具db2ckrst -检查增量复原映像序列db2cli -DB2 交互式CLIdb2cmd -打开DB2 命令窗口db2dart -数据库分析和报告工具db2daslevel -显示DAS 级别db2dclgn -声明生成器db2diag -db2diag.log 分析工具db2drdat -DRDA 跟踪db2drvmp -DB2 数据库驱动器映射db2empfa -启用多页文件分配db2envar.bat -设置当前命令窗口的环境db2eva -事件分析器db2evmon -事件监视器生产率工具db2evtbl -生成事件监视器目标表定义db2exfmt -说明表格式db2exmig -迁移说明表命令db2expln -SQL 和XQuery 说明db2extsec -设置DB2 对象的许可权db2flsn -查找日志序号db2fm -DB2 故障监视器db2fs -第一步db2gcf -控制DB2 实例db2gov -DB2 控制器db2govlg -DB2 控制器日志查询db2gpmap -获取分布图db2hc -启动运行状况中心db2iauto -自动启动实例db2iclus -Microsoft Cluster Serverdb2icrt -创建实例db2idrop -除去实例db2ilist -列示实例db2imigr -迁移实例db2inidb -初始化镜像数据库db2inspf -格式化检查结果db2isetup -启动实例创建界面db2iupdt -更新实例db2jdbcbind -DB2 JDBC 程序包绑定程序db2ldcfg -配置LDAP 环境db2level -显示DB2 服务级别db2licm -许可证管理工具db2listvolumes -显示所有磁盘卷的GUID db2logsforrfwd -列示前滚恢复所需的日志db2look -DB2 统计信息和DDL 抽取工具db2ls -列出已安装的DB2 产品和功能部件db2move -数据库移动工具db2mqlsn -MQ 侦听器db2mscs -设置 Windows 故障转移实用程序db2mtrk -内存跟踪程序db2nchg -更改数据库分区服务器配置db2ncrt -将数据库分区服务器添加至实例db2ndrop -从实例中删除数据库分区服务器db2osconf -内核参数值的实用程序db2pd -监视DB2 数据库并对它进行故障诊断db2pdcfg -为问题确定行为配置DB2 数据库db2perfc -复位数据库性能值db2perfi -性能计数器注册实用程序db2perfr -性能监视器注册工具db2rbind -重新绑定所有程序包db2relocatedb -重定位数据库db2rfpen -复位前滚暂挂状态db2rspgn -响应文件生成器db2sampl -创建样本数据库db2set -DB2 概要文件注册表db2setup -安装 DB2db2sql92 -符合SQL92 的 SQL 语句处理器db2sqljbind -SQLJ 概要文件绑定程序db2sqljcustomize -SQLJ 概要文件定制程序db2sqljprint -SQLJ 概要文件打印程序db2start -启动DB2db2stop -停止DB2db2support -问题分析和环境收集工具db2swtch -切换缺省DB2 副本db2sync -启动DB2 同步器db2systray -启动DB2 系统任务栏db2tapemgr -管理磁带上的日志文件db2tbst -获取表空间状态db2trc -跟踪db2uiddl -准备转换为V5 语义的唯一索引转换db2undgp -撤销执行特权db2unins -卸载DB2 数据库产品db2untag -释放容器标记db2updv9 -将数据库更新为版本9 当前级别db2xdbmig -迁移XSR 对象db2xprt -格式化陷阱文件disable_MQFunctions -禁用WebSphere MQ 函数doce_deinstall -卸载DB2 信息中心doce_install -安装DB2 信息中心enable_MQFunctions -启用WebSphere MQ 函数installFixPack -更新已安装的DB2 产品setup -安装DB2sqlj -SQLJ 转换程序DB2 数据库管理器配置参数agent_stack_sz -代理程序堆栈大小agentpri -代理程序的优先级aslheapsz -应用程序支持层堆大小audit_buf_sz -审计缓冲区大小authentication -认证类型catalog_noauth -允许进行编目,无需权限clnt_krb_plugin -客户机Kerberos 插件clnt_pw_plugin -客户机用户标识密码插件comm_bandwidth -通信带宽conn_elapse -连接耗用时间cpuspeed -CPU 速度dft_account_str -缺省对方付费帐户dft_monswitches -缺省数据库系统监视器开关dftdbpath -缺省数据库路径diaglevel -诊断错误捕获级别diagpath -诊断数据目录路径dir_cache -目录高速缓存支持discover -发现方式discover_inst -发现服务器实例fcm_num_buffers -FCM 缓冲区数目fcm_num_channels -FCM 通道数配置参数fed_noauth -绕过联合认证federated -联合数据库系统支持fenced_pool -最大受防护进程数group_plugin -组插件health_mon -运行状况监视indexrec -索引重新创建时间instance_memory -实例内存intra_parallel -启用分区内并行性java_heap_sz -最大Java 解释器堆大小jdk_path -Java 软件开发者工具箱安装路径keepfenced -保持受防护进程local_gssplugin -用于本地实例级别权限的GSS API 插件max_connections -客户机连接的最大数目max_connretries -节点连接重试次数max_coordagents -最大协调代理进程数max_querydegree -最大查询并行度max_time_diff -节点间的最大时差maxagents -最大代理进程数maxcagents -并发代理进程的最大数目maxtotfilop -最大的已打开文件总数mon_heap_sz -数据库系统监视器堆大小nname -NetBIOS 工作站名称nodetype -机器节点类型notifylevel -通知级别num_initagents -池中的代理进程的初始数目num_initfenced -受防护进程的初始数目num_poolagents -代理进程池大小numdb -包括主机和iSeries 数据库的同时活动的数据库的最大数目query_heap_sz -查询堆大小release -配置文件发行版级别resync_interval -事务再同步时间间隔rqrioblk -客户机I/O 块大小sheapthres -排序堆阈值spm_log_file_sz -同步点管理器日志文件大小spm_log_path -同步点管理器日志文件路径spm_max_resync -同步点管理器再同步代理进程限制spm_name -同步点管理器名称srvcon_auth -服务器中的入局连接的认证类型srvcon_gssplugin_list -服务器中的入局连接的GSS API 插件的列表srvcon_pw_plugin -服务器中的入局连接的用户标识密码插件srv_plugin_mode -服务器插件方式start_stop_time -启动和停止超时svcename -TCP/IP 服务名称sysadm_group -系统管理权限组名sysctrl_group -系统控制权限组名sysmaint_group -系统维护权限组名sysmon_group -系统监视权限组名tm_database -事务管理器数据库名称tp_mon_name -事务处理器监视器名称trust_allclnts -信赖所有客户机trust_clntauth -可信的客户机认证util_impact_lim -实例影响策略DB2 数据库系统配置参数alt_collate -备用整理顺序app_ctl_heap_sz -应用程序控制堆大小appgroup_mem_sz -应用程序组内存集的最大大小applheapsz -应用程序堆大小archretrydelay -发生错误时的归档重试延迟autonomic_switches -自动维护开关autorestart -启用自动重新启动avg_appls -活动应用程序的平均数目backup_pending -备份暂挂指示符blk_log_dsk_ful -日志磁盘已满时挂起catalogcache_sz -目录高速缓存大小chngpgs_thresh -已更改的页阈值codepage -数据库的代码页codeset -数据库的代码集collate_info -整理信息country/region -数据库地域代码database_consistent -数据库是一致的database_level -数据库发行版级别database_memory -数据库共享内存大小db_mem_thresh -数据库内存阈值配置参数dbheap -数据库堆dft_degree -缺省度dft_extent_sz -表空间的缺省扩展数据块大小dft_loadrec_ses -装入恢复会话的缺省数目dft_mttb_types -对于优化配置参数缺省保留的表类型dft_prefetch_sz -缺省预取大小dft_queryopt -缺省查询优化类dft_refresh_age -缺省刷新寿命dft_sqlmathwarn -出现算术异常时继续discover_db -发现数据库dlchktime -检查死锁的时间间隔dyn_query_mgmt -动态SQL 和XQuery 查询管理配置参数failarchpath -故障转移日志归档路径groupheap_ratio -应用程序组堆的内存百分比hadr_db_role -HADR 数据库角色hadr_local_host -HADR 本地主机名hadr_local_svc -HADR 本地服务名称hadr_remote_host -HADR 远程主机名hadr_remote_inst -远程服务器的HADR 实例名hadr_remote_svc -HADR 远程服务名称hadr_syncmode -处于对等状态的日志写的HADR 同步方式hadr_timeout -HADR 超时值jdk_64_path -64 位Java 软件开发者工具箱安装路径DAS locklist -锁定列表的最大存储量locktimeout -锁定超时log_retain_status -日志保留状态指示符logarchmeth1 -主日志归档方法logarchmeth2 -辅助日志归档方法logarchopt1 -主日志归档选项logarchopt2 -辅助日志归档选项logbufsz -日志缓冲区大小logfilsiz -日志文件的大小loghead -第一个活动日志文件logindexbuild -已创建的日志索引页logpath -日志文件的位置logprimary -主日志文件数logretain -启用日志保留logsecond -辅助日志文件数max_log -每个事务的最大日志maxappls -活动应用程序的最大数目maxfilop -每个应用程序打开的数据库文件的最大数目maxlocks -升级之前锁定列表的最大百分比min_dec_div_3 -十进制除法,小数位为3 mincommit -针对组的落实数mirrorlogpath -镜像日志路径multipage_alloc -已启用的多页文件分配newlogpath -更改数据库日志路径num_db_backups -数据库备份数目num_freqvalues -保留的高频值数目num_iocleaners -异步页清除程序的数目num_ioservers -I/O 服务器数num_log_span -编号日志范围num_quantiles -列的分位数的数目numarchretry -发生错误时的重试次数numsegs -SMS 容器的缺省数目overflowlogpath -溢出日志路径pagesize -数据库缺省页大小pckcachesz -程序包高速缓存大小rec_his_retentn -恢复历史记录保留期restore_pending -复原暂挂restrict_access -数据库访问权受限配置参数rollfwd_pending -前滚暂挂指示符self_tuning_mem -自调整内存配置参数seqdetect -顺序检测标志sheapthres_shr -共享排序的排序堆阈值softmax -恢复范围和软检查点时间间隔sortheap -排序堆大小stat_heap_sz -统计信息堆大小stmtheap -语句堆大小territory -数据库地域tpname -APPC 事务程序名trackmod -启用跟踪已修改的页tsm_mgmtclass -Tivoli Storage Manager 管理类tsm_nodename -Tivoli Storage Manager 节点名tsm_owner -Tivoli Storage Manager 所有者名称tsm_password -Tivoli Storage Manager 密码use_sna_auth -使用SNA 认证user_exit_status -用户出口状态指示符userexit -启用用户出口util_heap_sz -实用程序堆大小vendoropt -提供方选项DB2 管理服务器(DAS)配置参数authentication -认证类型DAScontact_host -联系人列表的位置das_codepage -DAS 代码页das_territory -DAS 地域dasadm_group -DAS 管理权限组名db2system -DB2 服务器系统的名称discover -DAS 发现方式exec_exp_task -执行到期的任务jdk_path -Java 软件开发者工具箱安装路径DASsched_enable -调度程序方式sched_userid -调度程序用户标识smtp_server -SMTP 服务器toolscat_db -工具目录数据库toolscat_inst -工具目录数据库实例toolscat_schema -工具目录数据库模式。
DB2性能指标及监控
DB2性能指标及监控DB2数据库性能优化第2课-DB2性能指标及监控DATAGURU专业数据分析社区本课目标完成本课后,你应该能够–理解OLTP系统关键性能指标是指什么–性能与哪些因素相关–如何监控SQL语句性能–了解数据库层面关键性能指标及获取方法DATAGURU专业数据分析社区OLTP系统关键指标:事务吞吐量,平均响应时间事务吞吐量:指单位时间内数据库所能完成的事务处理或查询的笔数平均响应时间:平均完成每笔事务或查询需要的时间这两项指标通常作为系统的非功能需求被提出;基准性能测试指标:TPC-C DATAGURU专业数据分析社区性能与哪些因素相关?数据库服务器硬件配置及应用部署架构––硬件配置:CPU,Memory,Storage(IOPS, Throughput),Network 数据库与应用服务器距离事务/查询本身复杂度数据量大小及数据库相关设计–––表及索引表空间数据库参数代码质量––处理逻辑 SQL语句DATAGURU专业数据分析社区如何获取TPS, Response Time性能测试工具如Load Runner,但仅在模拟性能测试时用应用层如有日志,可从中统计出来数据库层–下面命令可获取到当前时间为止, 数据库总的TPS及Response Time;如需要了解TPS及Response Time 在不同时段的变化,需要按一定时间间隔获取数据,然后计算出来db2 “SELECT current time as CURRENT_TIME, TOTAL_APP_COMMITS, TOTAL_ACT_TIME, TOTAL_APP_COMMITS/TIMESTAMPDIFF(2,CURRENT TIMESTAMP - DB_CONN_TIME) as TPS, TOTAL_ACT_TIME/TOTAL_APP_COMMITS as RESPONSE_TIME FROM TABLE (MON_GET_DATABASE(-2))“ CURRENT_TIME TOTAL_APP_COMMITS TOTAL_ACT_TIME TPS RESPONSE_TIME ------------ -------------------- -------------------- -------------------- -------------------17:46:30 276817 2168651 56 7 … 17:49:00 281127 2202164 55 7DATAGURU专业数据分析社区17:46:30 至 17:49:00之间 TPS=(281127-276817)/150 =28监控重点-SQL语句时间–SQL语句执行时间,包括各种等待时间比如锁等待、写日志等待时间空间–耗用CPU, Memory,IO资源如何评估SQL的运行时间及资源使用是合理的?–执行时间短的SQL不一定没问题如何判断SQL执行异常––建立基线设定偏离标准DATAGURU专业数据分析社区如何获取SQL的相关性能数据SQL分为静态,动态两种。
使用 db2pd 进行监视和故障诊断
使用 db2pd 进行监视和故障诊断因为 db2pd 工具可从 DB2® 内存集合迅速返回即时信息,所以该工具可用于故障诊断。
该工具不需要获得任何锁存器或使用任何引擎资源就可以收集信息。
因此,在 db2pd 收集信息时,有可能(并且预计)会检索到正在更改的信息;这样,数据可能不是十分准确。
如果遇到正在更改的内存指针,可使用信号处理程序来防止 db2pd 异常终止。
这可能会导致输出中出现诸如以下的消息:“正在更改的数据结构已强制终止命令”。
虽然如此,该工具对于故障诊断却非常有用。
在不锁存的情况下收集信息有两个好处:检索速度更快并且不会争用引擎资源。
如果要在出现特定 SQLCODE、ZRC 代码或 ECF 代码时捕获关于数据库管理系统的信息,那么可以使用 db2pdcfg -catch 命令完成此操作。
捕获到错误时,将启动 db2cos(调出脚本)。
db2cos 文件可以自动改变,以便运行解决问题所需的任何 db2pd 命令、操作系统命令或任何其他命令。
在 UNIX® 和Linux™ 上,模板文件 db2cos 位于 sqllib/bin 中。
在 Windows® 操作系统上,db2cos 位于 $DB2PATH in 目录中。
以下是使用 db2pd 快速故障诊断的一组示例。
场景 1:诊断锁定等待使用 db2pd -db <database name> -locks -transactions -applications -dynamic 命令来获取下列结果:锁定:Address TranHdl Lockname Type Mode Sts Owner Dur HldCnt Att ReleaseFlg0x07800000202E5238 3 00020002000000040000000052 Row ..X G 3 1 0 0x00000x400000000x07800000202E4668 2 00020002000000040000000052 Row ..X W* 2 1 0 0x00000x40000000对于使用 -db 数据库名称选项指定的数据库,开头的结果会显示该数据库的锁定。
DB2数据库-性能测试监控
Index_hit_rate
数据库索引命中率
Total_Locks
数据库当前锁总数
Memory_Current_size
数据库当前内存使用大小
Memory_percent_total
数据库内存使用比例
Memory_hight_watermark
数据库内存高水位
Sort_Overflows
建议:根据业务需求,修改锁超时时间。
修改锁超时时间
Update db cfgLOCKTIMEOUTusing 1 ---表示锁等待超时时间为1秒
数据库最大应用数
Db2 get db cfg |grep–iapplications返回MAXAPPLS
建议:将此指标值设置为自动增长
最大应用数修改方法
Db2update db cfgMAXAPPLSusingAUTOMATIC
执行catalog database xir_trd at node node1为监控数据库分配节点,其中xir_trd为需要监控的数据库、node1为上一步创建的节点名
Spotlight客户端配置
完成DB2客户端的安装及配置
点击file选择connect ---spotlight on db2 LUN----new connection
DB2
一.
1.
概要介绍
DB2是IBM公司研发的关系数据库产品,目前广泛应用于金融、通信、交通等行业,在IBM随需应变的战略体系中扮演着重要角色。因为川农信属于金融行业,因此也在使用DB2,其版本为v9.7,所以在这里介绍一些9.7版本的新特性。
支持索引压缩、临时表数据压缩和xml压缩,更加降低了存储空间成本。
DB2操作笔记
DB2操作笔记连接数据库connect to [数据库名] user [操作用户名] using [密码]创建缓冲池(8K)create bufferpool ibmdefault8k IMMEDIATE SIZE 5000 PAGESIZE 8 K ;(16K)(OA_DIVERTASKRECORD):create bufferpool ibmdefault16k IMMEDIATE SIZE 5000 PAGESIZE 16 K ;创建表空间CREATE TABLESPACE exoatbs IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer') EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT8K OVERHEAD 24.10 TRANSFERRATE 0.90 DROPPED TABLE RECOVERY OFF;CREATE TABLESPACE exoatbs16k IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 16K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer16k' ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT16K OVERHEAD 24.1 TRANSFERRATE 0.90 DROPPED TABLE RECOVERY OFF;CREATE TABLESPACE exoatbs32k IN DATABASE PARTITION GROUP IBMDEFAULTGROUP PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/exoa2/exoacontainer32k' ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT32K OVERHEAD 24.1 TRANSFERRATE 0.90 DROPPED TABLE RECOVERY OFF;GRANT USE OF TABLESPACE exoatbs TO PUBLIC;GRANT USE OF TABLESPACE exoatbs16k TO PUBLIC;GRANT USE OF TABLESPACE exoatbs32k TO PUBLIC;创建系统表空间CREATE TEMPORARY TABLESPACE exoasystmp IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp' ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT8K OVERHEAD 24.10 TRANSFERRATE 0.90 DROPPEDTABLE RECOVERY OFF;CREATE TEMPORARY TABLESPACE exoasystmp16k IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 16K MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp16k' ) EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT16K OVERHEAD 24.10 TRANSFERRATE 0.90 DROPPED TABLE RECOVERY OFF;CREATE TEMPORARY TABLESPACE exoasystmp32k IN DATABASE PARTITION GROUP IBMTEMPGROUP PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/exoa2/exoasystmp32k') EXTENTSIZE 32 PREFETCHSIZE 16 BUFFERPOOL IBMDEFAULT32K OVERHEAD 24.10 TRANSFERRATE 0.90 DROPPED TABLE RECOVERY OFF;启动实例(db2inst1)db2start停止实例(db2inst1)db2stop列出所有实例(db2inst1)db2ilist列出当前实例db2 get instance察看示例配置文件db2 get dbm cfg|more更新数据库管理器参数信息db2 update dbm cfg using para_name para_value创建数据库db2 create db test察看数据库配置参数信息db2 get db cfg for test|more更新数据库参数配置信息db2 update db cfg for test using para_name para_valuedb2 drop db test连接数据库db2 connect to test列出所有表空间的详细信息db2 list tablespaces show detail创建索引db2 create index idx1 on tb1(id)创建视图db2 create view view1 as select id from tb1查询视图db2 select * from view1节点编目db2 catalog tcp node node_name remote server_ip server server_port 察看端口号db2 get dbm cfg|grep SVCENAME测试节点的附接db2 attach to node_name察看本地节点db2 list node directory节点反编目db2 uncatalog node node_name数据库编目db2 catalog db db_name as db_alias at node node_name察看数据库的编目(查询数据个数)db2 list db directorydb2 connect to db_alias user user_name using user_password 数据库反编目db2 uncatalog db db_alias导出数据db2 export to myfile of ixf messages msg select * from tb1导入数据db2 import from myfile of ixf messages msg replace into tb1 导出数据库的所有表数据db2move test export生成数据库的定义db2look -d db_alias -a -e -m -l -x -f -o db2look.sql创建数据库db2 create db test1生成定义db2 -tvf db2look.sql导入数据库所有的数据db2move db_alias import重组检查db2 reorgchk重组表tb1db2 reorg table tb1更新统计信息db2 runstats on table tb1备份数据库testdb2 backup db test恢复数据库testdb2 restore db test列出容器的信息db2 list tablespace containers for tbs_id show detail创建表db2 ceate table tb1(id integer not null,name char(10))列出所有表db2 list tables建立数据库DB2_GCBCREATE DATABASE DB2_GCB ON G: ALIAS DB2_GCBUSING CODESET GBK TERRITORY CN COLLATE USING SYSTEM DFT_EXTENT_SZ 32建立别名create alias db2admin.tables for sysstat.tables;建立视图create view V_zjt_tables as select tabschema,tabname from zjt_tables建立触发器CREATE TRIGGER zjt_tables_del AFTER DELETE ON zjt_tables REFERENCING OLD AS OFOR EACH ROW MODE DB2SQL Insert into zjt_tables1 values(substr(o.tabschema,1,8),substr(o.tabname,1,10))建立唯一性索引CREATE UNIQUE INDEX I_ztables_tabname [size=3]ON zjt_tables(tabname);查看列select SUBSTR(COLNAME,1,20) as 列名,TYPENAME as 类型,LENGTH as 长度from columns where tabname='ZJT_TABLES';查看表结构db2 describe table user1.departmentdb2 describe select * from user.tables查看表的索引db2 describe indexes for table user1.department查看视图select viewname from views where viewname='V_ZJT_TABLES'查看索引select indname from indexes where indname='I_ZTABLES_TABNAME'查看存贮过程SELECT SUBSTR(PROCSCHEMA,1,15),SUBSTR(PROCNAME,1,15) FROM SYSCAT.PROCEDURES类型转换(cast)ip datatype:varcharselect cast(ip as integer)+50 from log_comm_failed察看应用联接LIST APPLICATION杀死应用联接db2 force application alldb2 force application ID1,ID2,,,Idn MODE ASYNC(db2 list application for db o_yd show detail)锁表lock table test in exclusive mode显示当前用户所有表list tables列出所有的系统表list tables for system显示用户数据库的存取权限GET AUTHORIZATIONS表或视图特权grant select,delete,insert,update on tables to usergrant all on tables to user WITH GRANT OPTION程序包特权GRANT EXECUTEON PACKAGE PACKAGE-nameTO PUBLIC模式特权GRANT CREATEIN ON SCHEMA SCHEMA-name TO USER数据库特权grant connect,createtab,dbadm on database to user索引特权grant control on index index-name to user如何查看表的结构DESCRIBLE TABLE TABLE_NAMEORDESCRIBLE SELECT*FROM SCHEMA.TABLE_NAME执行一个批处理文件db2 –tf 批处理文件名(文件中每一条命令用;结束)付权语句grant dbadm on database to user bb自动生成批处理文件select 'runstats on table DB2.' || tabname || ' with distribution and detailed indexes all;' from syscat.tables where tabschema='DB2' and type='T';db2 –tf temp.sql>;runstats.sql绑定存储过程db2 connect to o_yd user db2 using pwddb2 bind c:\dfplus.bnd备份数据库CONNECT TO EXOA;QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS;CONNECT RESET;BACKUP DATABASE EXOA TO "/home/exoa2/db2bak/" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING;CONNECT TO EXOA;UNQUIESCE DATABASE;CONNECT RESET;以下是小弟在使用db2move中的一些经验,希望对大家有所帮助。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文乔
目录Байду номын сангаас
1. 数据库监视概述 2. 实时监控(Snapshot monitor、db2pd、db2top) 3. 跟踪监控(event monitor)
01 数据库监视概述
概念和目的
数据库监视指的是与检查数据库操作状态关联的任务。
get snapshot命令语法
快照级别
查看命令
B数uff据er库Po监ol视指的是与检查数d据b2 库ge操t s作na状ps态hot关f联or的bu任ff务erp。ools on <dbname>
db2 get snapshot for locks on <dbname>
或db2 get snapshot for locks for application agentid <appl-handler>
V10.5已停用某些表函数
V10.5 中已停用一些 SQL 管理例程。下表显示了已停用的 SQL 管理例程、其替代例程或视图,以及当替代视图或例程可 用时的版本。解决方案:修改所有依赖于已停用例程的用户定义的对象。使用表中指示的替代例程或视图重新创建这些对
象。数如据果您库升监级具视有指从属的对是象的与数检据库查,数那么据U库PGR操ADE作DA状TAB态ASE关命联令会的删任除已务停。用的管理例程并将这些从属对象标记为
get monitor switches
修改
update dbm cfg using [[switchname] ON|OFF,…] 修改后通过attach to [instname]即可生效
update monitor switches using [[switchname] ON|OFF,…]
Switchname指的是上表中“监视器开关”列
MON_GET_INSTANCE 表函数 MON_GET_PKG_CACHE_STMT 表函数 MON_GET_FCM 表函数 MON_GET_FCM_CONNECTION_LIST 表函数 SNAP_WRITE_FILE 过程 MON_GET_APPL_LOCKWAIT 表函数、MON_GET_LOCKS 表函数、 MON_FORMAT_LOCK_NAME 表函数 MON_GET_APPL_LOCKWAIT 表函数、MON_GET_LOCKS 表函数和 MON_FORMAT_LOCK_NAME 表函数 SNAP_GET_TBSP_QUIESCER 表函数 SNAP_GET_TBSP_RANGE 表函数 MON_GET_ACTIVITY 表函数和 MON_CURRENT_SQL 管理视图
从以下版本开始不推荐使用 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1
V9.1
V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V9.1 V8 V8 V9.1
新例程或视图 MON_GET_AGENT 表函数和 MON_GET_CONNECTION 表函数
SNAP_GET_SUBSECTION 表函数 SNAP_GET_SWITCHES 表函数 MON_GET_TABLE 表函数 MON_GET_UTILITY 表函数和 SNAP_GET_TAB_REORG 表函数
MON_GET_TABLESPACE 表函数 MON_GET_TABLESPACE 表函数 和 MON_GET_REBALANCE_STATUS 表函数
MON_GET_CONNECTION 表函数和 MON_GET_UNIT_OF_WORK 表函数
MON_GET_CONNECTION 表函数和 MON_GET_UNIT_OF_WORK 表函数
MON_GET_BUFFERPOOL 表函数 MON_GET_CONTAINER 表函数 MON_GET_DATABASE 表函数和 MON_GET_TRANSACTION_LOG 表函数
监视器元素
监状视态数结的据果特库由定监监方视视面指器的的元 信是素息与组,检成监查,视数监器据视元库器素操元分作素为状是以态一 下关种几联数类的据:任结务构。,用于存储数据库系统
计数器(Counter) 计数器跟踪发生某情况的次数。例如,deadlocks(死锁个数)
监视器元素记录已发生的死锁总数。计数器数值的增长贯穿 监视器的生命周期,许多情况下,有可能会重置计数器。
02 实时监控
Snapshot快照监控
Sn数ap据s库ho监t快视照指是最的常是用与的检性查能监数控据工库具操:作状态关联的任务。
a.快照返回的信息是针对某个时刻的累计信息 b.DBA可以通过CLP、GUI、API等方式获取快照信息 c.需要SYSADM、SYSCTRL、SYSMAINT或SYSMON权限 d.收集系统监控数据需要额外的处理开销。例如为了计算SQL的执行时间,必须 调用操作系统,获取SQL语句执行之前和之后的时间戳 e.所消耗的内存量大大增加。数据库使用内存来存储为系统监控器所追踪的各监 控元素收集的数据 f.监控的对象通过开关控制
结果数是对据数库据库监性视能的指影的响比是sn与ap检sho查t m数on据ito库r减操少6作4%状。 态关联的任务。
新的监控 SQL 表函数的缺点是没有每会话重置功能,现有的系统监控快照 SQL 接口也有这个缺点。它们报告的监控数据 总是相对于激活数据库时。也就是说,在每个数据库分区上激活数据库时,从 0 开始计数,然后一直增加,直到无效为止。
SNAPSHOT_LOCKWAIT 表函数
SNAPSHOT_QUIESCERS 表函数 SNAPSHOT_RANGES 表函数 SNAPSHOT_STATEMENT 表函数 SNAPSHOT_SUBSECT 表函数 SNAPSHOT_SWITCHES 表函数 SNAPSHOT_TABLE 表函数 SNAPSHOT_TBREORG 表函数 SNAPSHOT_TBS 表函数 SNAPSHOT_TBS_CFG 表函数 SNAPSHOT_UTIL 表函数 SNAPSHOT_UTIL_PROG 表函数 SQLCACHE_SNAPSHOT 表函数
db2 get snapshot for database on <dbname> db2 get snapshot for dbm
快照监控表函数
DB2 9.7 引入了许多新的监控 SQL 表函数,它们以前缀 MON_ 开头。表函数的性能数据多存在于Application Heap中 , 而Snapshot Monitor数据存于monitor heap中。使用表函数可以减少对Database Global Memory的影响,实验测试
Table Actitity
Applications
Tablespace Database Database Manager
db2 get snapshot for tables on <dbname> db2 get snapshot for applications on <dbname>
或db2 get snapshot for application db2 get snapshot for tablespaces on <dbname>
计量值(Guage)监控元素的当前值。标尺反映的是当前系统的活动情况。 高水位值(Water Mark)监视开始以后曾经达到的最大值或最小值。 信息要素(Text)提供所有监视活动执行的细节信息。 时间戳(TimeStamp)表明活动或事件发生的日期和时间。
监控工具
1、D数B据2自库带监的视性指能的监是控与传检统查工数具据、库命操令作:状态关联的任务。
数据库监视指的是与检查数据库操作状态关联的任务。
数据库监视的目的如下: a.检查数据库是否正常稳定的运行 b.调优数据库或应用程序的性能 c.调整实例和数据库参数 d.更好的理解应用程序的负载和用户活动 e.进行问题诊断和分析
什么时候收集监视数据 数据库监视指的是与检查数据库操作状态关联的任务。
监视器收集数据库系统内不同级别的信息: a.实例级别:数据库实例级别的统计信息从实例启动开始收集,直到实例停止 b.数据库级别:数据库级别的统计信息从第一个应用程序连接数据库开始收集,直到最后一个应 用程序终止 c.应用程序级别:应用程序级别的统计信息从程序连接数据库开始收集,直到断开数据库连接
快照监视器的开关参数
组别
所提供的信息
监视器开关
DBM参数
缓冲数池据的缓库数冲监量池视,活以指动及的的各数是次量与读(检/读写查取操数和作写所据入用库操时操作间作)状态BU关FF联ER的POO任L 务。 DFT_MON_BUFFERPOOL
锁定
保持锁定数目,死锁数目
LOCK
DFT_MON_LOCK
排序
监控分类 类比
说明
常用工具或命令
实时监控
Snapshot monitor、function table、 照相机 记录数据库某一时刻的快照信息 administrative routines and view、
db2pd、db2top、db2mtrk等
跟踪监控 摄像机 提供了更详细的数据库活动
事件监视器
所执行的排序操作数量、使用的堆数 量、遇到的溢出数、排序性能
SORT
DFT_MON_SORT
SQL语句 开始时间、结束时间、语句标识
STATEMENT
DFT_MON_STMT
表
测量活动(读行、写行)
TABLE
DFT_MON_TABLE
时间戳
时间和时间戳信息
TIMESTAMP
DFT_MON_TIMESTAMP
工作单元 开始时间、结束时间及完成状态
UOW
DFT_MON_UOW