ITPub博客

首页 > 数据库 > 国内数据库 > 达梦DMTDD透明分布式集群部署

达梦DMTDD透明分布式集群部署

原创 国内数据库 作者:一鸣_x88 时间:2020-09-18 14:54:50 0 删除 编辑

计算节点

xx.xx.xx.170

前端库CSS及DSC

xx.xx.xx.171

前端库CSS及DSC

存储节点

xx.xx.xx.173

存储服务器SS1

xx.xx.xx.174

存储服务器SS2

日志节点

xx.xx.xx.172

目录服务器

后台库

日志服务器

 #提前规划好需要部署的环境


#  注意关闭所有的服务器的防火墙

systemctl stop firewalld  

#  首先在所有的节点上安装数据库软件


一、配置存储节点

(1) 分别在  2    SS  节点初始化  SS  并启动。我们这里以  SS1  为例  :
初始化:

 [root@localhost /]# chown -R dmdba:dinstall /DM8

./dmdssinit path=/DM8 inst=SS1 port=35300 REGION_SIZE=2 DBF_SIZE=102400 RLOG_SIZE=128

./dmdssinit path=/DM8 inst=SS2 port=35300 REGION_SIZE=2 DBF_SIZE=102400 RLOG_SIZE=128

#  注意此参数  DBF_SIZE=102400  越大越好,最小  20G  否则在部署好之后就会在创建表空间的时候报错磁盘空间不足,因为一个宏区默认的大小就是  10G  ,也就是说  10G  的大小初始化之后就满了。

                                             

#  完成之后就会在这个路径下生成这些文件。

 

)启动DSS

方法一:临时启动

./dmdss path=/DM8/SS2/dss.ini

 

方法二:注册服务后启动

在其他  2    SS  节点重复以上操作。  注意替换实例名

建议把  DSS  注册成服务再用服务启动,用  root  执行如下命令进行注册

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmdss -p ss1 -dss_ini /DM8/SS1/dss.ini

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmdss -p ss2 -dss_ini /DM8/SS2/dss.ini

 

启动:

systemctl start DmDSSServicess1

systemctl start DmDSSServicess2

ps -ef|grep dmdss



 


二、日志节点操作

初始化后台库

./dminit path=/DM8 db_name=dcs_db instance_name=DCS_DB port_num=35200

#  成功安装

 

 

1.1  注册服务启动数据库

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -p dcs -dm_ini /DM8/dcs_db/dm.ini

 

1.2  前台启动目录库

./dmserver /DM8/dcs_db/dm.ini

 

1.3  后台启动目录库

[root@localhost ~]# systemctl start DmServicedcs

#  启动数据库服务

ps -ef|grep dm.ini

 

 

1.4  初始化  TDD  环境

启动  DISQL,  初始化后台数据库的  DMTDD  环境

./disql SYSDBA/SYSDBA:35200

SP_DFS_DCS_INIT(1);

#  此时  DCS  默认端口为  3333  ,可以通过修改  DCS.INI  更改  DCS  的端口等信息

 

 

 

启动  DCS  服务

2.1  创建  dcs.key 

./dmdcs -init=1 user=SYSDBA PASSWORD=SYSDBA PATH=/DM8/scs.key

 

2.2  启动  DCS  的两种方法

  1  )直接命令行前台启动:

./dmdcs server=xx.xx.xx.172:35200

  2  )注册服务并启动:

注册服务时需要指定  dcs.ini  文件,默认没有该文件。所以该文件需要手动建立并添加内容。

编写  dcs.ini  文件

vi /DM8/dcs.ini

 

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmdcs -p dcs -server xx.xx.xx.172:35200 -dcs_ini /DM8/dcs.ini

 

启动  DCS 

systemctl start DmDCSServicedcs

 

 

添加  RS    SS

3.1  添加存储  SS  服务

使用  dmdcstool  工具添加  FD    SS  ,注意这里  dmdcstool  必须连接的是  DCS  ,而不是  RS  ,注意端口号。

./dmdcstool host=xx.xx.xx.172 port_num=3333

DCS>add micro fault domain fd1

DCS>add micro fault domain fd2

DCS>add micro storage server SS1 (' xx.xx.xx.173' : 35300) in fd1

DCS>add micro storage server SS2 (' xx.xx.xx.174' : 35300) in fd2

DCS>alter storage server refresh size

DCS>alter storage server open

 

 

3.2  添加组和  RS

./dmdcstool host= xx.xx.xx.172 port_num=3333

#  还是在目录服务器里面添加

DCS>add group grp1

DCS>add rlog server "DRS" (' xx.xx.xx' : 3332) group grp1

注意

1    RS  和组是一对一的关系。
2
  :若想支持多  RS  ,这里需要创建多个组,然后把不同的  RS  添加到不同的组里。

 

 

 

3.3  启动  RS

  /DM8  目录下创建  drs.ini  文件,并添加如下内容:

vi /DM8/drs.ini

NSTANCE_NAME           = DRS               #  实例名,默认  DRS

SYSTEM_PATH               = /DM8/drs       #  系统路径    

PORT_NUM                    = 3332              #DRS  对外提供服务的监听端口,默认  333

                                                                  #    PORT_NUM  值与上一步的  add rlog server  中的端口号一致

DCS_IP                            = xx.xx.xx.172       #  依赖的  DCS    IP

DCS_PORT                      = 3333                #  依赖的  DCS  的端口

MEMORY_POOL             = 100                   #  使用的内存池大小,单位  M

TASK_THREAD_NUM      = 10                    #  任务线程数

LOCAL_ARCH_PATH       = /DM8/larch     #  本地归档目录

 

启动  RS,  同样有两种方式:

  1  )命令行直接启动:

./dmdrs path=/DM8/drs.ini

 

  2  )注册服务并启动:

/home/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmdrs -p drs -drs_ini /DM8/drs.ini

[root@localhost ~]# systemctl start DmDRSServicedrs



3.4  创建存储目录

./dmdcstool host= xx.xx.xx .172 port_num=3333

DCS>create dir '/dameng/dsc/asmdisks'


 

三、搭建两节点  DSC

在两个节点的  /DM8  下面分别创建  dsc  目录

1.1  创建  dsc  目录

[dmdba@localhost DM8]$ mkdir dsc

#  注意这个目录建在哪叫什么名字都可以,看自己的安装习惯。只在一个计算节点上创建即可,之后的文件我们都可以放到这个路径下,然后一起复制给另一个节点。

 

1.2  编写  dmdcr_cfg.ini  配置文件

#  注意:此文件非常重要如果参数写错可能导致出现各种问题,一定要对比好。

vi /DM8/dsc/dmdcr_cfg.ini

DCR_N_GRP                      = 2

DCR_VTD_PATH                = $/dameng/dsc/asmdisks/vtd.asm

DCR_OGUID                      = 65535

 

[GRP]

    DCR_GRP_TYPE                    = CSS

    DCR_GRP_NAME                  = GRP_CSS

    DCR_GRP_N_EP                    = 2

    DCR_GRP_DSKCHK_CNT       = 10

[GRP_CSS]

    DCR_EP_NAME                     = CSS0

    DCR_EP_HOST                      = xx.xx.xx.170

    DCR_EP_PORT                      = 35641

[GRP_CSS]

    DCR_EP_NAME                     = CSS1

    DCR_EP_HOST                      = xx.xx.xx.171

    DCR_EP_PORT                      = 35641

 

[GRP]

    DCR_GRP_TYPE                     = DB

    DCR_GRP_NAME                   = GRP_DSC

    DCR_GRP_N_EP                     = 2

    DCR_GRP_DSKCHK_CNT       = 10

[GRP_DSC]

    DCR_EP_NAME                     = DSC0

    DCR_EP_PORT                      = 35610

    DCR_CHECK_PORT               = 35657

[GRP_DSC]

    DCR_EP_NAME                     = DSC1

    DCR_EP_PORT                      = 35610

    DCR_CHECK_PORT               = 35657

 

 

1.3  创建  dmdfs.ini  配置文件

vi /DM8/dsc/dmdfs.ini

DFS_HOST        =    xx.xx.xx.172  

DFS_PORT        =    3332         

DFS_COPY_NUM    =    2            

 

 

使用  dmasmcmd  工具初始化

./dmasmcmd dfs_ini=/DM8/dsc/dmdfs.ini

ASM>create emptyfile '/DM8/asmdisks/dcr.asm' size 32

ASM>create emptyfile '/DM8/asmdisks/vtd.asm' size 32

ASM>create dcrdisk '/DM8/asmdisks/dcr.asm' 'dcr' 32

 

ASM>create votedisk '/DM8/asmdisks/vtd.asm' 'vtd' 32

ASM>init dcrdisk '/DM8/asmdisks/dcr.asm' from '/DM8/dmdcr_cfg.ini' identified by 'hust4400'

ASM>init votedisk '/DM8/asmdisks/vtd.asm' from '/DM8/dmdcr_cfg.ini'

#  将本地文件系统  dcr/vtd  存入  RS

ASM>init ddfsdcr '$/dameng/dsc/asmdisks/dcr.asm' from '/DM8/asmdisks/dcr.asm' 

ASM>init ddfsvtd '$/dameng/dsc/asmdisks/vtd.asm' from '/DM8/asmdisks/vtd.asm'   

 

 

创建  dminit.ini  配置文件

vi /DM8/dsc/ dminit.ini

db_name                  = dsc

system_path             = /DM8

system                      = $/dsc/system.dbf

system_size               = 128

roll                             = $/dsc/roll.dbf

roll_size                      = 128

main                           = $/dsc/main.dbf

main_size                    = 128

ctl_path                       = $/dsc/dm.ctl

ctl_size                        = 8

log_size                       = 256

dcr_path                      = $/dameng/dsc/asmdisks/dcr.asm

dcr_seqno                   = 0

auto_overwrite            = 0

page_size                    = 8

extent_size                  = 32

   

CASE_SENSITIVE          =0

UNICODE_FLAG           =1

dfs_db_name               = db_dsc

share_flag                     = 1

 

dfs_flag           =    1

dfs_path          =    $/dameng           

dfs_host           =    xx.xx.xx.172          

dfs_port           =    3332                

dfs_copy_num      =    2                   

 

[dsc0]

config_path              = /DM8/dsc/dsc0

port_num                 = 35610

mal_host                 = xx.xx.xx.170

mal_port                 = 35680

[dsc1]

config_path              = /DM8/dsc/dsc1

port_num                 = 35610

mal_host                  = xx.xx.xx.171

mal_port                  = 35680

 

初始化库

哪个几点上有  dminit.ini  文件就在哪个节点上操作。

./dminit control=/DM8/dminit.ini


  dsc  目录复制到另一个节点

[dmdba@localhost bin]$ scp -r /DM8/dsc dmdba@ xx.xx.xx.171:/DM8/


编写  dmdcr  文件

#  文件放在哪不重要主要是要有权限,注意两个计算几点都要编写,注意文件名需要不一样来区分实例以及里面的内容参数是不一样的。

  1    vi /DM8/dsc/dmdcr0.ini

DMDCR_PATH = $/dameng/dsc/asmdisks/dcr.asm

DMDCR_SEQNO = 0

#  添加到节点  1

 

  2    vi /DM8/dsc/dmdcr1.ini

DMDCR_PATH = $/dameng/dsc/asmdisks/dcr.asm

DMDCR_SEQNO = 1

 

  DMTDD  添加前端数据服务器

在任意  DSC  节点启动  dmdcstool  ,连接  DCS  并执行添加命令:

./dmdcstool host= xx.xx.xx.172 port_num=3333

DCS>add data server dsc0 group grp1 database db_dsc arch_dir '/DM8/dsc/dsc0/arch_dsc0'

DCS>add data server dsc1 group grp1 database db_dsc arch_dir '/DM8/dcs/dsc1/arch_dsc1'

#  在这个步骤最重要的是这两个服务名,这两个服务名的参数主要是根据  dminit.ini    dmdcr_cfg.ini  文件中的参数来定义的。

 

启动  CSS  服务

  1  )计算节点点  1

./dmcss dcr_ini=/DM8/dsc/dmdcr0.ini dfs_ini=/DM8/dmdfs.ini

  2  )计算节点  2

./dmcss dcr_ini=/DM8/dsc/dmdcr1.ini dfs_ini=/DM8/dsc/dmdfs.ini

#  在启动  CSS  服务之前 需要重新执行一下  ./dmasmcmd  初始化的操作。

./dmasmcmd dfs_ini=/DM8/dsc/dmdfs.ini

ASM>init dcrdisk '/DM8/asmdisks/dcr.asm' from '/DM8/dsc/dmdcr_cfg.ini' identified by 'hust4400'

ASM>init votedisk '/DM8/asmdisks/vtd.asm' from '/DM8/dsc/dmdcr_cfg.ini'

ASM>init ddfsdcr '$/dameng/dsc/asmdisks/dcr.asm' from '/DM8/asmdisks/dcr.asm' 

ASM>init ddfsvtd '$/dameng/dsc/asmdisks/vtd.asm' from '/DM8/asmdisks/vtd.asm'

 


启动DSC两个计算节点

(1)启动节点1

./dmserver /DM8/dsc/dsc0/dm.ini dcr_ini=/DM8/dsc/dmdcr0.ini

 

  2  )启动节点  2

./dmserver /DM8/dsc/dsc1/dm.ini dcr_ini=/DM8/dsc/dmdcr1.ini


10 测试连接


结束:到这里一套五节点的DMTDD环境就安装完成了,达梦TDD是集高可用、分部式存储、数据守护等多种高级特性于一身的集群部署方案。具体的DMTDD原理请参考:


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69978820/viewspace-2722260/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2020-07-09

  • 博文量
    3
  • 访问量
    1809