IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> DM7读写分离部署 -> 正文阅读

[大数据]DM7读写分离部署

1 环境规划

读写分离集群适合读多写少的应用环境。
1写2读3节点读写分离集群部署规划

1.1 IP规划:

主机名服务ip心跳ip数据库名实例名
dmdb01192.168.25.9410.10.10.94dmdbrw4
dmdb02192.168.25.9510.10.10.95dmdbrw5
dmdb03192.168.25.9610.10.10.96dmdbrw6

1.2 端口规划

实例名PORT_NUMDW_PORTMAL_HOSTMAL_PORTMAL_DW_PORT
rw45236743610.10.10.94dmdb7336
rw55236743610.10.10.95dmdb7336
rw65236743610.10.10.96dmdb7336

1.3 磁盘规划

对应服务器上创建目录owner为dmdba组为dinstall

数据库软件安装目录/home/dmdba/dmdbms/dm8
实例安装目录/dm/dmdata/
归档日志存放目录/dm/dmarch
备份文件存放目录/dm/dmbak/

2 操作系统配置

2.1 修改资源限制参数

vi /etc/security/limits.conf
 
dmdba  soft      nice       0
dmdba  hard      nice       0
dmdba  soft      as         unlimited
dmdba  hard      as         unlimited
dmdba  soft      fsize      unlimited
dmdba  hard      fsize      unlimited
dmdba  soft      nproc      65536
dmdba  hard      nproc      65536
dmdba  soft      nofile     65536
dmdba  hard      nofile     65536
dmdba  soft      core       unlimited
dmdba  hard      core       unlimited
dmdba  soft      data       unlimited
dmdba  hard      data       unlimited

cat  /etc/security/limits.conf

2.3 设置系统安全策略

2.3.1 SELinux

echo "SELINUX=disabled" > /etc/selinux/config
echo "SELINUXTYPE=targeted" >> /etc/selinux/config

cat /etc/selinux/config
setenforce 0

2.3.2.关闭防火墙

systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service

2.4 修改内核参数

fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
kernel.core_pattern = /home/dmdba/dmdbms/core.%p
vm.swappiness=10
vm.dirty_background_ratio = 0
vm.min_free_kbytes = 2097152
vm.swappiness=1
 
使参数生效,执行
sysctl -p

3 创建数据库用户和组

groupadd dinstall -g 2001
 
useradd  -G dinstall -m -d /home/dmdba -s /bin/bash -u 2001 dmdba
 
passwd dmdba
--密码
dameng

配置目录权限

#测试环境
mkdir -p /home/dmdba/dmdbms
mkdir -p /dm/dmdata
mkdir -p /dm/dmarch
mkdir -p /dm/dmback

chown -R dmdba:dinstall /dm/
chmod -R 775 /dm/

4 配置环境变量

su - dmdba

vi ~/.bash_profile
 
export LANG=zh_CN.UTF8
export DM_INSTALL_TMPDIR=/tmp
export DM_HOME=/home/dmdba/dmdbms
export PATH=$DM_HOME/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DM_HOME/bin"

5 安装数据库

5.1 使用root用户挂载数据库软件的iso文件

mkdir -p /dmiso
#mount -o loop dm7_20210709_x86_rh6_64_ent_7.6.1.108.iso /dmiso

mount /dev/cdrom /dmiso

5.2.使用dmdba用户安装软件

su - dmdba
执行以下命令,切换到 /dmiso 目录下
cd /dmiso
执行 DMInstall.bin 文件开始安装,选择【-i】参数以命令行方式安装。
./DMInstall.bin -i
选择安装程序的语言 c/C 为中文,e/E 为英文。
提示是否安装 key 文件,输入 N 跳过。
选择时区,21 即东 8 区。
选择安装类型,默认典型安装(包含所有内容)。
选择软件安装目录,默认/home/dmdba/dmdbms
确认安装
安装完成提示使用root执行脚本:
/home/dmdba/dmdbms/script/root/root_installer.sh

安装第一台:

[root@dm94 dmdbms]# su - dmdba
Last login: Sat Jan 22 11:34:35 CST 2022 on pts/0
[dmdba@dm94 ~]$ cd /dmiso
[dmdba@dm94 dmiso]$ ./DMInstall.bin -i
请选择安装语言(C/c:中文 E/e:英文) [C/c]:c
解压安装程序..........
欢迎使用达梦数据库安装程序

是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n

是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: GTM-12=日界线西
[ 2]: GTM-11=萨摩亚群岛
[ 3]: GTM-10=夏威夷
[ 4]: GTM-09=阿拉斯加
[ 5]: GTM-08=太平洋时间(美国和加拿大)
[ 6]: GTM-07=亚利桑那
[ 7]: GTM-06=中部时间(美国和加拿大)
[ 8]: GTM-05=东部部时间(美国和加拿大)
[ 9]: GTM-04=大西洋时间(美国和加拿大)
[10]: GTM-03=巴西利亚
[11]: GTM-02=中大西洋
[12]: GTM-01=亚速尔群岛
[13]: GTM=格林威治标准时间
[14]: GTM+01=萨拉热窝
[15]: GTM+02=开罗
[16]: GTM+03=莫斯科
[17]: GTM+04=阿布扎比
[18]: GTM+05=伊斯兰堡
[19]: GTM+06=达卡
[20]: GTM+07=曼谷,河内
[21]: GTM+08=中国标准时间
[22]: GTM+09=汉城
[23]: GTM+10=关岛
[24]: GTM+11=所罗门群岛
[25]: GTM+12=斐济
[26]: GTM+13=努库阿勒法
[27]: GTM+14=基里巴斯
请选择设置时区 [21]:21

安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 1026M

请选择安装目录 [/home/dmdba/dmdbms]
可用空间: 98G
是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y

安装前小结
安装位置: /home/dmdba/dmdbms
所需空间: 1026M
可用空间: 98G
版本信息: 
有效日期: 
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2022-01-22 11:43:41 
[INFO] 安装达梦数据库...
2022-01-22 11:43:42 
[INFO] 安装 基础 模块...
2022-01-22 11:43:44 
[INFO] 安装 服务器 模块...
2022-01-22 11:43:45 
[INFO] 安装 客户端 模块...
2022-01-22 11:43:45 
[INFO] 安装 驱动 模块...
2022-01-22 11:43:46 
[INFO] 安装 手册 模块...
2022-01-22 11:43:46 
[INFO] 安装 服务 模块...
2022-01-22 11:43:47 
[INFO] 移动ant日志文件。
2022-01-22 11:43:47 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:
/home/dmdba/dmdbms/script/root/root_installer.sh

安装结束

[dmdba@dm94 dmiso]$ exit
登出
[root@dm94 dmdbms]# /dm/dmdbms/script/root/root_installer.sh
移动 /home/dmdba/dmdbms/bin/dm_svc.conf 到/etc目录
修改服务器权限
创建DmAPService服务
Created symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.service.
创建服务(DmAPService)完成
启动DmAPService服务
[root@dm94 dmdbms]#

安装第二台

[dmdba@dm95 dmdbms]$ cd /dmiso/
[dmdba@dm95 dmiso]$ ./DMInstall.bin -i
请选择安装语言(C/c:中文 E/e:英文) [C/c]:c
解压安装程序..........
欢迎使用达梦数据库安装程序

是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n

是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: GTM-12=日界线西
[ 2]: GTM-11=萨摩亚群岛
[ 3]: GTM-10=夏威夷
[ 4]: GTM-09=阿拉斯加
[ 5]: GTM-08=太平洋时间(美国和加拿大)
[ 6]: GTM-07=亚利桑那
[ 7]: GTM-06=中部时间(美国和加拿大)
[ 8]: GTM-05=东部部时间(美国和加拿大)
[ 9]: GTM-04=大西洋时间(美国和加拿大)
[10]: GTM-03=巴西利亚
[11]: GTM-02=中大西洋
[12]: GTM-01=亚速尔群岛
[13]: GTM=格林威治标准时间
[14]: GTM+01=萨拉热窝
[15]: GTM+02=开罗
[16]: GTM+03=莫斯科
[17]: GTM+04=阿布扎比
[18]: GTM+05=伊斯兰堡
[19]: GTM+06=达卡
[20]: GTM+07=曼谷,河内
[21]: GTM+08=中国标准时间
[22]: GTM+09=汉城
[23]: GTM+10=关岛
[24]: GTM+11=所罗门群岛
[25]: GTM+12=斐济
[26]: GTM+13=努库阿勒法
[27]: GTM+14=基里巴斯
请选择设置时区 [21]:21

安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 1026M

请选择安装目录 [/home/dmdba/dmdbms]:
可用空间: 98G
是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y

安装前小结
安装位置: /home/dmdba/dmdbms
所需空间: 1026M
可用空间: 98G
版本信息: 
有效日期: 
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2022-01-22 11:43:41 
[INFO] 安装达梦数据库...
2022-01-22 11:43:42 
[INFO] 安装 基础 模块...
2022-01-22 11:43:44 
[INFO] 安装 服务器 模块...
2022-01-22 11:43:44 
[INFO] 安装 客户端 模块...
2022-01-22 11:43:45 
[INFO] 安装 驱动 模块...
2022-01-22 11:43:45 
[INFO] 安装 手册 模块...
2022-01-22 11:43:46 
[INFO] 安装 服务 模块...
2022-01-22 11:43:47 
[INFO] 移动ant日志文件。
2022-01-22 11:43:47 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:
/home/dmdba/dmdbms/script/root/root_installer.sh

安装结束

[dmdba@dm95 dmiso]$ exit
登出
[root@dm95 dmback]# /dm/dmdbms/script/root/root_installer.sh
移动 /home/dmdba/dmdbms/bin/dm_svc.conf 到/etc目录
修改服务器权限
创建DmAPService服务
Created symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.service.
创建服务(DmAPService)完成
启动DmAPService服务
[root@dm95 dmback]# 

[dmdba@dm94 bin]$ 

安装第三台:


[dmdba@dm96 dmdbms]$ cd /dmiso/
[dmdba@dm96 dmiso]$  ./DMInstall.bin -i
请选择安装语言(C/c:中文 E/e:英文) [C/c]:c
解压安装程序..........
欢迎使用达梦数据库安装程序

是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n

是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: GTM-12=日界线西
[ 2]: GTM-11=萨摩亚群岛
[ 3]: GTM-10=夏威夷
[ 4]: GTM-09=阿拉斯加
[ 5]: GTM-08=太平洋时间(美国和加拿大)
[ 6]: GTM-07=亚利桑那
[ 7]: GTM-06=中部时间(美国和加拿大)
[ 8]: GTM-05=东部部时间(美国和加拿大)
[ 9]: GTM-04=大西洋时间(美国和加拿大)
[10]: GTM-03=巴西利亚
[11]: GTM-02=中大西洋
[12]: GTM-01=亚速尔群岛
[13]: GTM=格林威治标准时间
[14]: GTM+01=萨拉热窝
[15]: GTM+02=开罗
[16]: GTM+03=莫斯科
[17]: GTM+04=阿布扎比
[18]: GTM+05=伊斯兰堡
[19]: GTM+06=达卡
[20]: GTM+07=曼谷,河内
[21]: GTM+08=中国标准时间
[22]: GTM+09=汉城
[23]: GTM+10=关岛
[24]: GTM+11=所罗门群岛
[25]: GTM+12=斐济
[26]: GTM+13=努库阿勒法
[27]: GTM+14=基里巴斯
请选择设置时区 [21]:21

安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 1026M

请选择安装目录 [/home/dmdba/dmdbms]:
可用空间: 98G
是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y

安装前小结
安装位置: /home/dmdba/dmdbms
所需空间: 1026M
可用空间: 98G
版本信息: 
有效日期: 
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2022-01-22 11:43:42 
[INFO] 安装达梦数据库...
2022-01-22 11:43:42 
[INFO] 安装 基础 模块...
2022-01-22 11:43:45 
[INFO] 安装 服务器 模块...
2022-01-22 11:43:45 
[INFO] 安装 客户端 模块...
2022-01-22 11:43:46 
[INFO] 安装 驱动 模块...
2022-01-22 11:43:46 
[INFO] 安装 手册 模块...
2022-01-22 11:43:46 
[INFO] 安装 服务 模块...
2022-01-22 11:43:47 
[INFO] 移动ant日志文件。
2022-01-22 11:43:47 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:
/home/dmdba/dmdbms/script/root/root_installer.sh

安装结束

[dmdba@dm96 dmiso]$ exit
登出
[root@dm96 ~]# /home/dmdba/dmdbms/script/root/root_installer.sh
移动 /home/dmdba/dmdbms/bin/dm_svc.conf 到/etc目录
修改服务器权限
创建DmAPService服务
Created symlink from /etc/systemd/system/multi-user.target.wants/DmAPService.service to /usr/lib/systemd/system/DmAPService.service.
创建服务(DmAPService)完成
启动DmAPService服务
[root@dm96 ~]# 

5.3 使用 dminit 工具初始化实例

初始化实例
--大小写敏感 case_sensitive=1 0/1是y/n -- charset=0 0代表GBK 1是utf-8

初始化主库,执行以下命令:

[root@dm94 dmdbms]# su - dmdba
Last login: Sat Jan 22 11:38:04 CST 2022 on pts/0
[dmdba@dm94 ~]$ cd /home/dmdba/dmdbms/bin
[dmdba@dm94 bin]$ ./dminit path=/dm/dmdata page_size=32 extent_size=32 log_size=2048 charset=1 case_sensitive=0 LENGTH_IN_CHAR=0 db_name=dmdb instance_name=dmdb SYSDBA_PWD="dameng123" SYSAUDITOR_PWD="dameng123" 
initdb V7.6.1.108-Build(2021.06.30-142705-10017)ENT 
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2022-06-30

 log file path: /dm/dmdata/dmdb/dmdb01.log


 log file path: /dm/dmdata/dmdb/dmdb02.log

write to dir [/dm/dmdata/dmdb].
create dm database success. 2022-01-22 11:48:47
[dmdba@dm94 bin]$ exit
登出

5.4 拷贝主库数据文件到两台备库

拷贝主库上的数据文件到备库对应目录下,主库操作:
su - dmdba

scp -r /dm/dmdata/dmdb dmdba@192.168.25.95:/dm/dmdata/
scp -r /dm/dmdata/dmdb dmdba@192.168.25.96:/dm/dmdata/
dameng

5.5 注册数据库服务

注册主备服务,操作方式如下

cd /home/dmdba/dmdbms/script/root/
./dm_service_installer.sh -i /dm/dmdata/dmdb/dm.ini -t dmserver -p dmdb 

[root@dm94 dmdbms]# cd /home/dmdba/dmdbms/script/root/
[root@dm94 root]# ./dm_service_installer.sh -i /dm/dmdata/dmdb/dm.ini -t dmserver -p dmdb 
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServicedmdb.service to /usr/lib/systemd/system/DmServicedmdb.service.
创建服务(DmServicedmdb)完成
[root@dm94 root]# su - dmdba
Last login: Sat Jan 22 11:48:16 CST 2022 on pts/0
[dmdba@dm94 ~]$ cd /dm/dmdbms/bin
[dmdba@dm94 bin]$ ./DmServicedmdb start
Starting DmServicedmdb:                                    [ OK ]

注:对于新初始化的库,首次启动不允许使用mount方式,需要先正常启动并正常退出,然后才允许mount 方式启动。
或者切换用户,进入bin目录
su - dmdba
cd /home/dmdba/dmdbms/bin
./DmServicedmdb start

5.6 登录数据库

dmdba用户下执行以下命令:
./disql SYSDBA/’“dameng123”’

3.6 归档配置 (在线方式配置归档)
生产环境必须开启归档日志,且必须限制归档日志保留量,限制方法:
1.设置归档空间大小限制即指定 SPACE_LIMIT 参数(单位是 MB)。
2.定期删除归档日志(设置定时作业)。
例如开启归档并限制归档空间为 100 G(按实际存储空间给合适的值),如下所示

alter database mount;
alter database add archivelog 'dest=/dm/dmarch ,TYPE=local,FILE_SIZE=1024,SPACE_LIMIT=153600';
alter database archivelog;
alter database open;

5.7 备份主库

./dmrman/dmrman use_ap=2
BACKUP DATABASE '/dm/dmdata/dmdb/dm.ini' FULL TO BACKUP_FILE2 BACKUPSET '/dm/dmback/bakfull'; 

check backupset '/dm/dmback/bakfull';

5.8 拷贝备份文件到两台备库

–拷贝到备库
scp -r /dm/dmback/bakfull dmdba@192.168.25.95:/dm/dmback/
scp -r /dm/dmback/bakfull dmdba@192.168.25.96:/dm/dmback/
dameng

5.9 恢复两台备库

还原备库1、备库2

su - dmdba
cd /home/dmdba/dmdbms/bin
./DmServicedmdb stop

./dmrman /dmrman use_ap=2
check backupset '/dm/dmback/bakfull';
RESTORE DATABASE '/dm/dmdata/dmdb/dm.ini' FROM BACKUPSET '/dm/dmback/bakfull'; 
RECOVER DATABASE '/dm/dmdata/dmdb/dm.ini' FROM BACKUPSET '/dm/dmback/bakfull'; 

5.10 检查数据一致性

– 主备启动到mount状态
su - dmdba
cd /home/dmdba/dmdbms/bin/
./DmServicedmdb start mount
使用以下命令登录到数据
./disql SYSDBA/’“dameng123”’

select file_LSN, cur_LSN from v$rlog;
select permanent_magic;

--  主库94
SQL> select file_LSN, cur_LSN from v$rlog;
select permanent_magic;
行号     file_LSN             cur_LSN             
---------- -------------------- --------------------
1          56837                56837

已用时间: 12.592(毫秒). 执行号:1.
SQL> 

行号     permanent_magic     
---------- --------------------
1          1277393152

已用时间: 1.643(毫秒). 执行号:2.
SQL> 

-- 备库95
SQL> select file_LSN, cur_LSN from v$rlog;
select permanent_magic;
行号     file_LSN             cur_LSN             
---------- -------------------- --------------------
1          56837                56837

已用时间: 13.978(毫秒). 执行号:1.
SQL> 

行号     permanent_magic     
---------- --------------------
1          1277393152

已用时间: 1.388(毫秒). 执行号:2.
SQL> 


-- 备库96

SQL> select file_LSN, cur_LSN from v$rlog;
select permanent_magic;
行号     file_LSN             cur_LSN             
---------- -------------------- --------------------
1          56837                56837

已用时间: 212.584(毫秒). 执行号:1.
SQL> 

行号     permanent_magic     
---------- --------------------
1          1277393152

已用时间: 148.802(毫秒). 执行号:2.
SQL> 

6 修改dm.ini文件

第一: 修改所有实例的配置文件dm.ini
vi /dm/dmdata/dmdb/dm.ini

vim dm.ini
INSTANCE_NAME = RW1
PORT_NUM = 5236 #数据库实例监听端口
DW_PORT = 7436 #守护环境下,监听守护进程连接端口
DW_ERROR_TIME = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态
ENABLE_OFFLINE_TS = 2 #不允许备库OFFLINE表空间
MAL_INI = 1 #打开MAL系统
ARCH_INI = 1 #打开归档配置
HA_INST_CHECK_FLAG = 1 #检测是否多个实例进程同时启动

– 备库95
vim dm.ini
INSTANCE_NAME = RW2
PORT_NUM = 5236
DW_PORT = 7436
DW_ERROR_TIME = 60
ALTER_MODE_STATUS = 0
ENABLE_OFFLINE_TS = 2
MAL_INI = 1
ARCH_INI = 1
HA_INST_CHECK_FLAG = 1

– 备库96
vim dm.ini
INSTANCE_NAME = RW3
PORT_NUM = 5236 #数据库实例监听端口
DW_PORT = 7436 #守护环境下,监听守护进程连接端口
DW_ERROR_TIME = 60 #接收守护进程消息超时时间
ALTER_MODE_STATUS = 0 #不允许手工方式修改实例模式/状态
ENABLE_OFFLINE_TS = 2 #不允许备库OFFLINE表空间
MAL_INI = 1 #打开MAL系统
ARCH_INI = 1 #打开归档配置
HA_INST_CHECK_FLAG = 1 #检测是否多个实例进程同时启动

7 配置dmmal.ini文件

三台服务器配置一样
vi /dm/dmdata/dmdb/dmmal.ini

MAL_CHECK_INTERVAL = 5        		#MAL链路检测时间间隔
MAL_CONN_FAIL_INTERVAL = 5   		#判定MAL链路断开的时间
[MAL_INST1]
  MAL_INST_NAME = RW4    			#实例名1
	MAL_HOST = 10.10.10.94 			#MAL系统监听TCP连接的私网IP地址
	MAL_PORT = 7336             	#MAL系统监听TCP连接的端口
	MAL_INST_HOST = 192.168.25.94	#实例的对外服务IP地址
	MAL_INST_PORT = 5236       		#实例的对外服务端口
	MAL_DW_PORT = 7536     			#实例对应的守护进程监听TCP连接的端口
  [MAL_INST2]
	MAL_INST_NAME = RW5             #实例名2
	MAL_HOST = 10.10.10.95
	MAL_PORT = 7336
	MAL_INST_HOST = 192.168.25.95
	MAL_INST_PORT = 5236 
	MAL_DW_PORT = 7536
  [MAL_INST3]
	MAL_INST_NAME = RW6             #实例名3
	MAL_HOST = 10.10.10.96
	MAL_PORT = 7336
	MAL_INST_HOST = 192.168.25.96
	MAL_INST_PORT = 5236 
	MAL_DW_PORT = 7536	

8 配置归档配置文件 dmarch.ini

主库

vi /dm/dmdata/dmdb/dmarch.ini

#ARCH_WAIT_APPLY=1 dm8
[ARCHIVE_REALTIME1]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw5

[ARCHIVE_REALTIME2]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw6

[ARCHIVE_LOCAL1]
        ARCH_TYPE               = LOCAL                 #本地归档类型
        ARCH_DEST               = /dm/dmarch  #本地归档文件存放路径
        #ARCH_DEST              = /data/archive
        ARCH_FILE_SIZE          = 2048    #单位Mb,本地单个归档文件最大值
        ARCH_SPACE_LIMIT        = 102400  #0表示无限制,范围1024~4294967294M           

备库95

vi /dm/dmdata/dmdb/dmarch.ini

#ARCH_WAIT_APPLY=1 dm8
[ARCHIVE_REALTIME1]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw4

[ARCHIVE_REALTIME2]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw6

[ARCHIVE_LOCAL1]
        ARCH_TYPE               = LOCAL                 #本地归档类型
        ARCH_DEST               = /dm/dmarch  #本地归档文件存放路径
        #ARCH_DEST              = /data/archive
        ARCH_FILE_SIZE          = 2048    #单位Mb,本地单个归档文件最大值
        ARCH_SPACE_LIMIT        = 102400  #0表示无限制,范围1024~4294967294M

备库96

vi /dm/dmdata/dmdb/dmarch.ini

#ARCH_WAIT_APPLY=1 dm8
[ARCHIVE_REALTIME1]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw4

[ARCHIVE_REALTIME2]
        ARCH_TYPE               = REALTIME
        ARCH_DEST               = rw5

[ARCHIVE_LOCAL1]
        ARCH_TYPE               = LOCAL         #本地归档类型
        ARCH_DEST               = /dm/dmarch  	#本地归档文件存放路径
        #ARCH_DEST              = /data/archive
        ARCH_FILE_SIZE          = 2048    		#单位Mb,本地单个归档文件最大值
        ARCH_SPACE_LIMIT        = 102400  		#0表示无限制,范围1024~4294967294M

9 配置守护进程配置文件 dmwatcher.ini

MANUAL 手动切换 AUTO 自动切换
三个节点一样

# MANUAL 手动切换 AUTO 自动切换
# 三个节点一样
vi /dm/dmdata/dmdb/dmwatcher.ini

[GRP_RW2]
DW_TYPE                 = GLOBAL
DW_MODE                 = MANUAL        
DW_ERROR_TIME           = 10
INST_RECOVER_TIME       = 60
INST_ERROR_TIME         = 10
INST_OGUID              = 453332
INST_INI                = /dm/dmdata/dmdb/dm.ini
INST_AUTO_RESTART       = 1
INST_STARTUP_CMD        = /home/dmdba/dmdbms/bin/dmserver

10 配置dmwatcher.ctl

同一个守护进程组,必须使用同一份 dmwatcher.ctl。因此,只需要使用 dmctlcvt 工具生成一份dmwatcher.ctl 文件,然后分别拷贝到各个数据库目录下即可。在配置完成dmwatcher.ini 后,使用 dmctlcvt 工具生成 dmwatcher.ctl:

cd /home/dmdba/dmdbms/bin
./dmctlcvt t2dwctl /dm/dmdata/dmdb/dmwatcher.ini  /dm/dmdata

拷贝生成的dmwatcher.ctl 文件到数据文件目录下:

cd /dm/dmdata/GRP_RW2
cp dmwatcher.ctl  /dm/dmdata/dmdb


scp -r /dm/dmdata/dmdb/dmwatcher.ctl dmdba@192.168.25.95:/dm/dmdata/dmdb/
scp -r /dm/dmdata/dmdb/dmwatcher.ctl dmdba@192.168.25.96:/dm/dmdata/dmdb/
dameng

11 设置 OGUID和修改数据库模式

以 Mount 方式启动数据库实例 (主备库)使用 dmdba 用户,到数据库安装目录的 bin 下执行。
su - dmdba

cd /home/dmdba/dmdbms/bin/

./DmServicedmdb start mount


设置 OGUID和修改数据库模式
cd /home/dmdba/dmdbms/bin
disql SYSDBA/'"dameng123"'

#94
sp_set_oguid(453332);
alter database primary;

#95 #96
sp_set_oguid(453332);
alter database standby;  

12 配置sql日志

所有节点修改sqllog.ini(实例路径下)

vi /dm/dmdata/dmdb/sqllog.ini

BUF_TOTAL_SIZE          = 10240         #SQLs Log Buffer Total Size(K)(1024~1024000)
BUF_SIZE                = 1024          #SQLs Log Buffer Size(K)(50~409600)
BUF_KEEP_CNT            = 6             #SQLs Log buffer keeped count(1~100)

[SLOG_ALL]
	FILE_PATH = ../log
	PART_STOR = 1
	SWITCH_MODE = 2
	SWITCH_LIMIT = 512
	ASYNC_FLUSH = 1
	FILE_NUM = 5
	ITEMS = 0
	SQL_TRACE_MASK = 2:3:25
	MIN_EXEC_TIME = 1500
	USER_MODE = 0
	USERS = 

13 部署普通监视器

新建确认监视器配置文件 dmmonitor.ini,执行以下命令:

vi /dm/dmdata/dmdb/dmmonitor.ini

MON_DW_CONFIRM    = 0 
MON_LOG_PATH    = /home/dmdba/dmdbms/log
MON_LOG_INTERVAL  = 60
MON_LOG_FILE_SIZE   = 200 
MON_LOG_SPACE_LIMIT  = 1024
[GRP_RW2] 
 MON_INST_OGUID    = 453332
	 MON_DW_IP     = 10.10.10.94:7536
	 MON_DW_IP     = 10.10.10.95:7536
	 MON_DW_IP     = 10.10.10.96:7536

14 注册守护进程服务

三台都需要注册,方式如下:

cd /home/dmdba/dmdbms/script/root/
./dm_service_installer.sh -t dmwatcher -i /dm/dmdata/dmdb/dmwatcher.ini  -p  RW

注册服务:(root用户)
[root@dm94 root]# cd /home/dmdba/dmdbms/script/root/
[root@dm94 root]# ./dm_service_installer.sh -t dmwatcher -i /dm/dmdata/dmdb/dmwatcher.ini  -p  RW
Created symlink from /etc/systemd/system/multi-user.target.wants/DmWatcherServiceRW.service to /usr/lib/systemd/system/DmWatcherServiceRW.service.
创建服务(DmWatcherServiceRW)完成
[root@dm94 root]# 

启动守护进程:

systemctl start DmWatcherServiceRW

15 注册监视器服务

注意:监视器服务器最好单独一台服务器,本次放主库上(只需要在主库操作)

cd /home/dmdba/dmdbms/script/root/
./dm_service_installer.sh -t dmmonitor -i /dm/dmdata/dmdb/dmmonitor.ini -p DMM

[root@dm94 bin]# cd /home/dmdba/dmdbms/script/root//
[root@dm94 root]# ./dm_service_installer.sh -t dmmonitor -i /dm/dmdata/dmdb/dmmonitor.ini -p DMM
Created symlink from /etc/systemd/system/multi-user.target.wants/DmMonitorServiceDMM.service to /usr/lib/systemd/system/DmMonitorServiceDMM.service.
创建服务(DmMonitorServiceDMM)完成

[root@dm94 root]# 

#启动方式
cd /home/dmdba/dmdbms/bin
./dmmonitor /dm/dmdata/dmdb/dmmonitor.ini

16 验证主备集群同步状态

使用 disql 客户端登录备库,查询测试表验证,执行以下命令:

disql SYSDBA/'"dameng123"'@192.168.25.94:5236

SQL 提示符下执行以下命令:

create table test(id int);
insert into test values (1);
commit;

使用 disql 客户端登录备库,查询测试表验证,执行以下命令:

disql SYSDBA/'"dameng123"'@192.168.25.95:5236
select * from test;

使用 disql 客户端登录备库,查询测试表验证,执行以下命令:

disql SYSDBA/'"dameng123"'@192.168.25.96:5236
select * from test;

查看数据是否正常同步。

17 优化dm.ini参数

参数优化
集群部署完成后,需要优化dm.ini 参数,主备库都需要修改。参数值优化详见参数优化部分。
具体参考:https://eco.dameng.com/docs/zh-cn/ops/standard-rw-cluster.html#%E5%8F%82%E6%95%B0%E4%BC%98%E5%8C%96

重启集群
读写分离集群重启与主备相同:

重启顺序
集群部署完成后,需要优化 dm.ini 参数,主备库都需要修改。参数值优化详见3.8单机参数优化部分。
重启集群(参数修改后需要重启集群)
严格安装顺序执行

关闭监视器:systemctl stop DmMonitorServiceDMM

关闭主库守护进程:systemctl stop DmWatcherServiceRW
关闭备库守护进程:systemctl stop DmWatcherServiceRW

关闭主库实例:systemctl stop DmServicedmdb
关闭备库实例:systemctl stop DmServicedmdb

启动主库实例:systemctl start DmServicedmdb
启动备库实例:systemctl start DmServicedmdb

启动主库守护进程:systemctl start DmWatcherServiceRW
启动备库守护进程:systemctl start DmWatcherServiceRW

启动监视器:systemctl start DmMonitorServiceDMM

18 定制备份策略

生产环境同时也需要指定备份策略,可以参考以下链接学习:
https://eco.dameng.com/docs/zh-cn/ops/standard-stand-alone.html#%E5%AE%9A%E5%88%B6%E5%A4%87%E4%BB%BD%E7%AD%96%E7%95%A5

24小时免费服务热线:400 991 6599
达梦技术社区:https://eco.dameng.com

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-01-24 10:57:59  更:2022-01-24 11:00:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 14:22:33-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码