在Linux之上搭建DB2数据库分布式环境DPF指导手册,db2dpf


这篇文章主要为大家介绍了在Linux之上搭建DB2数据库分布式环境的DPF指导手册,不知道怎么搭建的朋友可以和帮客之家的小编一起来学习一下

  DB2的分区架构一般适合于统计类和分析的应用,主要用来为大规模数据处理、高并发数据访问提供支持,其特点使得许多廉价计算机组成集群在一起协同工作以提高海量数据处理的效率成为可能。DB2 数据库分区采用 Share-nothing 体系结构,数据库在一个非共享的环境中被分解为独立的分区,每个分区都具有自己的资源,例如内存,CPU 和磁盘以及自己的数据、索引、配置文件和事务日志。

  本文详细介绍了和记录了db210.5在Linux虚拟化环境下的安装过程,详细操作见下面的内容:

  一、创建用户和组

  1、使用root用户添加系统用户

  /usr/sbin/groupadd -g 1997 db2igrp             

   #instance所在的group,加入这个group的所有用户都具有DBA权限/usr/sbin/groupadd -g 1998 db2fgrp             

  #fenced用户所在的group/usr/sbin/useradd -u 1997 -g db2igrp -d /cbusdb/db2inst1 db2inst1  

  #db2inst1用户/usr/sbin/useradd -u 1998 -g db2fgrp -d /cbusdb/db2fenc1 db2fenc1  

  #db2fenc1用户/usr/sbin/groupadd db2fadmin

  /usr/sbin/useradd -g db2fadmin db2admin

  2、使用root用户添加数据库账号

  /opt/ibm/db2/V10.5/instance/db2icrt -s ese -u db2fenc1 db2inst1

  #在所有的机器上,使用root用户,建立db2 admin server:

  /opt/ibm/db2/V10.5/instance/dascrt -u db2admin#启动db2 admin server:

  db2admin start

  3、修改节点配置文件

  #vim /cbusdb/db2inst1/sqllib/db2nodes.cfg0 cbusdb01 0

  1 cbusdb01 1

  2 cbusdb02 0

  3 cbusdb02 1

  4、修改实例参数

  su - db2inst1

  db2iauto -on db2inst1

  db2set DB2_SKIPINSERTED=on

  db2set DB2_USE_ALTERNATE_PAGE_CLEANING=ondb2set DB2_EVALUNCOMMITTED=on

  db2set DB2_SKIPDELETED=on

  db2set DB2COMM=TCPIP

  db2set DB2FCMCOMM=TCPIP4

  db2set DB2RSHCMD=/bin/rsh

  #注意如果配置的ssh则此处需要修改成

  db2set DB2RSHCMD=/usr/bin/ssh

  db2set DB2CODEPAGE=1386

  db2set DB2TERRITORY=86

  db2set DB2_PARALLEL_IO=*

  5、配置服务端口

  DB2c_db2inst1     61000/tcp

  DB2_db2inst1     61001/tcp

  DB2_db2inst1_1    61002/tcp

  DB2_db2inst1_2    61003/tcp

  DB2_db2inst1_3    61004/tcp

  DB2_db2inst1_4    61005/tcp

  DB2_db2inst1_END  61008/tcp

  6、调整系统参数,设置dpf所需的资源

  /sbin/sysctl -w kernel.sem="250        32000   32      1024"/sbin/sysctl -w kernel.msgmnb=16384

  /sbin/sysctl -w kernel.msgmni=1024

  /sbin/sysctl -w kernel.msgmax=8192

  /sbin/sysctl -w kernel.shmmni=4096

  /sbin/sysctl -w kernel.shmall=2097152

  /sbin/sysctl -w kernel.shmmax=1073741824

  7、修改环境变量

  cat ./sqllib/db2profile  >.profile

  vi .bash_profile  #添加如下信息:

  /cbusdb/db2inst1/sqllib/db2profile

  二、配置主机名

  分别在两台主机上修改如下文件:

  #vi /etc/sysconfig/network

  #-------------------------

  #NETWORKING=yes

  #HOSTNAME=cbusdb01

  #-------------------------

  #vi /etc/hosts

  #-------------------------

  #127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 cbusdb01#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6#192.168.1.122 cbusdb01

  #192.168.1.123 cbusdb02

  #-------------------------

  三、配置rsh

  rsh是远程运行shell的服务.db2使用rsh服务运行启动和停止数据库服务器的命令,以及大部分管理命令.

  1、安装rsh

  #yum install rsh*

  2、配置rsh的安全文件

  #vi /etc/securetty

  #add the content

  #------------------

  #rsh

  #rlogin

  #rexec

  #------------------

  3、修改rsh的配置参数/etc/xinetd.d/rsh ##在生产环境建议配置ssh免密登录

  #vi /etc/xinetd.d/rsh

  service shell

  {

  socket_type  = stream

  wait  = no

  user  = root

  log_on_success  += USERID

  log_on_failure   += USERID

  server  = /usr/sbin/in.rshd

  disable  = no

  }

  4、修改rsh的配置文件rlogin

  #vi /etc/xinetd.d/rlogin

  service login

  {

  disable = no

  socket_type = stream

  wait = no

  user = root

  log_on_success += USERID

  log_on_failure += USERID

  server = /usr/sbin/in.rlogind

  }

  4、免密登陆,实例用户db2inst1的家目录中创建.rhosts文件

  cat $HOME/.rhosts

  cbusdb01 db2inst1

  cbusdb02 db2inst1

  5、CentOS7.0需要单独下载xinetd

  yum install xinetd  #低于此版本可不下载

  6、重启rsh服务

  service xinetd restart

  7、验证rsh服务

  rsh cbusdb01 date

  rsh cbusdb02 date

  #db2_all echo hi 没有返回

  yum install ksh

  四、配置时钟服务器

  1、安装ntp服务器

  #yum install ntp*

  # ntpdate -u 202.112.10.36

  #ntpdate  cn.pool.ntp.org

  #service ntpd start

  #chkconfig ntpd on

  2、修改ntp配置

  #允许内网其他机器同步时间

  restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

  #互联网时间服务器

  server 210.72.145.44 perfer   # 中国国家受时中心server 202.112.10.36

        # 1.cn.pool.ntp.orgserver 59.124.196.83           

   # 0.asia.pool.ntp.org#允许上层时间服务器主动修改本机时间

  restrict 210.72.145.44 nomodify notrap noquery

  restrict 202.112.10.36 nomodify notrap noquery

  restrict 59.124.196.83 nomodify notrap noquery

  #外部时间服务器不可用时,以本地时间作为时间服务

  server  127.0.0.1

  fudge   127.0.0.1 stratum 10

  3、修改时区

  cp -f /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime

  clock -w

  4、在节点2上配置时钟服务器

  */5 * * * * /usr/sbin/ntpdate cbusdb01

  五、配置nfs服务

  1、yum install nfs*

  # yum install portmap rpcbind   #安装nfs客户端

  2、配置需要共享的资源

  #vi /etc/exports

  /cbusdb *(rw,sync,no_root_squash)

  /cbusdblog *(rw,sync)

  3、启动nfs server

  service rpcbind start

  service nfs start

  service nfslock restart

  4、导出资源

  exportfs -rv

  5、显示NFS Server上所有的共享卷

  showmount -e

  6、在客户端挂载共享目录

  #mount 192.168.1.122:/cbusdb /cbusdb

  #vi /etc/fstab

  cbusdb01:/cbusdb /cbusdb nfs rw,timeo=300,retrans=5,hard,intr,bg,nolock,suid

  六、关闭selinux

  vim /etc/sysconfig/selinux

  #SELINUX=disabled

  七、测试、创建数据库

  1、启动数据库

  #db2start

  2、创建数据库

  #db2 "create db cbusdb on /cbusdblog using codeset gbk territory cn"

  到此,我们可以开始我们的数据库分区性能测试之旅了,谢谢阅读,希望能帮到大家,请继续关注帮客之家,我们会努力分享更多优秀的文章。


怎部署DB2的分布式数据库中的位置透明性?


怎创建数据库

什么是SQL呢 SQL就是专门用来做数据库的一门语言 和C语言差不多 (当然功能不紧紧是做数据了 编程啊 都可以..... 这里就不多说了)z这道题用ACCESS 就可以完成了

1 首先 用Access 2000(数据库 )做一个数据库 打开设计器创建表 在点菜单 另存为 名为班级名+自己名字英文简写 最后点保存啦 (每完成系统都是有提示的啦) 第一问 解决
2 打开设计器 上面做的表下面下
创建数据表 名字都是在最后完成时做的 先不用管 然后在输入sID,sName,sSex,sAge,sClass 注意根据后面的要求填写字段 及数据类型 以及
在做其他的问题了将T_Student表的sID字段设置为标识列,种子为1,增量为2。
为T_Student表的sSex(性别)字段设置其默认值为“男”。
为T_Student表的sAge(年龄)字段设置检查约束,规定年龄在0到30岁之间。
为T_KC表的cName(课程名称)字段设置唯一性约束。,规定课程名称不得重复。
生成一个规则t_rule,限制数据的取值范围在(0---100)之间,然后将这个规则绑定到T_CJ表的cj(成绩)字段。
为T_KC表的cName字段创建索引。
最后
当然主键当然是SID了 一定要标好哦~~·先不管作业其他要求
在依次做其他2个表;
T_KC(cID,cName,sBianhao,sXuefen)
T_CJ(sID,cID,cj) 注意主键是SID

3. 做好了三个表后退出设计器
在打开以一个个表 在按要求输入(在每个表中添加3-5条记录。)
好了 基本就完成了
当然用SQL 也能完成 这些问题 并且要快 但涉及到TQL语言 编程问题 很难说清楚 就不一一解释了···