db2快速入门指南
- 格式:doc
- 大小:471.50 KB
- 文档页数:15
安装DB2企业版数据库
1. Windows环境
更改安装路径为d:\IBM\SQLLIB
默认端口50000,可以更改
安装时需要建db2admin用户,权限为系统管理员,为了安全一定要有密码
DB2安装目录结构
\SQLLIB安装的根目录,包括README文件
\SQLLIB\ADSM包含ADSTAR分布式存储管理器文件
\SQLLIB\BIN包含DB2工具的可执行文件
\SQLLIB\BND包含DB2工具的绑定文件
\SQLLIB\CC包含运行控制中心所需的文件
\SQLLIB\CFG包含默认的系统配置文件
\SQLLIB\CONV包含代码页转换表文件
\SQLLIB\DB2默认的实例目录
\SQLLIB\DB2DAS00缺省的DB2管理服务器目录
\SQLLIB\DOC包含DB2联机手册
\SQLLIB\FUNCTION默认的用户自定义函数目录
\SQLLIB\FUNCTION\UNFENCED默认的非隔离用户自定义函授目录
\SQLLIB\HELP联机帮助文件
\SQLLIB\JAVADB2所需的JAVA类库
JAVA12包含JDK1.2的支持程序
\SQLLIB\MISC包含HTML搜索服务器文件
\SQLLIB\MSG\PRIME包含信息文件
\SQLLIB\QP包含QUERYPATROLLER的客户端文件
\SQLLIB\SAMPLES包含样例程序和样例脚本
\SQLLIB\SPMLOG包含DB2同步点管理器日志文件
\SQLLIB\THNSETUP包含瘦客户端安装文件
2. Unix环境
安装比较麻烦,AIX简单内核参数调整少,其他调整比较多。
db2文档有说明。
DB2安装目录结构
README安装的根目录,包括README文件
ADM包含系统管理工具文件 ADSM包含ADSTAR分布式存储管理器文件
BIN包含DB2工具的二进制可执行文件
BND包含DB2工具的绑定文件
CC包含运行控制中心所需的文件
CFG包含默认的系统配置文件
CONV包含代码页转换表文件
DOC包含DB2联机手册
FUNCTION默认的用户自定义函数目录
FUNCTION\UNFENCED默认的非隔离用户自定义函授目录
INSTALL包含安装程序
INSTANCE包含实例脚本
JAVADB2所需的JAVA类库
LIBDB2库文件
MAP包含DB2CONNECT使用的映射文件
MISC包含HTML搜索服务器文件
SAMPLES包含样例程序和样例脚本
MSG\$L包含DB2信息文件
3. Windows环境默认服务
数据库管理 DB2DAS - DB2DAS00
administrator或db2admin用户登录操作系统
启动
方法1:直接在【服务】中启动
如果db2admin更改密码,那么服务属性登录项中密码也需要相应更改,否则不能正常启动。
或使用命令更改与"管理服务器"相关的口令
db2admin setid username password
方法2:【开始】->【运行】db2cmd->db2admin start
停止
方法1:直接在【服务】中停止
方法2:【开始】->【运行】db2cmd->db2admin stop
数据库实例服务DB2 - DB2-0 (建库后产生)
启动
方法1:直接在【服务】中启动
方法2:【开始】->【运行】db2cmd->db2start
停止
方法1:直接在【服务】中停止
方法2:【开始】->【运行】db2cmd->db2stop
4. UNIX环境默认服务
数据库管理服务DB2AS
dasusr1用户登录操作系统
启动管理服务db2admin start
停止管理服务db2admin stop
数据库实例服务
db2inst1用户登录操作系统
启动实例服务db2start
停止实例服务db2stop
查看db2信息技巧
【开始】->【运行】db2cmd,进入db2环境
db2 ?
列出db2管理命令
db2?COMMAND显示命令信息
db2?SQLnnnn显示这个SQLCODE的解释信息
DB2 SQL error: SQLCODE: -302, SQLSTATE: 22001, SQLERRMC: null
以上是程序中捕获的错误信息,查看解释信息:
db2 ? sql302
DB2?DB2nnnn显示这个DB2错误的解释信息
DB2 V8.2信息中心
/infocenter/db2luw/v8/index.jsp
DB2 V9.1信息中心
/infocenter/db2luw/v9/index.jsp
建立数据库对象过程
1. 建库,数据库名称AWPDB,系统表空间为SMS,数据表空间为DMS。
2. 建BUFFERPOOL
足够的缓冲池大小是数据库拥有良好性能的关键所在,因为它可以减少磁盘 I/O 这一最耗时的操作。大型缓冲池还会对查询优化产生影响,因为更多的工作可在内存中完成。
默认的IBMDEFAULTBP为4K页大小的,还需根据表空间情况建立不同页大小的BUFFERPOOL,页的数量根据内存而定。
如8K BUFFERPOOL 使用内存2G:
CREATE BUFFERPOOL BP_8K SIZE 262144 PAGESIZE 8192 NOT EXTENDED
STORAGE;
3. 建表空间
表空间
数据库中的所有数据都存储在许多表空间中。可以认为表空间是孩子而数据库是其父母,其中表空间(孩子)不能有多个数据库(父母)。由于表空间有不同用途,因此根据它们的用途和管理方式将它们分类。
根据用途有五种不同的表空间:
1. 目录表空间
每个数据库只有一个目录表空间,它是在发出 CREATE DATABASE 命令时创建的。目录表空间被 DB2 命名为 SYSCATSPACE,它保存了系统目录表。总是在创建数据库时创建该表空间。
2. 常规表空间
常规表空间保存表数据和索引。它还可以保存诸如大对象(Large Object,LOB)之类的长数据,除非这些数据显式地存储在长表空间中。如果某些表空间是数据库管理的空间(Database Managed Space,DMS),则可以将表及其索引分别放到单独的常规表空间中。每个数据库中必须至少有一个常规表空间。创建数据库时指定该表空间的缺省名为 USERSPACE1。
3. 长表空间
长表空间用于存储长型或 LOB 表列,它们必须驻留在 DMS 表空间中。它们还可以存储结构化类型的列或索引数据。如果没有定义长表空间,那么将把 LOB 存储在常规表空间中。长表空间是可选的,缺省情况下一个都不创建。
4. 系统临时表空间
系统临时表空间用于存储 SQL 操作(比如排序、重组表、创建索引和连接表)期间所需的内部临时数据。每个数据库必须至少有一个系统临时表空间。随数据库创建的系统临时表空间的缺省名为 TEMPSPACE1。
5. 用户临时表空间
用户临时表空间存储已声明的全局临时表。创建数据库时不存在用户临时表空间。至少应当创建一个用户临时表空间以允许定义已声明的临时表。用户临时表空间是可选的,缺省情况下一个都不创建。
表空间管理
可以用两种不同的方式管理表空间:
1. 系统管理的空间(SMS)
SMS 表空间由操作系统进行管理。容器被定义成常规操作系统文件,并且是通过操作系统调用访问的。这意味着所有的常规操作系统功能将处理以下内容:操作系统将缓冲 I/O;根据操作系统约定分配空间;如有必要就自动扩展表空间。但是,不能从 SMS 表空间删除容器,并且仅限于将新的容器添加到分区的数据库。前一节中所说明的那三个缺省表空间都是 SMS。
2. 数据库管理的空间(DMS)
DMS 表空间是由 DB2 管理的。可以将容器定义成文件(在创建表空间时将把给定的大小全部分配给它们)或设备。分配方法和操作系统允许多少 I/O,DB2 就可以管理多少 I/O。可以通过使用 ALTER TABLESPACE 命令来扩展容器。还可以释放未使用的那部分 DMS 容器(从 V8 开始)。
页大小根据下表限定了可放到表空间中的表的行长度和列数:
页大小 行大小限制 列数限制 最大容量
4 KB 4 005 500 64 GB
8 KB 8 101 1 012 128 GB
16 KB 16 293 1 012 256 GB
32 KB 32 677 1 012 512 GB
说明:DB2 V9.5及以后没有此限制
建表空间时需要指定BUFFERPOOL,并且不同页大小的表空间需要对应不同的页大小的BUFFERPOOL。
区别:Oracle建库时页大小如果是8K,那么表空间都是8K。
DB2建库默认方式页大小为4K,可以指定页大小,并且具有指定页大小的BUFFERPOOL。
EXTENTSIZE为32 (根据表空间大小调整,25M与250M之间为16,250M与2G之间为32,大于2G为64)
PREFETCHSIZE大小为EXTENTSIZE*容器数量,而windows环境可以同EXTENTSIZE,因磁盘因数。
OVERHEAD 根据磁盘情况设定(用控制中心建表空间时可以详细查看)
TRANSFERRATE根据磁盘情况设定(用控制中心建表空间时可以详细查看)
表空间页大小需要根据实际表字段总长度确定,如:
码表为4K或8K的表空间,
客户、账户表为8K的表空间
流水表为16K的表空间。
3. 建立用户
需要在操作系统建用户,如AWP,隶属于Users。
使用控制中心新建数据库用户,选择操作系统用户AWP,再选择相应的权限。
GRANT
CREATETAB,BINDADD,CONNECT,CREATE_NOT_FENCED_ROUTINE,IMPLICIT_SCHEMA,LOAD,CREATE_EXTERNAL_ROUTINE
ON DATABASE TO USER AWP;
4. 建表、索引、视图、函数、存储过程、序列等
使用AWP用户建立数据库对象。