db2数据库的操作以及一些常见问题解决

前两天发现自己的db2数据库数据已经占用系统盘50多个G资源,导致系统盘满了,所以写的这篇文章不会有截图出现。。。虽然真的是刚接触的时候
就个人而言仅了解9.7版本还有管理工具,虽然很难用,但是10.0以上版本就不存在管理工具,只能用管理命令行工具操作数据库。。
1、登录数据库 db2
2、查看当前数据库实例详细列表 list database directory
3、创建数据库 create db 数据库名称
4、删除数据库 drop db 数据库名称
5、连接数据库 connect to 数据库名称 user 用户名 using 名称
6、导出数据库表(此方法很适合数据量很大的表导出,超级快)export to D:user.del of del select * from user
这里写图片描述
这里写图片描述
7、还有一点很重要的是可能表字段很长,我记得有个项目的字段每个都达到varchar(1024),然后数据库见不上表,找了好长时间才找到问题就是数据库表空间不足,直接这样创建就可以,,,

create database 数据库名称 automatic storage yes  using codeset UTF-8 territory US pagesize 32768;

下面是自己找这个解决的一些连接和方案。。。

--首先创建一个页大小为32k的缓冲池
 CREATE BUFFERPOOL buf1 IMMEDIATE  SIZE 250 NUMBLOCKPAGES 108 BLOCKSIZE 32 PAGESIZE 32 K ;

-然后使用这个缓冲池
    CREATE  LARGE  TABLESPACE ts2 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 32 OVERHEAD 10.5 PREFETCHSIZE 32 TRANSFERRATE 0.14 BUFFERPOOL  buf1;


修改事务日志大小
    update db cfg using LOGFILSIZ 10240 --日志文件大小
    update db cfg using LOGPRIMARY 100 --主日志文件个数
    update db cfg using LOGSECOND 100 --辅助日志文件的个数



//新建缓冲池以及临时表空间
CREATE BUFFORPOOL BUF1 PAGESIZE 32K;
CREATE TEMPORARY TABLESPACE mysystmp1 IN DATABASE PARTITION GROUP IBMTEMPGROUP  PAGESIZE 32K  MANAGED BY SYSTEM USING ('D:\DB2\NODE0000\NEWUMPDB\T0000004') EXTENTSIZE 32 PREFETCHSIZE 32 BUFFERPOOL BUF1 DROPPED TABLE RECOVERY OFF;

详细可查看http://blog.csdn.net/m0_37373806/article/details/56843471帮助你在已有数据库的情况下解决表空间不足问题。
今天想起来整理这些问题,可能会有遗漏,后期补充吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值