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

[经验分享] DB2 开发系列 第二部分 数据库的创建

[复制链接]

尚未签到

发表于 2016-11-18 09:49:54 | 显示全部楼层 |阅读模式
好长时间没来更新了,最近终于闲了下来也有时间更新。


概述
   DB2数据库的表空间也成为表空间容器,对于表空间的容器分:SMS和DMS两种。
1、      SMS是由操作系统自动分配存储空间,这种方式的特点是表空间以文件夹的系统是存在,其优点是:无需过多的管理表空间,表空间以文件的形式存放,操作系统随数据中数据的增长,自动分配新的文件来存放数据等,缺点:性能不如DMS好,不可以将数据表空间和索引表空间分离等;
2、      DMS是由人工分配存储空间,这种存储方式的特点是表空间以文件或是裸设备的形式存在,其优点是:能启用数据库的分区并行性,提高数据库的访问性能,减少数据的数据碎片,可以将数据表空间和索引表空间分离等,其缺点相对于SMS来讲,需要更多的人工干预管理。
在创建数据库之前首先须确定将使用什么样的表空间存储形式来存放。


创建数据库

先决条件:创建数据库时必须知道准备引用的容器的设备和文件名,必须知道与要分配给表空间的每个设备或文件名相关联的空间。

  1、SMS存储形式下的数据库创建方式:
    CREATE DATABASE <database_name>      CATALOG TABLESPACE       MANAGED BY SYSTEM USING ('<path>')        EXTENTSIZE <value> PREFETCHSIZE <value>     USER TABLESPACE       MANAGED BY SYSTEM USING (FILE'<path>')        EXTENTSIZE <value> PREFETCHSIZE <value>     TEMPORARY TABLESPACE       MANAGED BY SYSTEM USING ('<path>')       EXTENTSIZE <value> PREFETCHSIZE <value>     WITH "<comment>"其中:database_name:数据库名称alias_name:数据库别名('<path>'):数据库文件存放路径EXTENTSIZE <value> PREFETCHSIZE <value>:分别为数据表空间的页大小和预大小<size>:容器的页大小,每一个页的大小是4k; 例如下面的例子:  CREATE DATABASE TEST ON D: ALIAS TESTCATALOG TABLESPACE   MANAGED BY SYSTEM USING ('D:\TEST.DB\SYS’)         EXTENTSIZE 8 PREFETCHSIZE 8USER TABLESPACE       MANAGED BY SYSTEM USING ('D:\TEST.DB\DATA’)              EXTENTSIZE 16 PREFETCHSIZE 16  TEMPORARY TABLESPACE     MANAGED BY SYSTEM USING ('D:\TEST.DB\TEMP')      EXTENTSIZE 32 PREFETCHSIZE 32TEMPORARY TABLESPACE   WITH "测试用数据库" 2、DMS存储形式下的数据库创建方式:   CREATE DATABASE <database_name>      CATALOG TABLESPACE       MANAGED BY DATABASE USING (FILE '<path>',<size>)         EXTENTSIZE <value> PREFETCHSIZE <value>     USER TABLESPACE       MANAGED BY DATABASE USING (FILE '<path>',<size>)         EXTENTSIZE <value> PREFETCHSIZE <value>     TEMPORARY TABLESPACE       MANAGED BY DATABASE USING (FILE '<path>’, <size>)         EXTENTSIZE <value> PREFETCHSIZE <value>     WITH "<comment>"其中:  <size>:容器的页大小,每一个页的大小是4k; 例如:  CREATE DATABASE <database_name>      CATALOG TABLESPACE       MANAGED BY DATABASE USING (FILE ' D:\TEST.DB\SYS ',5000)         EXTENTSIZE 32 PREFETCHSIZE 64     USER TABLESPACE       MANAGED BY DATABASE USING (FILE ' D:\TEST.DB\DATA',5000)          EXTENTSIZE 32 PREFETCHSIZE 64     TEMPORARY TABLESPACE       MANAGED BY DATABASE USING (FILE ' D:\TEST.DB\TEMP’,2000)          EXTENTSIZE 32 PREFETCHSIZE 64     WITH "测试用数据库" 三、创建、更改缓冲池  1、创建缓冲池: CREATE Bufferpool Bufferpool_name SIZE <value> PAGESIZE <page_size> K其中:   Bufferpool_name:缓冲池名称   Value:缓冲池分配的页数page_size:页大小 例如:        CREATE Bufferpool BUFF_DATA SIZE 250 PAGESIZE 4 K 3、      更改缓冲池大小:      ALTER BUFFERPOOL Bufferpool_name  SIZE value  其中:     Bufferpool_name:缓冲池名称     Value:缓冲池分配的页数   例如:     ALTER BUFFERPOOL BUFF_DATA SIZE 25000 4、      将缓冲池与表空间关联   ALTER TABLESPACE tablespace_name BUFFERPOOL Bufferpool_name  其中:     tablespace_name:表空间名称     Bufferpool_name:缓冲池名称   例如:       ALTER TABLESPACE TIMMS_DATA BUFFERPOOL BUFFER_DATA

运维网声明 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-301986-1-1.html 上篇帖子: db2数据迁移 下篇帖子: [转]清空 DB2 表中数据的几种方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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