欢迎投稿

今日深度:

表空间的管理,创建,维护

表空间的管理,创建,维护


1 存储物理结构

datapage数据页是db2的最小存储结构:有4KB,8KB,16KB,32KB

操作系统的最小存储结构是块:windows最小0.5KB,Linux最小1KB

extent域的大小,在创建数据库和表空间的时候通过extentsize指定,默认为32个数据页datapage组成;

每个表独享几个extent;

2表空间的管理

SMS,系统管理的空间:

由操作系统的文件管理器,管理和分配空间;依赖操作系统进行管理

DMS,数据库管理的空间:

DB2管理程序管理和分配空间;因此表空间可以使用裸设备,也可以实现文件系统;

DMS的自动存储:

SMS的管理,性能相对来说,不是很好;

特性

SMS

DMS

DMS自动存储

是否条带striping

默认类型

v8

 

v9

空间分配

按需增长

预先分配,大小DBA可以干预

默认autoresize no

预先分配,自动增长默认autoresize yes

 

性能

 

可以实现裸设备

不可以

管理对象

OS

db2

db2

容器的更改

 

alter tablespace add/drop

alter tablespace reduce

 

SMS管理的限制:

最大在表空间中存放64GB数据(4KB页),512G数据(32KB)

DMS管理

最大的表空间扩大到8TB(4KB),64TB(32KB)

3创建数据库

默认创建库的位置:

C:\Program Files\IBM\SQLLIB\BIN>db2 get dbm cfg |find /i "DFTDBPATH"

缺省数据库路径 (DFTDBPATH) = C:

指定创建位置:

C:\Program Files\IBM\SQLLIB\BIN>db2"create database ibmdb1 on c:\db2"

SQL1047N 应用程序已经与另一个数据库相连。

自动管理:

create database mydb managed byautomatic storage;

SMS

managed by system

DMS

managed by database

3.1 代码页

通常设置为双字节代码DBCS

中文代码页1368,代码集GBK,territory为CN

对于有XML数据的应用,只有Unicode格式才能存储XML

create database xmldb using codesetUTF-8 territroy us;

3.2定义表空间

catalogtablespace

usertablespace

temporarytablespace

prefetchsize number of pages

执行数据库的时候预存,在实际引用之前加载,减少IO操作

而DFT_prefetch_sz代表在数据库触发遇到请求时候,每次读取多少个页面,可以摒弃的读取多个扩展数据块

例如

3.3建库语句

createdatabase mydb

def_prefetch_sz4

catalogtablespace managed by database

using(fle ‘data1/1.dbf’ 10G, file‘/data2/1.dbf’ 1G )

extentsize8

prefetchsize16

temporarytablespace managed by system

using(‘/data/tmp1.dbf’,’/data/tmp2.dbf’)

usertablespace mnaged by database

using(file ‘/data/user.dat’ 1G );

extentsize24

prefetchsize48

默认扩展数据块是4个页面;

extentsize8会覆盖def_extent_sz

临时表空间又操作系统来管理;

3.4数据库目录

C:\DB2\NODE0000\SQL00001

SQLSPCS保存了表空间信息

SQLSGF 保存了自动存储管理的存储路径信息

SQLdbconf包含数据库配置信息,不能进行编辑,若要更改可以使用

updatedatabase configuration,reset database configuratrion语句

 

db1rhist.asc历史记录文件,

sqlogctl.glfh日志控制文件

系统崩溃时候,回退需要;

3.5维护表空间

db2list tablespaces show detail

表空间标识 = 3

名称 =IBMDB2SAMPLEREL

类型 = 数据库管理空间

内容 = 所有持久数据。大型表空间。

状态 = 0x0000

详细解释:

正常

总计页数 = 4096

可用页数 = 4064

已用页数 = 608

可用页数 = 3456

高水位标记(页) = 608

页大小(以字节计) = 8192

扩展数据块大小(页) = 32

预取大小(页) = 32

容器数 = 1

 

C:\ProgramFiles\IBM\SQLLIB\BIN>db2 "list tablespace containers for 3"

 

表空间 3的表空间容器

 

容器标识 = 0

名称 =C:\DB2\NODE0000\SAMPLE\T0000003\C0000000.

LRG

类型 = 文件

 

3.6优化raid上的表空间性能

如果strip大小为64KB,页大小为16KB,那么扩展快大小64KB* 4比较合适;

DB2_parallel_IO: automatic

www.htsjk.Com true http://www.htsjk.com/DB2/20212.html NewsArticle 表空间的管理,创建,维护 1 存储物理结构 datapage数据页是db2的最小存储结构:有4KB,8KB,16KB,32KB 操作系统的最小存储结构是块:windows最小0.5KB,Linux最小1KB extent域的大小,在创建数据...
评论暂时关闭