DB2数据库技术培训(2)

2018-11-21 15:18

DB2 UDB 数据库技术

? 系统管理空间(System Managed Space(SMS))-- 操作系统的文件系

统管理器分配和管理表的表空间类型。

? 数据库管理空间(Database Managed Space(DMS))— 数据库管理器控

制存储空间。这个表空间本质上旨在最好满足数据库管理器需要的特殊目标文件系统的实现。

从 DBA 的角度来看,SMS 表空间几乎不需要维护。从易于使用的角度来看,这种折中潜在地降低了性能,并且减少了优化选项。

DMS 与 SMS 的比较

那么您应该使用哪种类型的表空间?DMS和SMS各有特点,下面的表格帮助你选择使用哪种类型的表空间:

功能 Striping 对象管理 空间分配 是 操作系统 根据需求增长/收缩 SMS 是 DB2 预先分配 DMS 易于管理 好 最好 需要一些调优(比如,几乎不需要/不需要调优 EXTENTSIZE PREFETCHSIZE) 很好 最好 原始容器可以达到 5-10% 的有利条件 性能

5、Buffer pools的配置

Buffer Pools是来自数据库表中的数据暂时被存放于内存中的存储区域。目的是将来自数据库表中的一些数据暂时保存于内存中,当需要读取这些数据的时候,系统直接就从内存中读取数据,而不需要再从数据库中读取,节省查询时间,提

www.fenet.com.cn高效率。其默认值是250。在DB2中的位臵:

广州菲奈特融通软件有限公司 第3页

DB2 UDB 数据库技术

Buffer Pool的创建:如上图,在将数据库树展开后,选中Buffer Pools 方法一:选择菜单项 Select ->Create; 方法二:右键点击Buffer Pools,选择Create; 方法三:在右边的属性框中点击右键,选择Create; 方法四:在command line processor里,键入以下命令:

update database configuration for(database name)using buffpage (number) (这里只对size为-1的更改起作用) 参数说明:

Buffer pool name —— 新建的Buffer pool 的名称(只能以字母开头); Page size —— 定义Bufferpool使用的页面的大小,可选值:4,8,16,32k; Size in 4 KB pages —— 指定使用页面的数量;

www.fenet.com.cnUse extended storage —— 当这个选项被选中时,将从Buffer pool移出的pages将被放臵到扩展存储区域中;

注:只适用于UNIX系统,并且当这一项被选中时,num_estore_segs 这一项配臵值应大于0。

广州菲奈特融通软件有限公司 第4页

DB2 UDB 数据库技术

Use default bufferpool size —— 使用默认的bufferpool 大小,选中以后在右边窗口的 Size 下面的数字为 –1 。

Bufferpool size的默认值可以让用户自己指定,指定默认值可以用方法实现: 右键点击数据库 -> Configure 弹出如下窗口:

在下面的输入框中写入值就可以指定他的默认值了。

注意:新建的Buffer Pool只有在Database 重新启动以后才能被激活.

(二)、创建数据库

从命令行创建一个 DB2 数据库比较简单。要创建数据库,您必须使用“DB2 命令行处理器”(Command Line Processor(CLP))。这可以通过从 DB2 程序组选择 Command Line Processor,也可以从命令行执行命令 db2cmd db2 来完成。

www.fenet.com.cn创建 DB2 数据库的语法是:

CREATE DATABASE YYBDB

广州菲奈特融通软件有限公司 第5页

DB2 UDB 数据库技术

使用上面的脚本就可以创建数据库,使用CREATE DATABASE 命令唯一必须的元素是数据库名。当然,还可以有更多可用的选项,比如同时创建用户表空间、用户临时表空间,并指定代码页等等。

数据库名的规则是:

? 数据库名可以由下面这些字符组成:a-z、A-Z、0-9、@、# 和 $; ? 字符串的首字符必须是字母字符、@、# 或 $;它不能是数字或字母序列

SYS、DBM 或 IBM;

? 数据库名或数据库别名是唯一的字符串,它包含一到八个上面所描述的字

母、数字或键盘字符。

1、创建数据库实际上创建了什么

CREATE DATABASE 命令执行成功后,DB2 创建了一系列文件。这些文件包括日志文件、配臵信息、历史文件和三个表空间。这三个表空间是:

? SYSCATSPACE — 这是存放跟踪所有与 DB2 对象相关联的元数据的

DB2 系统目录所在的地方;

? TEMPSPACE1 — DB2 放臵中间结果的临时工作区;

? USERSPACE1 — 所有用户对象(表、索引)缺省存储的地方。 所有这些文件放在您的缺省驱动器的 DB2 目录中。缺省的驱动器通常与您安装 DB2 产品的驱动器是同一个驱动器。

对于简单的应用程序,这个缺省的配臵就足以满足您的需要。但是,您可能想要更改您的数据库文件的位臵,或更改 DB2 管理这些对象的方式。下面将更详细地探讨 CREATE DATABASE 命令。

2、数据库的位置

CREATE DATABASE 命令的一个参数是 ON 路径/驱动器选项。这个选项

www.fenet.com.cn告诉 DB2 您想创建的数据库的存储位臵。

在基于 UNIX 的系统中,这个选项指定创建数据库的路径。如果没有指定路径,那么在数据库管理程序配臵文件(dftdbpath 参数)中指定的缺省数据库路径中创建数据库。

在 OS/2 或 Windows 操作系统上,这个选项指定创建数据库的驱动器的盘符。

广州菲奈特融通软件有限公司 第6页

DB2 UDB 数据库技术

例如,下面的 CREATE DATABASE 命令将数据库放在 Windows 操作系统的 D: 盘上:

CREATE DATABASE YYBDB ON D:

3、代码页和排列序列

字符代码页和所有 DB2 字符数据类型(CHAR、VARCHAR、CLOB、DBCLOB)关联。可以将代码页认为是用来将字母数字数据转换为存储在数据库中的二进制数据的参考表。一个 DB2 数据库可以只使用一个代码页。代码页在CREATE DATABASE 命令的CODESET 和 TERRITORY选项指定。代码页可以使用单字节来表示一个字母数字(一个字节可以表示 256 个唯一的元素)或多个字节。

像英语这样的语言包含比较少的唯一字符;因此,单字节代码页足以存储数据。有些语言需要多于 256 个元素来表示所有的唯一字符;因此,需要多字节代码页(通常是双字节代码页)。

缺省情况下,根据 CREATE DATABASE 命令中使用的代码集(codeset)来定义数据库的排列序列。如果您指定选项 COLLATE USING SYSTEM,那么基于给数据库指定的 TERRITORY 比较数据值。如果使用选项 COLLATE USING IDENTITY,那么使用它们的二进制表示以字节对字节的方式来比较所有的值。

4、表空间的定义

除非您指定了表空间的位臵,否则三个表空间(SYSCATSPACE、

TEMPSPACE1、USERSPACE1)中的每一个都在缺省目录中自动创建(ON 关键字)。对于每个表空间,DBA 可以指定表空间打算使用的文件系统的特征。

创建表空间的语句是CREATE TABLESPACE,下面实例创建用户临时表空间:

www.fenet.com.cnCREATE USER TEMPORARY TABLESPACE yyb_temp MANAGED BY SYSTEM USING ('E:\\DB2\\yyb_temp') EXTENTSIZE 64 PREFETCHSIZE 32

广州菲奈特融通软件有限公司 第7页


DB2数据库技术培训(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:供水管网管理工作的思考

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: