db2培训资料
DB2培训
数据操作语言(DML)
SELECT 语句用于检索表或视图数据。要限制结果集中 的行数,请使用 FETCH FIRST 子句。使用 DISTINCT 子句来消除结果集中重复的行。
使用 DECLARE 语句生成新的数据库对象 DECLARE 语句与 CREATE 语句是类似的,只有一点例
外,用它所创建的是只能在数据库连接期间存在的临 时表。 当您要用到中间结果时,临时表挺有用的。
当您声明临时表时,不会更新LOBAL TEMPORARY TABLE
SMS 表空间需要的维护很少。然而,SMS 表空间提供 的优化选项较少,并且性能也许不及 DMS 表空间。
结构化查询语言(SQL)
大多数 SQL 语句包含一个或多个下列语言元素:
– 字符:单字节字符可以是一个字母)、一个数字或一个特殊
字符
– 标记:标记是一个或多个字符的序列。标记不能包含空格,
除非它是定界标识符或字符串常量。
1. 在 DYNAMIC RESULT SETS 子句中声明 SQL 过 程要返回的结果集的数量。
2. 对于将要返回的每个结果集,在过程主体中(使用 WITH RETURN FOR 子句)声明一个游标
(cursor)。游标是一个命名的控制结构,应用程
序用它来指向一个有序行集合中的某一特定行。游 标用于从集合中检索行。
CLIENT USERID
CURRENT QUERY PTIMIZATION
CLIENT WRKSTNNAME
CURRENT DATE
CURRENT REFRESH AGE CURRENT SCHEMA
DB2培训文档
© 2006 IBM公司
IBM 软件部 | DB2 信息管理软件
定位删除:
语法:delete from [table name|view name] where current of <cursor-name>
create procedure cleanup_act ( in p_date date , out p_deleted int ) language sql specific cleanup_act -- applies to luw and iseries ca: begin declare v_date date; declare sqlstate char(5); declare c_emp cursor for -- (1) select emendate from emp_act for update; open c_emp; fetch from c_emp into v_date; set p_deleted = 0; while ( sqlstate = '00000' ) do if ( v_date < p_date ) then delete from emp_act where current of c_emp; -- (2) set p_deleted = p_deleted + 1; end if; fetch from c_emp into v_date; end while; close c_emp; end ca
DB2培训文档.pptx
© 2006 IBM公司
IBM 软件部 | DB2 信息管理软件
调用者过程find_emp通过 get diagnostics取得被调用 者的返回值,get diagnostics 必须是紧跟在call语句之后
TIP:通过返回值判断 执行状态回结果集
存储过程中的结果集可以返回给别的存储过程,也可以返回 到客户端的应用程序。
定义游标的语法如下: declare <cursor-name> cursor [with hold] with return to caller [client] for <select statement> [stmt name]
IF ( v_total >= v_min ) THEN
SET p_bonus = 'Y'; ELSE
SET p_bonus = 'N'; END IF; END bn
© 2006 IBM公司
IBM 软件部 | DB2 信息管理软件
✓传递参数
在存储过程嵌套调用过程中,参数依照出现的次序进行传递,如果数据类型不匹 配,请使用cast函数进行数据类型转换;
ELSEIF ( v_rc = 1000 ) THEN
SET p_output = 'The employee does not exist!';
ELSE
SET p_output = 'Something else went wrong.';
END IF;
END fe
--(1) --(2)
© 2006 IBM公司
© 2006 IBM公司
db2培训资料
第一章DB2 UDB 概况1.1、DB2 UDB 的产品家族UDB(Universal Database )的前身为 DB2 ,是 IBM 公司开发的关系型数据库管理系统。
从其诞生之日开始,DB2 就定位于要为各种规模的企业提供稳定、高效的数据管理支持。
可以说,DB2 是当前适用范围最广泛的数据库产品。
我们对 DB2 产品的划分通常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方法是按其所能支持的用户规模的不同进行划分。
DB2 产品几乎覆盖了当前所有流行的硬件和操作系统平台。
在大型机操作系统上,有 DB2 for OS/390 、 DB2 for MVS/ESA 、DB2 for VSE 和 DB2 for VM 等多种产品;在由 IBM 公司设计的小型机 AS/400 上, DB2 已经嵌入在操作系统 OS/400 之中,成为其不可分割的一部分。
DB2 对 UNIX 操作系统的支持同样十分广泛,可以在 AIX 、 HP-UX 、 Solaris、 SCO-UNIX 、SINIX 等多种系统上找到其相应的版本。
另外,在 PC 操作系统上,DB2可以对 Window 9x、Windows NT以及OS/2等多种操作系统提供支持。
UDB 6.1 还增加了对 Linux 操作系统的支持。
以上我们所提到的只是 DB2 服务器所能运行的平台,DB2 的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2 的客户端还能运行在 Dos、 Windows 3.x、 Mac OS 以及 SGI 公司的 IRIS 系统之上。
UDB 产品除了能够对各种硬件和操作系统平台进行支持之外,为了适应不同用户群的需要,UDB 提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供支持。
以下是对 UDB 6.1 版本不同级别产品的特点介绍:UDB 卫星版:是专门为移动用户设计的小型数据库产品。
DB2数据迁移培训教材PPT(31张)
数据导出导入
(2)数据Import导入: Replace_Create 执行: db2 import from c:\test1.ixf of ixf replace_create into test2
• 执行结果: 表Test2原有数 据被删除,插入表 Test1数据。
数据导出导入
数据导出导入 表不存在,执行Create。
db2move 工具
• Export,Import和 Load每次都只对一个表 进行操作。但是您若使用它们来写一段脚 本,就可对一个数据库中的所有的表进行 操作。 db2move可以更方便地完成同样的 工作。
• db2move工具只兼容IXF格式的文件。 • db2move不可以通过控制中心来调用。
导入(LOAD)工具
• Load不能创建表及索引,故不能使用Create方式 。
• 主要方式:
导入(LOAD)工具
例: C:\>db2 connect to sample C:\>db2 Load from test.del of del REPLACE into test1
例: C:\>db2 Create table test2 like act C:\>db2 Load from C:\test.del of del INSERT into test2
(3)数据Import导入: Replace_Create 执行 db2 import from c:\test1.ixf of ixf replace_create into test3
Import工具建立了表Test3,并插入导入 数据。
Replace_Create: 表存在,执行Replace;
DB2基础培训ppt课件
.
缓冲池一览
默认
Table spaces
SYSCATSPACE TEMPSPACE1 USERSPACE1 MYREGSPACE MYTEMPSPACE MYLONGSPACE
Buffer pools
IBMDEFAULTBP
MYBUFF1 MYBUFF2 MYBUFF3
数据库设计
表 索引
.
表空间(Tablespace)-存储所有数据对象地方
.
容器(Containers)
容器: 物理存储设备,有三种类型:
目录(SMS) 文件(DMS) 裸设备(DMS)
目录
文件
.
裸设备
表空间与容器关系
数据库
表空间 1 表1 表2
索引(Index) 表空间2
数据(Data) 表空间3
Extende d
Storage
EXTENDED STORAGE
Global Database Memory
Bufferpools可通过控制中心管理
.
如何分配Bufferpools大小
单个 bufferpool 大多数情况下使用一个大的缓冲池较好
需要建立多个bufferpool的原因 同一数据库内有多个不同页小的表空间 OLTP系统中有些表访问频率很高 经常对一些大表进行全表扫描
1
"n" PRIMARY
2
3
1
"n"
SECONDARY
.
归档日志(Archival Logging/Log Retain)
LOGRETAIN参数设为ON 日志文件不会删除. 通过设USEREXIT参数将日志文件备份到二级磁带等二级存储 上 支持前滚恢复及在线备份
DB2数据库管理培训教程
11
db2pd常用方法
用途一 抓取锁信息,进行分析 db2pd –d dbname –app –tran –agent –dyn –locks wait>db2pd.out 分析db2pd.out
第一步 --sts列 W表示等待 G代表被授权获得锁
12
第二步 由第一步输出中的TranHdl对应到应用的AppHandl。 得到TranHdl 2和6 分别对应到应用的AppHandl 30和34
第三步获得应用程序的更多信息
C-AnchID/C-StmtUID 和L-AnchID/L-StmtUID 上。“C” 代表当前 (current),“L” 代表最近(last)的语句 UID
13
第四步检查动态语句缓存的内容
经分析得出锁等待的语句为 UPDATE EMPLOYEE SET SALARY = SALARY * 0.02 拥有锁的APP的语句为 UPDATE EMPLOYEE SET BONUS = SALARY * 0.1 WHERE JOB = 'MANAGER'
29
崩溃恢复
从数据库日志控制文件中获取不一致起点信息,并根据日志内容对所有在 不一致起点后成功提交事务进行再应用,而对其他未完成的事务进行回滚,从 而把数据库带回可用、一致状态。
1.自动 - 数据库参数AUTORESTART=ON(缺省) 2.手动 - 数据库参数AUTORESTART=OFF。使用db2 restart database
2. 当前APP锁等待的APP
显示当前APP正在哪个APP执行,信息包括被等待的APP的所名称及级 别,持有锁的AGENT ID,根据AGENT ID可以得到被等待锁的APP所 对应的SQL,考虑进行SQL优化或表优化等相关操作
DB2培训讲义_DB2性能优化入门
DML性能问题:查询优化
同时还要考虑到 RUNSTATS/REORG 因素。 RUNSTATS 命令可以更 新表中的统计信息。当表中的数据经过频繁的增删改后其相应的统计 信息会发生变化,而优化器选择执行计划的时候是根据这种统计信息 来计算的,所以运行 RUNSTATS 此时显得尤为重要。 REORG 可以 整理数据存储的物理结构,也能减少数据扫描的时间,提高查询的性 能。 从存储方面应当注意的是选取裸设备的 DMS 要比 SMS 性能要好,因 为它少了一层文件系统的缓冲而直接访问缓冲池。
学会使用 optimize for n rows 子句,它可以提高前面 n 条记录的显示 速度。这样可以使用户能够先快速查看这 n 条记录,然后再看其他纪 录。减少了用户的等待时间。
DML性能问题:查询优化
针对复杂查询时可以将数据库配置参数 DFT_QUERYOPT( 缺省查询 优化类 ) 的值设得高一些(7 或 9),针对简单查询可以将它设得低一 些 (3 或 5),因为设置越高优化器所作的分析就越深入,耗费在生成计 划上的时间就越多。 针对 C/S 结构的查询可以将查询语句写在服务器端生成存储过程来减 少数据的网络传输以及客户端的压力。而经过编译的存储过程执行得 更加高效。
DB2培训讲义
性能优化入门
有关的概念
DB2 性能优化的三个方面
内存 CPU I/O
内存因素
在内存方面,主要是考虑缓冲池 (BUFFERPOOL) 的使用。缓冲池是 一片用来缓冲从磁盘上读取的数据和索引的内存区域,这些数据和索 引信息在缓冲池中进行运算后最终还要写回磁盘。缓冲池的页面大小 有四种 (4K,8K,16K,32K),分别对应四种不同页面大小的表空间。缓冲 池的大小决定了能够从磁盘上缓冲数据的容量大小。当然缓冲池也不 是越大越好,缓冲池过大可能会导致连接数据库的时间过长,因为在 连接数据库时要为数据库的缓冲池分配内存空间。可以通过计算缓冲 池的命中率来评估缓冲池的使用效率:缓冲池命中率 =(1-(( 数据物理 读 + 索引物理读 )/( 数据逻辑读 + 索引逻辑读 ))) *100%,缓冲池命中 率越大说明缓冲池的使用效率高。缓冲池命中率太小说明缓冲池太小 应当调大。其中的数据物理读,索引物理读以及数据逻辑读和索引逻 辑读都可以从缓冲池的快照中获取。
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数据库培训教材
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
DB2 安装
选择“下一步”。
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
DB2 安装
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
恢复数据库到本地
从开始菜单上选择“开始->IBM DB2->命令行工具->命令窗 口”,并切换到E:\crmdb目录下。 执行“db2 -tf crmcs_rr2.sql”。
北京宇信鸿泰软件技术有限公司
DB2 概述
DB2是IBM公司的一个关系型数据库产品。 DB2可以运行在AS400、S390、UNIX、Windows等平台上。 DB2的手册、参考等文档可以从IBM的官方网站下载。 在建行OCRM项目中,因为该项目所使用工作流软件S1的原 因,数据库产品选择了DB2。
北京宇信鸿泰软件技术有限公司
DB2 安装
接受默认值。选择“下一步”。
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
DB2 安装
接受默认值。选择“下一步”。
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
DB2 安装
DB2数据库培训教材(常用命令)
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
常用命令( DB2 常用命令(三)
13.创建视图: 13.创建视图: 创建视图 db2 create view viewname as select id from tbname 14.查询视图 查询视图: 14.查询视图: db2 select * from viewname 15. 查看视图 db2 select viewname from views where viewname=‘tbname'; viewname= tbname'; 16.节点编目 16.节点编目 db2 catalog tcp node node_name remote server_ip server server_port 17.节点反编目 17.节点反编目 db2 uncatalog node node_name
DB2 数据库培训(修订版)
中国建设银行北京开发中心 2008年1月
北京宇信鸿泰软件技术有限公司
目录
一、DB2概述 DB2概述 二、DB2常用命令 DB2常用命令 三、参考资料
Copyright © 2006 Sihitech Co. - All Rights Reserved
北京宇信鸿泰软件技术有限公司
Copyright © 2006 Sihitech Co. -源自All Rights Reserved
北京宇信鸿泰软件技术有限公司
常用命令( DB2 常用命令(六)
28. 建立别名 create alias db2admin.tables for sysstat.tables; create alias db2admin.views for syscat.views create alias db2admin.columns for syscat.columns; create alias guest.columns for syscat.columns; 29. 建立表 create table zjt_tables as (select * from tables) definition only; create table zjt_views as (select * from views) definition only;
db2入门材料
烟草产品事业部培训中心
NT下的安装过程 下的安装过程
1、以管理员组的身份登陆 、 2、插入 下的安装盘, 、插入DB2 NT下的安装盘,执行 下的安装盘 执行SETUP
烟草产品事业部培训中心
3、点击安装: 、点击安装:
烟草产品事业部培训中心
4、点击下一步,如下图 、点击下一步,
烟草产品事业部培训中心
烟草产品事业部培训中心
16. 按 Tab 键更改突出显示的选项,按 Enter 键选择或取 消选择选项。 (1) 在服务器上安装,一般选择安装以下三个产品: 注意:要显示想要安装的 DB2 产品的部件,选择定制。 要在任何时候返回至先前窗口,选择取消。 Ø DB2 Administration Client 选择定制安装这个产品, Ø DB2 UDB enterprise edition 选择定制安装这个产品, Ø DB2 Software Developer Kit 如果同时做开发,需要定制安装此产品。 (2) 在“DB2产品信息”和“DB2产品库”只选择中国 语言ZH_CN支持。
5、下一步,如下图 、下一步,
烟草产品事业部培训中心
6、下一步,如下图 、下一步,
烟草产品事业部培训中心
7、点击下一步,开始复制文件 、点击下一步, 8、复制文件结束,完成安装 、复制文件结束, 注: 1、如果以前安装过 、如果以前安装过db2,安装新组件,最好 ,安装新组件, 停止db2服务在安装,安装路径也不能改变。 服务在安装, 停止 服务在安装 安装路径也不能改变。 2、如果以前安装过 、如果以前安装过db2,卸载了,但是 ,卸载了, db2admin的用户仍然存在,第二次安装指定 的用户仍然存在, 的用户仍然存在 用户时再用db2admin将提示无权限更改密码 用户时再用 将提示无权限更改密码 的错误,可以在操作系统下去掉db2admin用 的错误,可以在操作系统下去掉 用 户再安装或者换其他的用户。 户再安装或者换其他的用户。
DB2开发培训
整理ppt
8
➢ 流程控制介绍
CASE statement IF statement LOOP statement WHILE statement GOTO statement ITERATE statement FOR statement
(详见备注)
二、数据库开发
整理ppt
9
二、数据库开发
➢ 游标介绍
2)用户自定义的存储过程通过CREATE PROCEDURE语句被注册到DB2数据 库的SYSCAT.ROUTINES表
整理ppt
6
二、数据库开发
➢ 存储过程实例
CREATE PROCEDURE ODS.PROC1 ( IN v_p1 INT, INOUT v_p2 INT, OUT v_p3 INT)
P1: BEGIN SET v_p2 = v_p2 + v_p1; SET v_p3 = v_p1;
END P1 输入输出参数说明:
in:输入参数 out:表示输出参数,即显示结果 in out:就是输入输出参数,运行前输入,运行后输出
整理ppt
7
二、数据库开发
➢ 存储过程变量
DECLARE var_name <data type> [ DEFAULT value]; SET <var_name> = <new_value>;
定义方式二: DECLARE GLOBAL TEMPORARY TABLE session.emp AS
( SELECT * FROM staff WHERE <condition> ) DEFINITION ONLY WITH REPLACE;
整理ppt
DB2数据库管理培训教程
DB2数据库管理培训教程前言:数据库在现代信息系统中起着至关重要的作用,它是用于存储、管理和访问数据的基础设施。
DB2是IBM公司开发的一种关系型数据库管理系统,具有强大的功能和可靠性,被广泛应用于企业级应用程序中。
本篇文章将介绍DB2数据库管理的基础知识和技巧,帮助读者快速上手DB2数据库的管理工作。
1.DB2数据库管理概述(200字)DB2是一种关系型数据库管理系统,用于存储和管理结构化数据。
它具有高性能、高可靠性和可扩展性的特点,被广泛应用于企业级的应用程序中。
DB2数据库管理包括创建数据库、创建表和索引、备份和恢复数据库、性能调优等一系列任务。
2.DB2数据库的安装和配置(300字)在进行DB2数据库管理之前,首先需要安装和配置DB2数据库。
安装过程包括选择安装目录、指定数据库管理员账号和密码等。
配置过程包括设置数据库实例命名、配置网络连接、分配内存和磁盘空间等。
安装和配置DB2数据库需要遵循相关的安装手册和最佳实践指南。
3.数据库和表的创建(300字)在DB2数据库中,创建数据库是管理的第一步。
可以使用DB2命令行工具或者DB2 Control Center来创建数据库。
创建数据库时需要指定数据库名称、数据存储路径、日志存储路径等。
创建数据库后,还需要创建表和索引。
创建表时需要定义表的结构、字段和约束,创建索引用于提高查询性能。
4.数据库的备份和恢复(300字)数据库备份是保障数据安全的关键措施之一、DB2提供了多种备份方法,包括在线备份、离线备份和增量备份等。
备份数据库可以使用DB2命令行工具或者DB2 Control Center。
数据库恢复可以通过还原备份文件实现,DB2还提供了恢复到特定时间点的功能。
5.DB2数据库的性能调优(300字)性能调优是DB2数据库管理的重要任务之一、调优主要包括监控数据库性能、优化查询语句和优化数据库配置等。
可以使用DB2提供的性能监控工具进行性能监控,通过分析监控结果来发现性能瓶颈并采取相应的优化措施。
DB2入门培训讲义(ppt 48页)
– 命令窗口、命令行处理器 信息中心 开发中心 健康中心
DB2 UDB中一些基本概念
实例 Instance
数据库 Database
容器 Container
表空间 Tablespace
扩展区 Extend
表
Table
页
Page
DB2安装、使用
Windows 下的安装、使用
仅安装客户端 DB2 Connect 安装服务器端 DB2 PE Server + DB2 Connect
RS/6000下的安装、使用
如RS/6000上已安装DB2,则只要在登录用户的profile中引用db2inst1的 profile或手工添加相应环境变量,即可使用DB2,前提是DBA已授权此用户 足够权限。
DB2 UDB的Create Table语句
SQL Server 的Create Table
CREATE TABLE [
database_name.[owner]. | owner. ] table_name ( { <column_definition>
| column_name AS computed_column_expression | <table_constraint> } [,...n] ) [ON {filegroup | DEFAULT} ] [TEXTIMAGE_ON {filegroup | DEFAULT} ]
模式名用作两部分对象名的第一部分。创建一个对象时,可将其分配给 特定模式。若不指定模式,则它被分配给缺省模式,缺省模式通常是创 建该对象的人员的用户 ID。名称的第二部分是对象名。例如,名为 Smith 的用户可以 有一个名为 SMITH.PAYROLL 的表。
DB2基础培训ppt课件
.
创建DMS示例
WINDOWS:
CREATE TABLESPACE sms MANAGED BY DATABASE USING (FILE 'C:\DMS\DATA.1' 1000,DEVICE ‘\\.\F:' 3000) EXTENTSIZE 16 PREFETCHSIZE 32
定义容器
表示创建数据库管理表空间
管理方便程度
性能
Yes
操作系统
SMS
需要时动态增长
管理方便 .很少需要人工管理 . 容器大小可随文件系统增大
很好
DMS
Yes
DB2
预分配
较好 . 需要人工指定一些参数(e.g.. EXTENTSIZE PREFETCHSIZE) . 可通过增加容器建立大容量的表空间
最优 . 采用裸设备容器性能可提升5-10% .单表中的索引,数据,大对象可跨表 空间存放
14
ONLINE ARCHIVE Contains information for committed and externalized transactions. Stored in the ACTIVE
log subdirect.ory.
15
16
UDB数据存取方法
SQL语言和UDB内置的API
.
数据库管理表空间(DMS)特性
在创建时分配空间 容器可增加(数据分配自动重新平衡) 容器大小可修改 数据分配自动重新平衡 空间大小只限于物理存储特性 文件容器使用文件系统的IO 裸设备使用直接操作硬件,不通过文件系统 很高的性能 (特别对于 OLTP系统) 数据分配灵活
.
SMS与DMS对比
RAD Striping 对象管理 空间分配
《DB2参考资料》第01章 DB2入门
§1.5 DB2管理服务器(DAS)
monitor :监听、监视、监控
§1.6 DB2工具
§1.6 DB2工具
第一步
创建和使用样本数据库
命令中心
执行DB2命令,编写脚本
命令行处理器
命令窗口
控制中心
集中管理数据库及数据库对象
任务中心
日志中心
配置助手
连接远程DB2服务器
健康中心
数据库监视
第一步 “第一步”为用户介绍了可以使用DB2数据库系统来执 行的一些主要数据库功能。
个人版(DB2 Personal Edition) · 个人单机使用,提供功能完整的数据库 · 提供了数据库存储设施并能够连接到远程DB2服务器,但不能响
应 远程请求
EveryPlace · 专为移动办公用户设计的微型数据库系统 · 用于PDA,HPC和嵌入式设备
1.3 DB2的安装
启动安装过程后,进入安装产品界面。单击界面左边的【安装产品】 选项后,再单击界面右边的【安装新产品】按钮,启动安装向导界面。
§1.6 GUI和CLP - 控制中心
·Add / Delete DB2 System ·Configure Instance and Database ·Manage Database Objects ·Manage Database Data ·Perform Database Backup and Restore ·Manage Database Connection ·Manage Database Replication ·……
命D命b令2令=行>处行! C理o器m处m(anC理domm器and(LineCProoc执mess行mor系a,统nCL命dP)令L允i许n用e户输P入r和o执c行eSsQsL命o令r、,XQCueLry命P令)、D允B2命许令和用操作户系统命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章DB2 UDB 概况1.1、DB2 UDB的产品家族UDB(Universal Database )的前身为DB2,是IBM公司开发的关系型数据库管理系统。
从其诞生之日开始,DB2就定位于要为各种规模的企业提供稳定、高效的数据管理支持。
可以说,DB2是当前适用范围最广泛的数据库产品。
我们对DB2产品的划分通常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方法是按其所能支持的用户规模的不同进行划分。
DB2产品几乎覆盖了当前所有流行的硬件和操作系统平台。
在大型机操作系统上,有DB2 for OS/390、DB2 for MVS/ESA、DB2 for VSE 和DB2 for VM等多种产品;在由IBM公司设计的小型机AS/400上,DB2已经嵌入在操作系统OS/400之中,成为其不可分割的一部分。
DB2对UNIX操作系统的支持同样十分广泛,可以在AIX、HP-UX、Solaris、SCO-UNIX、SINIX 等多种系统上找到其相应的版本。
另外,在PC操作系统上,DB2可以对Window 9x、Windows NT以及OS/2等多种操作系统提供支持。
UDB 6.1还增加了对Linux操作系统的支持。
以上我们所提到的只是DB2服务器所能运行的平台,DB2的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2的客户端还能运行在Dos、Windows 3.x、Mac OS以及SGI公司的IRIS系统之上。
UDB产品除了能够对各种硬件和操作系统平台进行支持之外,为了适应不同用户群的需要,UDB提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供支持。
以下是对UDB 6.1版本不同级别产品的特点介绍:UDB卫星版:是专门为移动用户设计的小型数据库产品。
适合于偶尔连接DB2控制服务器来与公司系统交换数据的单用户系统。
它既能允许用户对本地数据进行各种修改,又可以接受远程卫星控制器的集中管理,减轻本地用户的管理负担。
该版本只能运行在Windows平台。
(该版本属于UDB 6.1版本新增版本)UDB个人版:是专门为个人用户设计的功能完备的个人数据库产品,允许用户在本地建立数据库、更改数据、开发应用程序从本地对数据库管理系统进行存取以及通过内置的客户端对远程数据库服务器进行管理。
该版本的限制在于不能对远程应用程序提供全面支持。
该版本可以运行在Windows、OS/2以及Linux平台。
UDB工作组版:适用于小型局域网的数据管理需求。
具有UDB个人版的全部功能,并能够对远程应用程序提供全面支持。
该版本可以运行在Windows、OS/2以及Linux平台。
(UDB工作组版5.0可以运行在UNIX平台)UDB企业版:简称为UDB EE,适用于企业级的数据管理需求。
具有UDB工作组版的全部功能,并能够利用对称多处理(SMP)技术提高系统性能。
在它的程序包中,包含了DB2 Connect企业版,允许Intel平台和UNIX平台的客户端应用程序访问大型机和AS/400上的数据库服务。
UDB企业版可以运行在Windows、OS/2、Linux以及UNIX平台。
UDB企业扩展版:简称为UDB EEE,适用于大规模的企业应用。
大规模的企业应用的基本要求是稳定(宕机时间短)和高效(处理速度快),UDB企业扩展版能够利用群集(cluster)和大规模并行处理(MPP)技术提高系统的稳定性和性能。
UDB丰富的产品线给用户提供了极大的选择余地。
是构造企业信息系统的基石。
1.2、对DB的存取方法对DB的存取可以通过SQL语言和UDB内置的API两种手段来实现。
不过这两种手段不是能够相互替代的。
SQL语言是国际标准,各数据库厂商在实现时一般会有一定程度的扩展。
SQL语言主要是完成对数据的查询和更改、数据库对象的建立及权限的控制等功能。
而API主要是针对数据库的管理任务,比如数据的备份和恢复、数据库服务的启动和停止等工作。
在一个应用程序中,可能既需要用到SQL语言来完成对数据的存取,同时又需要调用API来完成管理工作。
1.3、从WEB上存取UDBInternet的广泛使用带来了从WEB对企业数据进行存取的要求。
如果开发人员要开发基于Web的UDB应用程序,可以使用以下方法:1.3.1、通过JDBC来存取UDBJDBC是SUN公司提供的利用JA V A语言对关系型数据库进行存取的标准。
在WEB上我们可以通过编写JA V A Applet或者JA V A Servlet来实现对UDB的存取。
其中Applet运行在客户端,只需要一个支持JA V A的浏览器(如IE和Netscape等)即可运行,客户端不需要安装其它软件。
Applet可以通过指定端口与服务器端的JDBC服务器进行通信,提供对数据的存取。
Servlet是适应当今瘦客户机发展方向的一种编程模式,具有效率高,可移植性好等特点。
Servlet运行在WEB服务器端,需要Servlet引擎(如Websphere Application Server)的支持,服务器端通常还需要安装Run-time Client组件。
1.3.2、通过Net.Data来存取UDBNet.Data是IBM公司开发的通过WEB对关系型数据库进行存取的工具。
它提供了一种宏语言的开发和执行环境,同时具有HTML的简易性和SQL语言的功能。
开发人员可以按照Net.Data的语法编写Net.Data宏,WEB用户可以通过HTML页面上的链接来调用相应的Net.Data宏,Net.Data解释器会对其进行分析,可以提取Net.Data宏中的SQL成分,提交给数据库,然后按照Net.Data宏中规定的格式将数据库管理器传回的结果格式化成HTML 页面,传递给浏览器。
1.3.3、其它方法除了以上提到的方法之外,还有很多其他的解决方案。
如Active Server Page、PHP等,具体的选择要看实际的需要。
1.4、实例的概念和管理1.4.1、实例的概念:数据库管理器(Database Manager)是提供数据库管理控制功能的程序。
实例(Instance)就是逻辑的数据库管理器,是真正的数据库管理器在内存中的映象。
实例提供了一个可标识的数据库服务器的环境。
在安装了UDB的工作站上可以同时创建和运行多个实例,每个实例都有自己的内存空间,并具有单独的权限控制。
一般来说,在一台机器上运行多个实例基于以下几种考虑:●对数据库环境进行调试和开发的需要如果直接在提供正式数据服务的实例内部对进行各种调试和开发,有可能会影响系统的性能,甚至会使整个系统崩溃。
这时用户可以创建一个新的实例,在新的实例内进行调试和开发,因为各个实例都有自己的内存空间,一个实例中的工作不会干扰其他实例正常的数据库服务。
●出于对安全性的考虑。
因为每个实例有单独的权限控制,我们可以为不同的实例设定不同的管理人员,加强安全性的控制。
比如你可以把你的个人信息存放在由你控制的实例中,其他的实例拥有者无权查看。
●出于优化的考虑不同的数据库可能会需要不同的数据库管理器的配置参数来达到最优的性能,如果把它们放到同一个实例中,不能满足需要。
当然,系统中的实例不是越多越好,如果在系统中创建的实例过多,不仅会造成额外的资源消耗(内存、硬盘空间等),也会增大管理开销。
每个实例在创建后都会有自己的配置文件,文件内的参数会影响该实例的性能。
数据库在建立时还会自动地产生一组系统编目表,系统编目表实际上就是DB2数据库的数据字典,它详尽地描述了数据的物理结构和逻辑结构。
在系统编目表中保存着各种数据库对象的定义、用于查询优化的统计信息以及系统授权信息。
是一个数据库中极其重要的组成部分。
1.4.2、实例的管理:要创建一个实例,可以使用db2icrt命令,命令语法如下:db2icrt [-a AuthType][-p PortName][-s InstType]-u FencedID InstName其中:-a AuthType是实例的认证类型(可以为SERVER、CLIENT、DCS、DCE、SERVER_ENCRYPT、DCS_ENCRYPT 或DCE_SERVER_ENCRYPT中的一种)。
-p PortName 是此实例要使用的端口名或端口号。
-s InstType 是要创建的实例的类型(eee、ee 或client)。
-u FencedID 是用户名,被隔离UDF 和被隔离的存储过程将在该用户名之下运行。
InstName 是实例的名称。
要列出当前系统上创建的所有实例,可以使用db2ilist命令。
要删除某个实例,可以使用db2idrop命令。
1.4.3、实例级的操作在DB2中,某些任务只能在实例级别上执行。
比如,创建数据库,更新数据库管理器配置参数等工作。
这时候,就需要应用程序连接到特定的实例之上,然后才能进行操作。
要连接到一个实例上,用户可以使用ATTACH命令,语法为:attach to [实例名] user [用户名]using [用户口令]如果用户在执行实例级别的任务时,没有使用ATTACH命令,则系统将使用在DB2INSTANCE环境变量中指定的缺省实例来试图完成该任务。
1.4.4、数据库管理服务器(DAS):UDB的数据库管理服务器实际上也是一个实例,只不过这个实例不是用于数据服务的,而是用于管理目的。
数据库管理服务器提供以下功能:●接受远程客户端的管理请求,将远程的管理请求在数据库服务器端实现●允许用户进行任务调度●允许用户对系统进行远程监控●响应DB2 Discovery,为其提供系统信息数据库管理服务器可以在系统安装时自动生成,也可以在安装后手工创建,在一个数据库节点中只能有一个数据库管理服务器。
1.4.5、数据库管理服务器的使用如果没有在安装时创建数据库管理服务器,可以使用命令手工创建。
具体命令如下:dasicrt 管理服务器的名字(UNIX平台)db2admin create (INTEL平台)启动和停止数据库管理服务器的命令:db2admin start 启动管理服务器db2admin stop 停止管理服务器显示当前数据库管理服务器名:dasilist (UNIX平台)db2admin (INTEL平台)删除当前数据库管理服务器:dasidrop 管理服务器的名字(UNIX平台)db2admin drop (INTEL平台)1.5、DB2环境变量的设置1.5.1、DB2环境变量除了实例配置文件和数据库配置文件中所包含的参数之外,还有一些配置参数对数据库环境起到控制作用。
这些配置参数分为三类:环境变量:这类变量的设置方法因操作系统的不同而有所差异。
例如在Windows NT 环境中,选择控制面板→系统→环境来设置;在OS/2中则要更改config.sys文件。