DB2 基础知识
DB2 进程
db2sysc(Linux) / db2syscs(Windows): DB2主系统控制器
db2ckpwd: DB2验证用户面膜进程
db2acd: DB2守护程序,监控运行状态,自动运维
db2wdog: DB2看门狗,主进程db2sysc的父进程。当db2sysc非正常终止,该进程负责清除资源
db2wend: 设防方式进程,用于运行非IBM程序
db2fmp: 设防方式进程,在防火墙外运行用户的存储程序
db2tcpcm: TCP/IP通信监听器
db2agent: 协调应用程序操作数据库
db2agntp: db2agent的副代理
db2pfchr: DB2异步I/O数据预取程序
db2pclnr: DB2异步I/O数据写入程序
DB2内存
实例层、数据库层、应用程序、代理层
当一个实例启动后,系统就为数据库管理器分配共享内存,这通常不需要花费很大的空间。
第一次连接数据库时,就会分配数据库全局内存(Database Global Memory)。
在此区域(内存块)内,缓冲池是最重要的部分之一,其主要用于优化查询性能。缓冲池的大小将决定整个数据库全局内
存(Database Global Memory)的大小。
每个DB2 代理都使用一个代理私有内存。在没有连接集中器的情况下,每一个连接都需要一个代理。一般情况下,一个代理使用大约3-5MB 内存。在有连接集中器的情况下,几个连接可以使用一个代理,因此减少了对物理内存的需求。
DB2最小存储单元:页。允许数据页大小:4K,8K,16K,32K
数据库名称可以由以下字符组成:a-z、A-Z、0-9、@、# 和 $。
名称中的第一个字符必需是字母表字符、@、# 或 $;不能是数字或字母序列 SYS、DBM 或 IBM。
数据库名称或数据库别名是一个惟一的字符串,包含前面描述的一个到八个字母、数字或键盘字符。
缓冲池:表,索引数据在内存中的缓存。减少IO存取,提供异步读取和写入来提高系统性能
表空间:表的容器
类型:普通表空间/大表空间/临时表空间
管理方式分类:系统管理/数据库管理(裸设备)/自动管理(默认)
创建数据库是声明:
显式声明使用自动存储管理:
CREATE DATABASE DB1 AUTOMATIC STORAGE YES
显式声明禁用自动存储管理:
CREATE DATABASE DB1 AUTOMATIC STORAGE NO
创建表空间是声明:
显式声明使用自动存储管理:
CREATE TABLESPACE TS2 MANAGED BY AUTOMATIC STORAGE
隐式声明使用自动存储管理:
CREATE TABLESPACE TS1
INITIALSIZE 500 K
INCREASESIZE 100 K
MAXSIZE 100 M
数据库:
创建数据库:db2 create database
创建数据库后:日志文件、配置信息、历史文件和三个表空间:
1. SYSCATSPACE:这是保存 DB2 系统编目的地方,系统编目跟踪与 DB2 对象相关联的所有元数据。
2. TEMPSPACE1:DB2 用来放置中间结果的临时工作区域。
3. USERSPACE1:默认情况下存放所有用户对象(表、索引)的地方。
删除数据库:db2 drop database
连接数据库:db2 connect to 数据库名
查看数据库名:db2 list db directory
创建表、视图、索引:db2 create table/view/index
删除表、视图、索引:db2 drop table/view/index
创建数据库会默认创建:表空间,表,缓冲池,日志文件
表空间:
SYSCATSPACE:数据字典;
TEMPSPACE1:用于排序等需要额外空间操作使用;
USERSPACE1:用户表默认存储空间
缓冲池:高速缓冲存储器
日志文件:用于恢复操作;存储数据库信息和所以针对数据库的操作
DB2配置:
1. 系统层: 环境变量
2. 实例层: 数据库管理器配置文件
3. 数据库层: 数据库配置文件
4. 系统或者实例层:DB2概要文件注册表
DB2连接
配置连接:db2ca
目录分类:
1. 系统数据库目录:db2 list db directory
2. 本地数据库目录: db2 list db directory on <drive/path>
3. 结点目录: db2 list node directory
4. 数据库连接服务目录:db2 list dcs directory
Comments
Post a Comment