计算机db数据库管理手册
1.4.1AIX上19
用户的准备19
配置客户端19
1.4.2Windows95/98/NT上21
分辨服务器的主机地址21
配置和测试客户端21
1.5控制中心使用27
1.6SHELL文件的列表说明28
第一章
本章主要介绍数据库的管理。首先,我们简单介绍数据库管理的基本概念,然后,对数据库的日常维护工作逐一作出说明。此后,从建立实例开始,介绍了如何使用我们开发的SHELL程序建立数据库等高级管理方法,并介绍了如何使用“控制中心”来管理数据库。最后附上SHELL文件的列表说明。
(
CF_CALL_ID CHAR(30) not null ,
CF_TXN_SVC_TIME TIME not null ,
CI_INTO_ACCT_NO VARCHAR(28)not null ,
CI_OUT_ACCT_NO VARCHAR(28) not null ,
CF_CAN_MON DECIMAL(15,2) not null ,
组名
含义
用途
ccdbadm
系统管理组
SYSADM特权是DB2中可用的能力最强的一组特权
db2fadm1
受保护组
为受保护的“用户定义函数”(UDF)和存储过程创建的一个组
ccadmgrp
呼叫中心管理模块组
为“管理”界面提供
cccagrp
CSR管理组
为CSR的管理提供
cccsrgrp
CSR组
为CSR提供
节点组是一个或多个数据库分区组成的集合。当您想为数据库创建表时,首先创建将存储表空间的节点组,然后创建将存储表的表空间。有关节点组的更多信息,参见"节点组和数据分区"。有关数据库分区的定义,参见"DB2并行性概念概述"。
一个数据库由称为表空间的部件组成。表空间的定义和属性记录在数据库系统编目中。一旦创建了一个表空间,您就可以在此表空间中创建表。会给一个表空间分配一个容器。容器是物理存储器的一种分配形式(如文件或设备)。表空间驻留在节点组中。
临时空间(诸如排序或重新组织表、创建索引和连接表这样的操作需要临时空间):temporary tablespace
我们使用:/db2sms/tmp4k
操作:现在,在/db2sms下创建目录usrts、systs、tmp4k。
cd /db2sms
mkdir usrts
mkdir systs
mkdir tmp4k
一.3.5.1
在缺省情况下,用户表、临时表和系统目录表分属于独立的表空间。他们在缺省驱动器里创建。
空间的分配有如下几个方面:
用户空间(用于存储将包含数据的表):user tablespace
我们使用:/db2sms/usrts
系统目录表(如"系统目录表"所述):catalog tablespace
我们使用:/db2sms/systs
ccivr
ccivrgrp
为IVR提供
ccrep
ccrepgrp
为前台报表提供
ccintf
ccintgrp
为主机接口、MQ、CIF接口等提供
ccurept
ccuregrp
为后台报表提供
一.3.3
要实现节点间通信,需要配置服务端口。
对于一些管理任务,数据库管理服务器必须建立与所有节点的通信。为此,必须在tcp_services_file中为参与此实例的每个主机定义一个命名的TCP端口。
命令:db2start; db2admin start
停止:
以实例拥有者(这里是ccdb)用户身份登录
命令:LANG=zh_CN; db2stop; db2admin stop
一.3
一.3.1
在建库之前,首先保证已建立datavg卷组(由root建立),并分配了逻辑卷。
F50有两个VG:rootvg(HDISK1)和datavg(HDISK0、HDISK2)。
关于db2命令行参数的使用,可参阅《Command Reference》一书。
操作:为了建立表空间,我们只需要运行SHELL文件creSpaceAll.sql如下:
db2 -t -fcreSpaceAll.sql–zcreSpaceAll.log
操作者:实例拥有者ccdb。
一.3.6
一.3.6.1
建立数据库xpress,使用别名为cti_xdb,指定语言为中文:CN,GBK。使用的系统空间为上面所说三个目录。使用的SHELL程序为:creDbAll.sql。
-- ===========================================================
-- Table: CF_TRAN_CAN_LOG
-- ===========================================================
create table CF_TRAN_CAN_LOG
其中,db2cdb2inst1是在/etc/services文件中定义的通信端口。
一.3.5
总共使用的空间有:
一个索引表空间(设备)
一个系统编目表空间(文件系统)
一个临时表空间(文件系统)
一个数据表空间存放客户信息数据(设备)
一个数据表空间存放操作流水数据(设备)
一个表空间存放各种编码表(文件系统)
例如,定义的db2inst包括两个主机:hostA和hostB。正如"环境示例"中所指定,在两个主机上不使用端口16000。因此,必须将如下行插入到hostA和hostB的tcp_services_file中。
db2ccmsrv 16000/tcp
操作:为ccdb配置服务端口(如果50000或50001已经被占用,则换用其他端口)
ccfaxgrp
FAX服务组
为FAX服务器上用户提供
ccivrgrp
IVR组
为IVR提供
ccrepgrp
前台报表组
为前台报表提供
ccintgrp
接口组
为主机接口、MQ、CIF接口等提供
ccuregrp
后台报表组
为后台报表提供
一.3.2.2
由root创建用户如下:
用户ID
所属主组
用途
ccdb
ccdbadm
512
Hdisk0
rlv_dbdata2
512
Hdisk0
rlv_dbdata3
512
Hdisk0
rlv_dbdata4
512
Hdisk0
rlv_dbdata5
512
Hdisk0
rlv_dbdata6
512
Hdisk0
一.3.2
在UNIX平台上,用户名和组名必须小写。
一.3.2.1
由root创建用户组如下:
建立约束及触发器10
建立视图11
删除数据库11
删除表11
1.3.7导入导出数据12
删除旧流水数据12
导出数据12
导入数据13
1.3.8权限管理13
认证14
数据库系统特权14
数据库对象授权14
程序包绑定(BIND)到数据库并授权16
1.3.9数据库备份和恢复方案17
离线备份18
在线备份18
1.4配置客户端19
process_space:目的是存放各流水、报表等动态数据;
st_tab_space:目的是存放静态编码和XPRESS系统原有表的数据。
建立表空间的例子为
create regular tablespace index_space pagesize 4096 managed by database using (device'/dev/rlv_index1' 128000, device'/dev/rlv_index2' 128000, device'/dev/rlv_index3' 128000) extentsize 64 prefetchsize 32;
一.3.4
然后,创建实例:
使用db2icrt命令来创建附加实例,输入:
DB2DIR/instance/db2icrt -u FencedID instance_name
其中instance_name是最多八个字符的字母数字字符串,且其中DB2DIR= /usr/lpp/db2_05_00
db2icrt命令的语法如下:
操作:
db2 -t -f creDbAll.sql–z creDbAll.sql
操作者:实例拥有者ccdb。
一.3.6.2
建表分为两个模块:XPRESS原有模块和CALL CENTER新模块。所有的建表功能都封装在两个SHELL程序(creTabCC.sql,reTabXPE.sql)中。如果系统需要作调整,则只需调整这两个模块即可。SHELL中,指出表名、各字段定义、注解以及主键和主索引,同时定义了使用的表空间。例如:
实例拥有者,拥有对实例、ccdb数据库的所有权利
db2fenc1
db2fadm1
为受保护的“用户定义函数”(UDF)和存储过程创建
ccadm
ccadmgrp
为“管理”界面提供
cccsrad
cccagrp
为CSR的管理提供
cccsr
cccsrgrp
为CSR提供
ccfax
ccfaxgrp
为FAX服务器上用户提供
操作者:实例拥பைடு நூலகம்者ccdb。
一.3.5.2
在一个数据库内创建表空间,会将容器分配到表空间,并在数据库系统编目中记录它的定义和属性。然后我们就可以在此表空间内创建表。