DB2中服务器,实例,数据库,表空间|缓冲池|日志文件,表的关系

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qichangjian/article/details/88997923

DB2中服务器,实例,数据库,表空间|缓冲池|日志文件,表的关系图如下:
在这里插入图片描述

1.DB2服务器

所有的 DB2 服务器版本都包含相同的核心组件;用户可根据各自所需来选择不同价格的组件配置。图 1.1 图示了 DB2 产品的不同版本
在这里插入图片描述
所有 DB2 服务器拥有相同的核心组件,如果您愿意,您可以将 DB2 Express-C 升级到任何 DB2 服务器版本。这也意味着基于某一 DB2版本的应用程序可以无修改地运行在其它的高级的 DB2 版本上。而且从一个版本中所学到的技能同样适用于其它版本

2.实例instance

一个数据库服务器上可以创建多个实例(应用程序运行和创建数据库所必须的独立环境)
必须注意的是每一个实例的端口号必须是唯一的。这样在您远程连接数据库时,此端口号可以保证您能够正确的连接实例。

关键字 例子 解释
db2icrt db2icrt myinst 创建一个新的实例
db2instance set db2instance=myinst 来激活任意DB2 实例
db2ilist 显示系统您当前的所有实例清单
db2start 启动当前实例
db2stop
db2stop force 强制
停止当前实例
db2idrop db2idrop myinst 删除一个实例
db2 get instance 显示当前运行的实例

3.数据库database

在任一实例中都可以创建多个数据库。
数据库是诸如表,视图,索引等对象的集合。
数据库之间是相互独立的单元,因此一个数据库并不与其他数据库共享内部对象

sql例子 解释
db2 create db [dbname] ;
db2 create db [dbname] using codeset GBK territory CN;
Db2 create database using codeset IBM-encCn territory CN; --这样可以支持中文
创建一个新的数据库
db2 connect to [dbname] – 连接到本地数据库
db2 connect to [dbname] user [username] using [password] --连接到远程数据库
连接到数据库
db2 connect reset 断开连接数据库
db2 drop database [dbname] 删除数据库
db2 list db directory 列出所有数据库
db2 list active databases 列出所有激活的数据库
db2 get db cfg 列出所有数据库配置

随着数据库的创建,有几个默认的对象也同时被创建:表空间,表,缓冲池,日志文件。
因为创建这些对象需要一点时间,所以执行数据库创建过程需要几分钟。

4.表空间,缓冲池,日志文件

表空间:

SYSCATSPACE 表空间包含目录表(Catalog)。这个目录也以数据字典的形式存在于其他关系数据库管理系统中。它包含不可更改和不可删除的系统信息,否则数据库无法正常工作。当 DB2实现一些类似排序等需要额外空间的操作时,就会用到表空间 TEMPSPACE1
如果创建一个表的时候没有指定空间,系统通常会使用 USERSPACE1 来存储您的数据库表。
用 CREATE TABLESPACE 语句创建自己的表空间,显示了一个表空间MYTBLS1

缓冲池

缓冲池是数据库使用的高速缓冲存储器。您可以创建多个缓冲池,但是至少应该有一个缓冲池,它的大小与现存的表空间页的大小相同。

日志文件

日志文件用于恢复操作。数据库运行过程中,不仅仅是数据库信息被存储在硬盘上,而且日志文件会存储所有针对数据的操作。

5.表

Db2创建表和其他oracle没有多大差别

CREATE TABLE artists 
	 (artno SMALLINT not null,
	 name VARCHAR(50) with default 'abc',
 	 classification CHAR(1) not null,
 	 bio CLOB(100K) logged,  -- 表示记录日志
 	 picture BLOB(2M) not logged compact  -- 不记录日志
 ) 
 IN mytbls1     -- 指定表空间

猜你喜欢

转载自blog.csdn.net/qichangjian/article/details/88997923
今日推荐