设为首页 收藏本站
查看: 1187|回复: 0

[经验分享] DB2操作流程

[复制链接]

尚未签到

发表于 2016-11-18 06:50:52 | 显示全部楼层 |阅读模式
  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"

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-301801-1-1.html 上篇帖子: DB2环境设置 下篇帖子: 如何在DB2命令窗口执行sql脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表