DB2安装配置手册.doc

上传人:laozhun 文档编号:2394830 上传时间:2023-02-17 格式:DOC 页数:66 大小:2.55MB
返回 下载 相关 举报
DB2安装配置手册.doc_第1页
第1页 / 共66页
DB2安装配置手册.doc_第2页
第2页 / 共66页
DB2安装配置手册.doc_第3页
第3页 / 共66页
DB2安装配置手册.doc_第4页
第4页 / 共66页
DB2安装配置手册.doc_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《DB2安装配置手册.doc》由会员分享,可在线阅读,更多相关《DB2安装配置手册.doc(66页珍藏版)》请在三一办公上搜索。

1、DB2安装配置以及相关技术手册topsoft二零零六年八月目录目录21准备52安装需求63详细安装步骤74DB2的配置与建库295DB2数据库缓冲池设置386DB2数据库表空间建立417ORACLE到DB2数据库迁移技术问题527.1Oracle迁移到DB2后,如何对DB2服务器进行配置和管理?527.1.1DB2 UDB 体系结构图537.1.2DB2 UDB 内存结构537.1.3DB2 UDB 数据库结构537.1.4DB2 UDB数据库的逻辑机构54I.DB2的数据库对象54II.系统55III.实例56IV.数据库56V.表空间57VI.表58VII.视图58VIII.索引58IX.

2、触发器597.2DB2数据库的相关概念59I.分区数据库59II.节点59III.日志60IV.权限60V.特权60VI.配置参数61VII.系统目录61VIII.约束62IX.数据完整性62X.主键63XI.外键63XII.父表63XIII.隔离级别63XIV.工作单元64XV.连接65XVI.数据安全性65XVII.恢复65XVIII.数据元素658ORACLE中的数据类型与DB2数据类型的对应关系是什么?669ORACLE中的一些常用函数如DECODE()、爬树查询等在DB2中是如何实现的,若没有相关实现,解决方案是什么?689.1DB2中对Oracle系统函数decode()的实现68

3、9.2DB2中对Oracle系统中的爬树查询的对应实现6810ORACLE中的SQUENCE和DUAL,对应到DB2中如何实现6810.1Squence在db2中的实现6810.2Oracle系统表dual在db2中相对应的系统表是SYSIBM.SYSDUMMY16911ORACLE到DB2数据迁移问题7211.1准备工作7211.2数据迁移步骤:721 准备取得 DB2 Enterprise Edition V8.2 for Windows 安装光盘。2 安装需求l 磁盘:至少1G的FAT32或NTFS格式磁盘空间。推荐3G的NTFS格式磁盘空间。l 内存和CPU:至少256MB内存,推荐2

4、GMB内存。对于 32 位 DB2 产品,需要有奔腾或与奔腾兼容的 CPU。对于 64 位 DB2 产品,需要 Itanium 或与 Itanium 兼容的 CPU。l 操作系统:Windows 2000/XP/2003,推荐使用Windows的各种server/advance server/data center版本。3 详细安装步骤运行DB2光盘,打开并运行setup.exe开始安装,如下图如上图,单击【安装产品】如上图,单击【下一步】如上图,单击【下一步】如上图,选择“我接受许可证协议中的全部条款(A)”后,单击【下一步】如上图,选择“定制安装”, 单击【下一步】如上图,单击【下一步】如

5、上图,单击【下一步】如上图,默认目录为C: Program FilesIBMSQLLIB,为了获得更好的性能,改为非操作系统所在的分区上安装DB2,并且不在Program Files文件夹内安装,目的是避免目录中的空格引起不必要的麻烦。单击【下一步】如上图,单击【下一步】如上图,单击【下一步】如上图,如果计算机在域内,则需要输入域用户的用户名和密码;如果计算机不在域内,则输入登陆计算机的用户名和密码。并且,这里所输入的用户名和密码应该隶属于Administators组,密码要保证正确,在此仅对两次输入密码匹配性进行一致性校验,而不对密码的有效性经进行校验。为了DB2服务器管理的方便,请取消选择

6、“对其余DB2服务使用同一个用户名和密码”,单击【下一步】如上图,因为上面输入的密码是正确有效的,所以选择【否】如上图,单击【下一步】如上图,单击【确定】如上图,选择“创建DB2实例”,单击【下一步】如上图,选择“DB2”,单击【下一步】如上图,在此推荐使用新建用户,用户名topicis,并且选中“对其余DB2服务使用同一个用户名和密码(U)”,单击【下一步】如上图,选择“准备DB2工具目录和仓库控制数据库”,单击【下一步】如上图,单击【下一步】如上图,单击【下一步】如上图,选择“将任务延迟到完成安装后进行”,单击【下一步】如上图,单击【下一步】如上图,推荐将设置信息复制并保存起来,以供查看。

7、单击【安装】如上图,单击【完成】,完成DB2服务器的安装。DB2接着会开始启动服务,请看下节的DB2的配置。4 DB2的配置与建库注意: db2在创建数据库时候,会自动创建一个模式。“模式名”会默认为“当前用户名”。由于该系统在设计时采用topicis模式,所以登陆系统创建数据库的用户,名称必需为“topicis”。(即:在本机新建一个topicis用户,并用该用户登录来创建数据库)。以下仅为一创建db2数据库例子,数据库名字可以有用户自己决定。(例子仅供参考)在安装DB2的最后一步,如上图单击【完成】后,会启动DB2的服务,进入DB2的启动板如上图,单击【创建样本数据库】如上图,选择【DB2

8、 UDB样本】 如上图,完成后,单击【确定】,完成样本数据库的创建。接下来,创建应用数据库。打开DB2控制中心, 打开方法“开始/所有程序/IBM DB2/一般管理工具/控制中心”,也可以直接在系统托盘中右键点击DB2,选择“控制中心”来打开。如上图,在控制中心视图上选择“高级”,单击【确定】,并展开控制中心的目录树中的样本数据库SAMPLE如上图,在“数据库”的节点上单击鼠标右键,如山图,选择【标准】创建一个数据库topicis,别名和注释也为topicis,单击【下一步】如上图,选择“低维护自动增加(系统管理空间)(L)”,并单击【添加】指定一个容器来存储用户表。容器可以是一个文件目录,可

9、以在windows中随意创建。单击【下一步】如上图,单击【下一步】如上图,单击【下一步】如上图,单击【下一步】如上图,单击【下一步】如上图,单击【显示命令】,可以显示创建命令单击【完成】选择【否】,完成topicis数据库的创建。5 DB2数据库缓冲池设置Db2数据库建好后,在该数据库上创建缓冲池如下图:点击创建:系统默认“页大小”下拉单中有4、8、16、32四个选项,为了便于操作,对应的“缓冲池名”我们分别定为4k、8k、16k、32k(这四个缓冲池都必须建)。另外在红色框内也可根据需要,自己定义页设计的大小。除此四个之外我们还需要建立一个“缓冲池名”为USER32K的缓冲池。如下图建议该页

10、计的大小为3500k。(用户可根据具体需要修改).点击确定完成缓冲池的创建。6 DB2数据库表空间建立DB2数据库建好后,在该数据库上创建表空间如下图:点击创建:点击【下一步】:我们根据项目的需要,要建立四个常规、一个大型(用来存放如图片等大字段)和一个用户临时类型的表空间(建议表空间命名规则和建立的缓冲池对应:例如USER4k对应的缓冲池为4k、USER8k对应的缓冲池为8k、USER16k对应的缓冲池为16k、USER32k对应的缓冲池为32k,大型表空间对应32k缓冲池,用户临时表空间对应4k缓冲池)。这里仅以USER4k为例加以说明。点击【下一步】:进入下图在该窗口中用户建立的“缓冲池

11、”将显示在缓冲池列表中,选择合适的缓冲池点击【下一步】:如下图点击【下一步】:如图该窗口要为建立的表空间指定容器,单击【添加】红色标记部分可以调整容器的大小。(建议使用200,也可根据需要用户自己决定)点确定进入下图:点【下一步】:点【下一步】点【下一步】:点“完成”完成USER4k表空间的建立,其他表空间的操作类似,这里不再做具体说明。7 Oracle到DB2数据库迁移技术问题 Oracle迁移到DB2后,如何对DB2服务器进行配置和管理? Oracle中的数据类型与DB2数据类型的对应关系是什么? Oracle中的一些常用函数如decode()、爬树查询等在DB2中是如何实现的,若没有相关

12、实现,解决方案是什么? Oracle中的squence和dual,对应到DB2中如何实现7.1 Oracle迁移到DB2后,如何对DB2服务器进行配置和管理?理解Oracle与DB2数据库系统的体系结构和相关概念是进行配置管理的依据,也是快速掌握数据库系统的捷径。有关Oracle这方面的资料文档网上很多,在此不做介绍。下面简要介绍一下DB2体系结构和相关概念。7.1.1 DB2 UDB 体系结构图7.1.2 DB2 UDB 内存结构包缓存 为存储静态和动态 SQL 语句而分配的内存。 缓冲池 在将数据刷新到磁盘之前,为存储数据而分配的内存。 日志缓冲区 在将所有对数据库的更改刷新到磁盘上的日志

13、之前,用来存储这些更改的内存。7.1.3 DB2 UDB 数据库结构如上图,说明:驱动器/目录 在 CREATE DATABASE 命令中指定的驱动器或目录。 DB2 实例名称 DB2 实例所有者的名称。 NODE0000 数据库的分区数。0 表示非分区的数据库。 SQL00001 从 1 开始的数据库 ID。 SQLOGDIR 数据库的默认日志目录。 SQLT0000.0 目录表空间 SYSCATSPACE。 SQLT0001.0 临时表空间 TEMPSPACE1。 SQLT0002.0 用户表空间 USERSPACE1。7.1.4 DB2 UDB数据库的逻辑机构在DB2数据库中,表、视图、

14、存储过程、触发器等具体存储数据或对数据进行操作的实体都称为数据库对象。DB2的逻辑机构包括系统、实例、数据库、表空间以及表、视图、过程、函数、触发器等对象,下面做详细介绍:I. DB2的数据库对象在DB2数据库中,表、视图、存储过程、触发器等具体存储数据或对数据进行操作的实体都称为数据库对象。如下图:II. 系统DB2 是按照数据库对象的层次结构来组织的。层次结构中最顶层的对象就是系统。系统表示安装 DB2。控制中心维护它了解的系统的列表,并记录与每个系统进行通信所需要的信息(例如,它的网络地址、操作系统和通信协议)。 系统可以具有一个或多个 DB2 实例,每个实例可以管理一个或多个数据库。数

15、据库可以是分区数据库,并使它们表空间驻留在数据库分区组上。表空间也可以存储表数据。 您可以: 将系统添加至控制中心。 与系统连接。 从控制中心中除去系统。实践表明:DB2中的系统名是与创建系统的用户名一一对应的。III. 实例实例是一种逻辑数据库管理器环境,在该环境中可以编目数据库和设置配置参数。可以在同一物理服务器上创建多个实例,并为每个实例提供唯一的数据库服务器环境。多个实例可以提供下列内容: 将一个实例用于开发环境,而将另一个实例用于生产环境。 为特定环境调整实例。 限制存取机密信息。 控制为每个实例指定 SYSADM、SYSCTRL 和 SYSMAINT 权限。 优化每个实例的数据库管

16、理器配置。 限制实例故障的影响。如果发生实例故障,则只有一个实例受影响。其它实例可以继续正常工作。 多个实例将需要: 每个实例的附加系统资源(虚拟内存和磁盘空间)。 更多管理任务,因为要管理附加实例。 在 Windows 系统上,确保没有实例名与服务名称相同。 您可以: 创建实例。 删除实例。 启动实例。 停止实例。 连接实例。IV. 数据库关系数据库以表的集合来表示数据。表由定义的一组列和任何数目的行组成。每个表中的数据在逻辑上是相关的,并且可以定义表之间的关系。可以根据数学原理和称为关系的操作(例如 INSERT、SELECT 和 UPDATE)来对数据进行查看和操作。 数据库是自描述的,

17、因为它除了包含数据之外,还包含对它自身结构的描述。它包括一组系统目录表,这些目录表描述数据的逻辑和物理结构;配置文件,它包含与数据库相关联的参数值;恢复日志,它记录正在执行的事务以及可以归档的事务。 数据库可以是本地的或远程的。本地数据库在物理上位于正在使用的工作站中,而另一机器上的数据库则认为是远程的。 您可以: 创建数据库。 将数据库添加至控制中心。 从控制中心中删除数据库。 备份数据库。 复原数据库。 配置数据库。 编目数据库。 取消编目数据库。 连接至数据库。 使用 事件监视器监视表空间。 使用分区数据库。 使用联合系统。 对于 z/OS 和 OS/390 系统,在 DB2 安装过程中

18、预定义了缺省数据库 DSNDB04。此数据库具有缺省缓冲池(BP0)和缺省 DB2 存储组(SYSDEFLT)。 数据库名称数据库名称是创建数据库时用户提供的标识名称。这些名称在对它们进行编目的位置中必须是唯一的。该名称使数据库与本地数据库目录或系统数据库目录中的其它任何数据库区别开来。 如果想要在通信环境中使用数据库,为了避免潜在的问题,则不要在数据库名称中使用特殊字符 、# 和 $。另外,由于并不是所有键盘都有这些字符,所以,如果打算在另一地域使用数据库,则不要使用这些字符。 可以为本地和远程数据库名称指定别名。V. 表空间在数据库中的物理空间被组织成表空间集合。每个表空间由容器集合组成,

19、每个容器是对物理存储器(例如,机器上的目录、物理文件或设备(例如,硬盘驱动器)的分配。在分区环境中,表空间驻留在数据库分区组中。 将每个表分配给表空间。表可以将它的索引保存在第二个表空间中,将它的大对象保存在第三个表空间中。可以将多个表分配给同一个表空间。系统试图将数据分布到它的表空间的容器中。 将表分配给表空间并将表空间映射至物理存储器,可以使您对数据库性能具有一定控制权。例如,可以将最快的存储设备用于最常用的表,将不常用的数据存储在较慢的设备上。 有两种类型的表空间: l “系统管理空间”(SMS),在该表空间中,操作系统的文件系统管理器分配和管理用来存储表的空间。用户决定文件的位置、DB

20、2 控制它们的名称,而文件系统则负责管理它们。缺省情况下,表是作为 SMS 表空间来创建的。 l “数据库管理空间”(DMS),在该表空间中,数据库管理器控制存储空间。存储模型由有限数目的设备(其空间由 DB2 来管理)组成。管理员决定要使用的设备,而 DB2 负责管理那些设备上的空间。 您可以: l 创建表空间。 l 删除表空间。 l 改变表空间的特征。 l 备份表空间。 l 恢复表空间。 l 前滚表空间。 l 授予和撤销对表空间的特权。 l 显示与表空间相关的对象。 l 使用事件监视器监视表空间。VI. 表关系数据库以表的集合来表示数据。表由在列和行中按逻辑排列的数据(通常称为记录)组成。

21、 每个表都有一个名称,而在表中每一列都有一个名称。表的各行之间没有任何特定的排序,但是,可以按照由各行的列中的值所确定的顺序来检索行。表中的数据在逻辑上是相关的。将所有数据库和表数据都分配给表空间。 您可以: l 创建表。 l 通过插入、装入和导入数据来填充表。 l 定义表之间的关系。 l 控制对表的存取权。 l 删除表。 l 创建表的索引。VII. 视图视图是查询一个或多个表所获得的结果。视图看起来象真正的表,但是实际上它只是对一个或多个表中的数据的表示。 视图是一个逻辑表或虚拟表,它在物理存储器中并不存在。它是表示不需要维护的数据的有效方法。当视图中显示的数据发生更改时,那些更改是对表本身

22、的数据的更改结果。 视图可用来查看同一数据的不同表示法。视图是控制对机密数据的存取权的一种方法。根据用户的需要,不同的用户可以对不同的列和行具有存取权。 您可以: l 创建存取一个或多个数据源的视图。 l 创建一个视图来对一列中的所有值求和、选择最大值或者计算平均值。 l 创建存取视图而不是实际的表的应用程序。 l 删除视图。VIII. 索引可以在表上创建索引,它是对数据存取的一种帮助。它是指向表中的行的有序指针集。 每个索引都是根据表中一列或多列的数据值来建立的。索引是从表中的数据独立出来的对象。当创建索引时,数据库管理器将构建结构,并且自动维护它。索引可以用于下列目的: l 提供一种快速方

23、法来根据表中各行在键列中的值来查找这些行。在某些情况下,可以在索引中找到查询所需要的所有信息,从而不需要阅读整个实际表。 l 通过将一列或一组列定义为唯一索引或主键来强制执行唯一性规则。 l 提供了根据键列值来将表中的各行进行逻辑排序。 l 根据定义的索引顺序来在物理存储器中建立表中的行的群集。 您可以: l 创建索引以提高性能。 l 创建唯一索引以强制执行唯一性规则。 l 删除索引。 l 显示索引与其它对象之间的关系。IX. 触发器触发器定义一组操作,当在指定的表上执行更新、插入或删除时就会执行或触发这些操作。可以创建触发器,以便使它们在指定的事件之前执行(前触发器)或者在指定的事件之后执行

24、(后触发器)。触发器可以用于: l 验证数据。确保新的数据值在可接受的范围内。这类似于检查约束。 l 数据完整性。确保通过更新相关表中相关联的数据记录来维护交叉表从属项。 l 通知。通过生成电子邮件通知来对管理员报警:存在潜在的表问题。 l 触发器存储在数据库中。这样更便于进行应用程序开发,因为不需要在每个应用程序中编写触发器执行的操作。维护应用程序和数据库也更加容易,因为如果表的规则发生了更改,则只需要修改相应的触发器,而不需要修改每个应用程序。 您可以: l 创建触发器。 l 删除触发器。7.2 DB2数据库的相关概念I. 分区数据库分区关系数据库是由两个或多个数据库分区组成的数据库。在此

25、类型的数据库中,数据以散列形式存储。数据库分区由它自己的数据、索引、配置文件和事务日志组成。数据库分区有时称为节点或数据库节点。 表可以位于一个或多个数据库分区中。当表的数据分布在多分区中时,它的一些行存储在一个分区中,而其它行存储在其它分区中。数据检索和更新请求将自动分解为子请求,并在适当的数据库分区中并行执行。用户应该很清楚数据库已划分为数据库分区。 通常情况下,由计算机组成的每个物理组件上都存在单个数据库分区。每个系统上的处理器都由每个数据库分区的数据库管理器用来管理其数据(这些数据是数据库中总数据的一部分)。因为数据是跨数据库分区划分的,所以可以使用多台计算机上的多个处理器的能力来满足

26、信息请求。 数据检索和更新请求将自动分解为子请求,并在适当的数据库分区中并行执行。 用户交互作用是通过一个数据库分区来实现的,该数据库分区称为该用户的协调程序分区。协调程序与应用程序在同一数据库分区上运行,但是,在远程应用程序的情况下,协调程序将在与远程应用程序连接的数据库分区上运行。任何数据库分区都可以用作协调程序分区。 II. 节点数据库分区有时称为节点或数据库节点。单一分区数据库就是只有一个数据库分区的数据库。数据库中的所有数据都存储在该分区中。分区数据库就是具有两个或多个数据库分区的数据库。表可以位于一个或多个数据库分区中。当表位于多分区上时,它的一些行存储在一个分区中,而其它行存储在

27、其它分区中。发出 SQL 语句的用户应该很清楚数据库可能已划分为数据库分区。III. 日志日志与所有 DB2 数据库相关联。日志保存对数据库对象和数据所作的所有更改的记录。所有更改都是首先写入到内存中的日志缓冲区,然后在落实更改或者缓冲区已满时,就会移动或刷新磁盘上的日志文件。在发生意外的情况下(例如,电源故障),将使用日志文件来使数据库返回到一致状态(恢复)。 有两种类型的日志记录: l 循环日志记录,它使用圆形或环形日志文件来记录对数据库的更改。当填充了最后一个日志时,就会重新循环使用第一个文件。由于可能会覆盖事务信息,因此,对这种类型的日志记录不能进行前滚恢复。缺省情况下,创建数据库时将

28、创建循环日志记录。 l 归档日志记录,它不会覆盖日志文件。它会创建附加日志来记录自从上次备份以来的所有事务。这种类型的日志记录支持前滚恢复。 活动日志包含尚未落实或回滚的事务信息,或者那些尚未写入数据库文件但已落实的更改。当正常处理不再需要活动日志中的所有更改时,日志就会关闭并且成为归档日志。循环日志记录和归档日志记录都使用活动日志,而只有归档日志记录才使用归档日志。 您可以: l 配置日志缓冲区和日志文件的大小。 l 配置日志数。 l 选择要使用的日志记录类型。IV. 权限权限提供了一种方法来对特权进行分组以及控制实例、数据库和数据库对象的维护和实用程序操作。用户可以具有提供对一组数据库对象

29、的所有特权的管理权限,他们也可以具有提供对管理系统的所有特权但是不允许存取数据的系统权限。 l SYSADM 是最高级别的管理权限。它包括对 DB2 实例中的所有数据库的所有特权以及授予和撤销所有其它权限和特权的权限。 l DBADM 提供对特定数据库的管理权限。它允许用户存取和修改该数据库中的所有对象。具有 DBADM 权限的用户可以对其他用户授予和撤销对数据库的特权,但是不能授予或撤销 DBADM 权限。 l SYSCTRL 是用于控制数据库管理器所使用的资源(例如,创建和删除数据库)的权限,但是,不允许存取数据库中的数据。 l SYSMAINT 是用于执行维护操作(例如,启动和停止 DB

30、2 服务器以及备份和复原数据库)的权限。它不允许存取数据库中的数据。 通过将数据库级别的 LOAD 权限与对表的 INSERT 特权结合起来,可允许用户将数据装入到该表中。 特定于数据库的权限存储在数据库目录中;而系统权限存储在实例的数据库管理器配置文件中。V. 特权特权通过已授权用户的授权标识来转移他们的权利,以便对特定对象执行特定操作。它使该授权标识能够创建、修改或存取某些数据库资源。授权标识可以代表用户、组或所有用户(PUBLIC)。 特权使用户能够创建或存取数据库资源。权限提供了一种方法来对特权进行分组以及控制实例、数据库和数据库对象的维护和实用程序操作。 可以保持对许多数据库对象(例

31、如数据库、模式、表空间、表、视图、服务器、程序包和索引)的特权。以下列表是可用于某些对象的一些特权的样本: l CONNECT 允许用户存取数据库。 l CREATEIN 允许用户在模式中创建对象。 l USE 允许用户在表空间中创建表。 l INDEX 允许用户创建表的索引。 l DELETE 允许用户删除表或视图中的行。 l EXECUTE 允许用户执行程序包。 l CONTROL 是对一些数据库对象的主要特权。 l GRANT 上的 WITH GRANT 选项允许用户将特权授予其他用户。 l 具有 SYSADM 或 DBADM 权限或者 CONTROL 特权的用户可以使用 GRANT 和

32、 REVOKE SQL 语句来显式地授予和撤销特权。 还可以隐式授予特权(即,当显式地为用户授予某些较高级别的特权时)。还可以为具有特权执行程序包的用户授予隐式特权。例如,当用户执行涉及到其它特权的程序包时,仅当执行该程序包时用户才能获得那些特权。他们不需要显式特权就可以直接使用该程序包所使用的数据对象。 可以使用组来为一组用户提供权限,而不需要对每个用户单独授予或撤销特权。然而,除了称为 PUBLIC 的预定义组之外,不能在静态 SQL 中或者创建对象(例如,触发器和视图)时使用组特权。VI. 配置参数配置参数会影响数据库或数据库管理器的运行特征。它们存储在配置文件中。 数据库管理器配置文件

33、是在创建 DB2 实例时创建的。它包含的参数将影响实例级别的系统资源,这与是该实例的一部分的任何一个数据库都无关。可以将这些参数中许多参数的值在系统缺省值的基础上进行更改,以便提高性能或者增大容量,这取决于系统的配置。服务器和客户机上都存在数据库管理器配置参数。在客户机上可用的参数是可以在服务器上设置的数据库管理配置参数的子集。 数据库配置文件是在创建数据库时创建的,并且驻留在数据库所驻留的地方。每个数据库都有一个配置文件,或者在分区环境中,每个数据库分区都有一个配置文件。文件的参数指定分配给每个数据库的资源数量,这只是其中之一。可以更改许多参数的值以提高性能或增大容量。可能需要进行不同的更改

34、,这取决于特定数据库中的活动类型。 您可以: 使用控制中心、“命令行处理器”、“应用程序编程接口”(API)、“配置助手”和命令中心来查看、更新和复位服务器的数据库管理器配置参数。 使用“配置助手”、“命令行处理器”和“命令编辑器”来查看、更新和复位客户机的数据库管理器配置参数。 使用控制中心、“命令行处理器”或“应用程序编程接口”(API)来查看、更新和复位数据库配置参数。VII. 系统目录系统目录是一些特殊的表,这些表中包含有关数据库中所有对象的信息。这些对象包括,例如,表、视图、索引以及安全性控件(例如,约束和特定于数据库的权限)。这些系统目录表是在创建数据库时创建的。 当创建、改变或删

35、除对象时,DB2 将插入、更新或删除目录中用来描述该对象以及该对象如何与其它对象相关的那些行。目录主要用于只读目的,因为它们是由 DB2 来维护的。通过正常的 SQL 查询设施就可获取它们的数据。然而,有一组可更新的特殊目录视图。这组视图是在用来更新数据库统计信息的目录上定义的。手工更新这些视图可以提供一个影响系统优化器或者对测试数据库执行实验的方法。 数据库管理器数据库管理器包括用来存取数据的数据库引擎和设施,例如,命令行处理器和应用程序接口。 数据库引擎可以管理数据、控制对数据的所有存取权、生成程序包、生成优化路径、提供事务管理、确保数据完整性和数据安全性,并提供并发性控制。 DB2 实例

36、是一种逻辑数据库管理器环境,在该环境中可以对数据库进行编目和设置配置参数。可以在单个服务器上创建数据库管理器的多个实例,并且可以用于不同的目的,例如,单独的测试和生产环境。 DB2 程序文件以物理形式存储在特定机器的某个位置上。创建的数据库管理器的每个实例指向该位置,以便使程序文件对于创建的每个实例不会重复。VIII. 约束约束是用来确保数据遵守某些限制或规则的一种机制。例如,在一个公司的人力资源数据库中,每个职员的编号必须是唯一的,因此,应遵守某些约束。DB2 提供了下列类型的约束: l 唯一约束保证在与约束相关联的一列或一组列中的值是唯一的,并且表中所有行都不为空。 l 主键约束与唯一约束

37、相相似,可以用来定义表之间的关系。 l 引用约束或外键约束定义表之间和表内的关系。这些关系定义可确保不同表中的相关列之间的数据值一致。引用约束要求给定属性或表列的所有值在其它一些表或列中也存在。 l 检查约束是用来指定表中一列或多列的允许值的规则。 l NOT NULL 约束防止将空值输入列中。 您可以: l 在创建表时设置约束。 l 将约束添加到现有表中。 l 改变现有表的约束。 l 从表中删除约束。 l 打开和关闭对表的约束检查。IX. 数据完整性当多个用户存取和更改数据时,必须维护关系数据库中数据的完整性。每当数据可以共享时,都需要确保数据库表中的值的准确性。 您可以: l 使用隔离级别

38、来确定在存取数据时数据是如何锁定或者与其它进程隔离开的。 l 通过定义约束来保护数据和定义数据之间的关系,以强制执行业务规则。 l 创建可以执行复杂的交叉表数据验证的触发器。 l 实现恢复策略以保护数据,以便可以将数据复原为一致状态。X. 主键主键是一种重要的唯一键。它是唯一地标识表中的一行的一列或列组合。 建议为表定义主键,因为唯一地标识每一行可以提高行存取的速度。当定义了主键时,系统会自动维护对那一组列的唯一索引。 一个表只能有一个主键(虽然它可以具有多个唯一键)。主键的列不能包含空值。 您可以: l 在创建或改变表时定义主键。 l 改变表时,删除主键。 l 将主键与外键结合起来使用,以强

39、制引用完整性约束。XI. 外键外键定义两个或多个表之间的关系。它是一个表中的一列或多列,这些列的值与另一个表中的唯一键或主键相匹配。外键可用来强制表之间的引用约束。 外键使它的表成为另一个表的从属表,从而使另一个表成为父表。 您可以: l 创建具有零个或多个外键的表。 l 在创建或改变表时定义外键。 l 在改变表时删除外键。XII. 父表父表是这样一种表,它包含一个主键,而另一个表(从属表)中至少有一个外键引用该主键。在表之间建立这种关系时将强制表之间的引用完整性。 当从父表中删除一行时,DB2 将进行检查,以便了解从属表中的任何从属行是否具有相匹配的外键。在创建外键时,您就指定了要对任何从属

40、行执行的操作。 父表也可能是另一个父表的从属表。XIII. 隔离级别隔离级别确定在存取数据时数据是如何锁定或者与其它进程隔离开的。隔离级别在工作单元的持续时间内保持有效,除非显式地更改了它。 当多个用户存取和更改数据时,必须维护关系数据库中的数据完整性。并发性就是多个交互式用户或应用程序同时共享资源。隔离级别指定: 应用程序读取和更新的行可用于其它并发执行的应用程序进程的程度。 并发执行的其它应用程序进程的更新活动对应用程序的影响程度。 DB2 支持下列隔离级别: l 可重复读 在工作单元中锁定了应用程序读取的所有行。因此,当游标打开时,在同一工作单元中发出了两次的查询每次都会提供相同的结果。

41、在工作单元完成之前,其它应用程序不能更新、删除或插入会影响结果表的那些行。可重复读的应用程序不能了解其它应用程序未落实的更改。 l 读稳定性 读稳定性只锁定应用程序从工作单元中检索到的那些行。它确保在工作单元完成之前,该工作单元期间进行的任何限定行读取都不会被其它应用程序进程更改,并且,在更改行的另一应用程序进程落实更改之前,不会读取该进程所更改的任何行。 l 游标稳定性 当游标定位在由事务存取的某一行时,该行被锁定。在访存下一行或终止事务以前,该锁定保持有效。然而,如果一行上的任何数据发生更改,则在对数据库落实更改之前,必须挂起该锁定。结果,在同一工作单元内发出了两次的查询可能不会产生相同的

42、结果。 l 未落实的读取 应用程序可存取其它事务未落实的更改。除非其它应用程序尝试删除或改变表,否则应用程序也不锁定其它应用程序存取它正在读取的行。它最常用于对只读表的查询。 您可以: l 当准备或绑定应用程序时,指定处于程序包级别的隔离级别。 l 定义处于语句级别的隔离级别。 XIV. 工作单元工作单元是应用程序进程中可恢复的一系列操作。数据库管理器使用它来确保数据库处于一致状态。对数据库的任何读取或写入操作都是在工作单元中完成的。其它数据库产品可能使用术语 事务 而不是工作单元。 当读取或写入数据库中的任何数据时,就会隐式地启动工作单元。由同一应用程序执行的所有后续读写操作被认为是同一工作

43、单元的一部分,直到应用程序执行 COMMIT 或 ROLLBACK 语句为止,这两个语句将结束工作单元。COMMIT 语句使得在工作单元中所作的所有更改成为永久性更改。ROLLBACK 语句从数据库中除去这些更改。如果应用程序在没有显式发出这些语句的情况下正常结束,则会自动落实工作单元。如果应用程序在工作单元中异常结束,则会自动回滚工作单元。 工作单元没有任何物理表示法,因为它是一系列指示信息(SQL 语句)。锁定在并发处理期间,数据库管理器使用锁定来维护数据完整性。锁定是数据库对象与应用程序之间的关联。这种关联允许应用程序控制其它应用程序可以如何存取对象。认为应用程序保持或者拥有对对象的锁定

44、。 由于并发处理允许多个应用程序同时存取同一数据库,所以数据库管理器由于下列原因而强加锁定: 为了保证应用程序保持对对象的控制,直到应用程序完成它的工作为止。这可以防止另一个应用程序在完成正在进行的工作之前更改对象中的数据。 为了禁止应用程序存取由保持锁定的应用程序所写入的未落实的数据。这保护了数据完整性。 在大多数情况下,不需要执行操作来控制锁定。在需要时,数据库管理器对一些对象(例如,行、表和表空间)强加锁定。XV. 连接在使用数据库之前,用户或应用程序必须与该数据库建立连接。连接至数据库并连接至实例。 您可以: l 使用“配置助手”来配置数据库连接。 l 使用控制中心来连接至数据库。 l

45、 控制授权连接至数据库的用户和应用程序。 l 通过在控制中心中打开“连接”文件夹来查看与数据库相连的对象。 l 使用事件分析器查看连接活动。 XVI. 数据安全性两种安全级别可以控制对 DB2 通用数据库数据和函数的存取权。对 DB2 的存取是由特定于操作环境(认证)的设施来管理的,然而在 DB2 中的存取是由数据库管理器(授权)来管理的。 认证就是系统验证用户标识的过程。用户认证是由 DB2 外部的安全性设施(通常是操作系统的一部分或者一个独立产品)完成的。 一旦认证了用户,数据库管理器用户就会确定是否允许用户存取 DB2 数据或资源。授权是这样一种过程:DB2 通过授权可以获取有关所认证的

46、用户的信息,这些信息指示用户可以执行哪些数据库操作以及用户可以存取哪些数据对象。授权标识指定已授权用户的存取权。权限可以分为两种类别:特权和权限。 特权使用户能够创建或存取数据库资源。权限提供了一种方法来对特权进行分组以及控制实例、数据库和数据库对象的维护和实用程序操作。XVII. 恢复恢复就是在出现问题之后(例如,介质或存储器故障、电源中断或应用程序故障),重新构建数据库或表空间。如果已经对数据库或个别表空间进行了备份,则可以在它们因某些原因而损坏或毁坏时重新构建它们。 有三种类型的恢复: l 崩溃恢复,防止数据库在事务(也称为工作单元)意外中断时停留在不一致或不可使用的状态。 l 版本恢复,是使用在备份操作期间所

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号