DB2新建表空间及导入导出数据

DB2新建表空间:

su到相应的数据库用户下

db2 connect to 数据库名
db2(进入模式)

create bufferpool bp32k  all nodes size -1 pagesize  32k(一个表空间对应一条)

......

force application all 

drop tablespace 表空间名
CREATE REGULAR TABLESPACE PUBIDX
    PAGESIZE 8192
    MANAGED BY DATABASE
    USING( FILE '/路径/文件名' 100 M )
    BUFFERPOOL BP32K
(其中'/路径/文件名'是自己设置的,文件名最好与表空间名相同,执行后,在相应的路径下看文件是否生成)

注意:

1)需要用db2inst1给用户赋权:db2 grant connect ,bindadd,createtab on database to user 用户名

2)确定用户已经加在db2iadm1组里:usermod -a -G db2iadm1 用户名

3)目录(即创建表空间的'/路径/文件名'的装载表空间文件的外部目录)的权限需要是db2inst1 db2iadm1的

DB2新建临时表空间:

CREATE TEMPORARY TABLESPACE 临时表空间名

PAGESIZE 32K

MANAGED BY DATABASE

USING(FILE'/路径/文件名' 128000)

EXTENTSIZE 80 bufferpool bp32k 

DB2导入:

导入表结构的SQL文件:db2 -tvf ****.sql

导入dmp表数据:import from ****.dmp of ixf/del insert into 数据库名.表名 (确定DMP文件是ixf格式还是def格式)

DB2导出:

表结构: db2look -d 数据库名 -a -e -x -o ****.sql

表数据:export to 表名.dmp  of ixf select * from 表名(导出单个表数据)

                db2move 数据库名export -u db2inst1 -p 密码

删除用户下的所有表:

select  'DROP TABLE ' || tabname ||' ;'  from syscat.tables where tabschema='SCHAME大写的'

你可能感兴趣的:(数据库)