DB2如何创建表空间 如何创建数据库 如何创建缓冲池
标签: db2数据库system脚本linuxwindows
2012-06-13 19:16 8411人阅读 评论(0) 收藏 举报

版权声明:本文为博主原创文章,未经博主允许不得转载。

如果你是在一个项目的角度,要建立表空间、建立缓冲池、建立数据库,到最终完成项目连接DB2成功的话,请看完这篇文章

对于开发近三年左右的程序员,我们总会碰到DB2数据库的项目(做银行、政府、国企等项目尤其如此),我是搞java的,我相信大部分3年左右java开发经验的程序员在第一次单独面对一个DB2的开发项目都会有点痛苦(这个痛苦和公司有直接原因,如果公司事先对你做了DB2的培训,那这个文章你完全不用理会看了)

在我们拿到一个项目的源码,当项目经理让你把它在DB2上跑起来的时候,我们首先做的就是的DB2软件安装上,然后创建数据库和表空间还有缓冲池(要建缓冲池的原因是因为大的项目你不建的话,导致项目运行起来后总是会报表空间不足的错误)。既然心里的估算好了,我们就会去网上搜索怎么去创建的文章了,但是网上我搜索了N多都是些零零碎碎的,说的很单一。  这经过好几天的痛苦挣扎整理后,我把我项目中建立DB2相关数据库对象的脚本全部贴出来

操作系统环境: windows(linux的方法我下面也会贴出来)

1、首先在windows安装完DB2以后,打开DB2的命令行,然后依次执行下面代码.(下面有一句话脚本会提示你一个类似异常的信息,不予以理会,继续执行下面别的代码)
[sql] view plain copy

db2 "CREATE DB TestDB using codeset UTF-8 territory us"  
      
    db2 "UPDATE DB CFG FOR TestDB USING applheapsz 4096"  
      
    db2 "UPDATE DB CFG FOR TestDB USING app_ctl_heap_sz 1024"  
      
    db2 "UPDATE DB CFG FOR TestDB USING stmtheap 8192"  
      
    db2 "UPDATE DB CFG FOR TestDB USING dbheap 2400"  
      
    db2 "UPDATE DB CFG FOR TestDB USING locklist 1000"  
      
    db2 "UPDATE DB CFG FOR TestDB USING logfilsiz 1000"  
      
    db2 "UPDATE DB CFG FOR TestDB USING logprimary 12"  
      
    db2 "UPDATE DB CFG FOR TestDB USING logsecond 20"  
      
    db2 "UPDATE DB CFG FOR TestDB USING logbufsz 32"  
      
    db2 "UPDATE DB CFG FOR TestDB USING avg_appls 5"  
      
    db2 "UPDATE DB CFG FOR TestDB USING locktimeout 30"  
      
    db2 CONNECT TO TestDB   
      
    db2 "CREATE BUFFERPOOL icmsbuffer SIZE 1000 PAGESIZE 32K"  
      
    db2 "CREATE TABLESPACE icmsspace PAGESIZE 32K MANAGED BY SYSTEM USING ('D:\db2admin\sqlt0003.0') BUFFERPOOL icmsbuffer"(根据实际情况确定是否是D盘下的db2admin\sqlt0003.0目录,如果没有,请先创建)  
      
    db2 "CREATE SYSTEM TEMPORARY TABLESPACE ICMSBUF PAGESIZE 32 K MANAGED BY SYSTEM USING ('D:\db2admin\sqlt0004.0') BUFFERPOOL ICMSBUFFER"(根据实际情况确定是否是D盘下的db2admin\ sqlt0004.0目录,如果没有,请先创建)  
      
    db2 "DISCONNECT icms"  
      
    db2 "TERMINATE"

2、建立完成之后数据库这一块你就完全搞定了,下面就是你项目总如何去连接的问题了 。 (如果你项目连接DB2不成功,你可以google,或者给我留言)

下面说在linux下的创建方法:其实脚本一样

数据库是从 DB2 命令界面创建的。在启动命令界面之前,必须符合以下条件:

1、DB2必须是活动的。

2、对于 AIX、Linux和 Solaris, DB2 实例拥有者标识(例如 db2inst1)必须是 db2admin组的一部分。db2admin组是在 DB2通用数据库安装过程中创建的。

3、修改修改环境变量,能够正确执行db2的命令

4、根据实际环境修改标红色的路径,比如:/home/icms/。

5、因在执行的过程中脚本出错,后续回滚将会非常非常,建议一个个脚本执行。

[sql] view plain copy

db2 "CREATE DB icms using codeset UTF-8 territory us"  
      
    db2 "UPDATE DB CFG FOR icms USING applheapsz 4096"  
      
    db2 "UPDATE DB CFG FOR icms USING app_ctl_heap_sz 1024"  
      
    db2 "UPDATE DB CFG FOR icms USING stmtheap 8192"  
      
    db2 "UPDATE DB CFG FOR icms USING dbheap 2400"  
      
    db2 "UPDATE DB CFG FOR icms USING locklist 1000"  
      
    db2 "UPDATE DB CFG FOR icms USING logfilsiz 1000"  
      
    db2 "UPDATE DB CFG FOR icms USING logprimary 12"  
      
    db2 "UPDATE DB CFG FOR icms USING logsecond 20"  
      
    db2 "UPDATE DB CFG FOR icms USING logbufsz 32"  
      
    db2 "UPDATE DB CFG FOR icms USING avg_appls 5"  
      
    db2 "UPDATE DB CFG FOR icms USING locktimeout 30"  
      
    db2 CONNECT TO icms  
      
    db2 "CREATE BUFFERPOOL icmsbuffer SIZE 1000 PAGESIZE 32K"  
      
    db2 "CREATE TABLESPACE icmsspace PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/icms/sqlt0003.0') BUFFERPOOL icmsbuffer"  
      
    db2 "CREATE SYSTEM TEMPORARY TABLESPACE ICMSBUF PAGESIZE 32 K MANAGED BY SYSTEM USING ('/home/icms/sqlt0004') BUFFERPOOL ICMSBUFFER"  
      
    db2 "DISCONNECT icms"  
      
    db2 "TERMINATE"

DB2操作流程的更多相关文章

  1. DB2 概览

    2006:IBM公布DB2.9.将数据库领域带入XML时代.IT建设业已进入SOA(Service-Oriented Architecture)时代.实现SOA.其核心难点是顺畅解决不同应用间的数据交 ...

  2. DB2重启数据库实例

    DB2重启数据库实例时,有时停止实例会失败,此时需要先确认没有应用链接数据库,然后再关闭数据库实例,并重新启动. 1.查看是否有活动的链接 命令:db2 list applications for d ...

  3. 你搞懂 ORACLE、 SQLSERVER、MYSQL与DB2的区别了吗

    ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性:    Oracle.MYSQL与DB2可在所有主流平台上运行:    SQL Server只能在Windows下运行: --安 ...

  4. C# 连接DB2字符串 Oracle免安装客户端连接字符串

    以下是DB2连接数据库 1)使用IBM.Data.DB2链接DB2数据库 2)必须安装DB2客户端,IBM.Data.DB2在安装的BIN里可以找到 3)注意一下DB2客户端版本问题,我的就是WIN7 ...

  5. DB2错误码信息

    00 完全成功完成 表 3  01 警告 表 4  02 无数据 表 5  07 动态 SQL 错误 表 6  08 连接异常 表 7  09 触发操作异常 表 8  0A 功能部件不受支持 表 9  ...

  6. DB2数据库参数建议(AIX)

    修改用户最大进程数: chdev -l sys0 -a maxuproc=' 用户资源配置:对实例用户,fence用户,应用用户添加如下限制: db2inst1 : fsize=- fsize_har ...

  7. db2定界符

    在DB2数据库中,在导出DEL文件时,默认的字符分隔符是".字段分隔符是, (逗号).有一个需求是要为Oracle数据库提供数据,因此就想使用"|"作为数据的字段分隔符. ...

  8. db2基础

    DB2知识文档 一.db2 基础 基本语法 注释:"--"(两个减号) 字符串连接:"||" 如set msg='aaaa'||'bbbb',则msg为'aaa ...

  9. db2 日期时间格式

    db2日期和时间常用汇总 1.db2可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值. SELECT 'HELLO DB2 ...

随机推荐

  1. [shell基础]——awk命令

    关于awk awk是一个强大的文本分析工具,相对于grep的查找.sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大. 简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开 ...

  2. 不变性、协变性和逆变性(Invariance, Covariance & Contravariance)

    源码下载 一.里氏替换原则(Liskov Substitution Principle LSP) 我们要讲的不是协变性和逆变性(Covariance & Contravariance)吗?是的 ...

  3. 12、android socket使用demo:网络聊天

    目录: 一.效果图 二.原代码分享 三.代码分析 四.总结 一.效果图如下: 客户端1: 客户端2:           二.原代码分享如下: 1.java代码只有一个 MainActivity.ja ...

  4. JavaScript继承学习笔记

    JavaScript作为一个面向对象语言(JS是基于对象的),可以实现继承是必不可少的,但是由于本身并没有类的概念,所以不会像真正的面向对象编程语言通过类实现继承,但可以通过其他方法实现继承.(jav ...

  5. Oracle 相关概念详解

    一.前言 笔者对于Oracle数据库的理解,很长时间停留在“镜花水月”的状态,你说不懂吧,又会用,一较真起来吧,对一些基本概念又说不出一个道道来~如果想要在编码的路上走得更远,这个必定也是绕不过的坎, ...

  6. selenium使用IE 浏览器问题

    代码如下: #coding=utf-8 from selenium import webdriver driver=webdriver.Ie() driver.get('https://www.bai ...

  7. openstack与VMware workStation的区别

    免责声明:     本文中使用的部分图片来自于网络,如有侵权,请联系博主进行删除 最近一直在研究云计算,恰好有个同事问了我一个问题:你们研究的openstack到底是什么东西?跟VMware Work ...

  8. Leetcode#148 Sort List

    原题地址 链表归并排序 真是恶心的一道题啊,哇了好多次才过. 代码: void mergeList(ListNode *a, ListNode *b, ListNode *&h, ListNo ...

  9. max_flow(Ford-Fulkerson) 分类: ACM TYPE 2014-09-02 01:50 110人阅读 评论(0) 收藏

    #include <cstdio> #include <iostream> #include <cstring> #include<queue> usi ...

  10. 百度Hi之CSRF蠕虫攻击

    漏洞起因:百度是国内最大的中文搜索引擎.同时百度也提供了百度空间.百度贴吧等BLOG社区服务,拥有海量的用户群,号称全球最大中文社区. 80sec发现过百度产品一系列的安全漏洞,其中一些问题得到了有效 ...