您的位置:首页 > 数据库

db2上新建表空间和数据库

2012-12-08 13:40 363 查看
一、建表空间和数据库

1.在db2ad、db2db和db2ap上均执行:

db2set db2comm=tcpip
db2set db2codepage=1386
2.新建数据库:

db2 create db <dbname> using codeset gbk territory CN collate using identity
3.连接上数据库:

db2 "connect to  <dbname>"
4.创建缓冲池 + 建立表空间;

1).删除旧的表空间:

db2 drop tablespace  tablespace1, tablespace2, tablespace3
2).新建缓冲池:

db2 create bufferpool bp32k all nodes size -1 pagesize 32k
bp32k为该缓冲池的名称;

32K为页大小;

size=-1表示使用缺省的buffpage,而buffpage可以通过db2 get db cfg|grep -i buff参数查看到;

3).新建表空间:

db2 "create regular tablespace  tablespace1 pagesize 32k managed by database using(file '/usr/yixiayizi/tablespace1' 5g) bufferpool bp32k"
db2 "create regular tablespace  tablespace2 pagesize 32k managed by database using(file '/usr/yixiayizi/tablespace2' 10g) bufferpool bp32k"
db2 "create regular tablespace  tablespace3 pagesize 32k managed by database using(file '/usr/yixiayizi/tablespace3' 2g) bufferpool bp32k"
注意(file '/usr/yixiayizi/tablespace1' 5g)的设置:

第一个参数:

当指向外置盘时,file改为device;

当指向文件路径时,为file;

第二个参数:需要是绝对路径;

第三个参数:该表空间的大小;

关于表空间和缓冲池的说明见如下网页:
http://www.ibm.com/developerworks/cn/data/library/techarticles/0212wieser/0212wieser.html
5.调整表空间大小:

ALTER TABLESPACE  <tablespace1> RESIZE ( FILE '/cstp/usr/db2ad/db2ad/ <tablespace1>' 5g )
6.调整缓冲池大小:

db2 alter bufferpool bp32k size 2g
--------------------------------------------------------------------------------------------

远程客户端的配置网络:

1.db2ad账户下:

1). 首先查看/etc/services中db2各个服务的端口号:

more /etc/services

可以看到如下信息:

DB2_db2ad 60040/tcp

DB2_db2ad_1 60041/tcp

DB2_db2ad_2 60042/tcp

DB2_db2ad_END 60043/tcp

2).
db2 update dbm cfg using SVCENAME DB2_db2ad
这样在服务端实例对应的端口号就是60040;

------------

2.db2db账户下:

1).
db2 catalog tcpip node  <node_name> remote 172.17.252.214 server 60040
(上面操作的反编目:db2 uncatalog node <node_name>)

2).db2 list node directory可以看到如下信息:

Node Directory

Number of entries in the directory = 1

Node 1 entry:

Node name = <node_name>

Comment =

Directory entry type = LOCAL

Protocol = TCPIP

Hostname = 172.17.252.214

Service name = 60040

3).
db2 catalog db  <dbname> at node  <node_name>
(上面操作的反编目:db2 uncatalog db <dbname>)

4).db2 list db directory可以看到如下信息:

System Database Directory

Number of entries in the directory = 1

Database 1 entry:

Database alias = <dbname>

Database name = <dbname>

Node name = <node_name>

Database release level = c.00

Comment =

Directory entry type = Remote

Catalog database partition number = -1

Alternate server hostname =

Alternate server port number =

--编目系统数据库目录

-----------------------

授权:

在db2ad账户下,给db2db授权使用表空间:

db2 "grant use of tablespace  <tablespace1> to user db2db"
db2 "grant use of tablespace  <tablespace2> to user db2db"
db2 "grant use of tablespace  <tablespace3> to user db2db"
二、建表

切换到db2db用户,执行建表的sql语句:

db2 -vf tmp.sql
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: