本文档介绍达梦数据库网络规划与高可用设计,包括网络规划概述、高可用设计概述、网络架构设计、高可用架构设计、网络配置实施、高可用配置实施、网络规划实战案例、高可用设计实战案例等内容,适合进行达梦数据库网络规划和高可用设计的技术人员参考。
Part01-基础概念与理论知识
1.1 网络规划概述
网络规划定义:
- 定义:网络规划是指根据数据库需求,合理规划网络资源
- 目的:确保网络资源满足数据库需求,提高数据库性能
- 作用:网络资源分配、网络性能优化、网络成本控制
- 意义:确保数据库稳定运行,提高数据库性能
网络规划要素:
- 网络带宽:网络带宽需求、网络带宽规划
- 网络延迟:网络延迟需求、网络延迟优化
- 网络拓扑:网络拓扑设计、网络拓扑优化
- 网络安全:网络安全设计、网络安全加固
- 网络冗余:网络冗余设计、网络故障切换
1.2 高可用设计概述
高可用设计定义:
- 定义:高可用设计是指通过冗余和故障切换,确保系统持续可用
- 目的:确保系统在故障时能够快速恢复,减少业务中断
- 作用:系统可靠性保障、业务连续性保障、故障快速恢复
- 意义:确保数据库稳定运行,提高数据库可用性
高可用设计要素:
- 冗余设计:服务器冗余、存储冗余、网络冗余
- 故障检测:故障检测机制、故障检测时间
- 故障切换:故障切换机制、故障切换时间
- 数据同步:数据同步机制、数据同步延迟
- 故障恢复:故障恢复机制、故障恢复时间
风哥提示:网络规划和高可用设计是数据库高可用的重要环节,需要根据业务需求合理设计。
Part02-生产环境规划与建议
2.1 网络架构设计
# 网络架构设计
1. 网络分层设计:
– 接入层:用户接入、负载均衡
– 汇聚层:流量汇聚、策略控制
– 核心层:高速转发、核心交换
2. 网络分区设计:
– 业务区:业务系统网络
– 数据区:数据库系统网络
– 管理区:管理系统网络
– 备份区:备份系统网络
3. 网络冗余设计:
– 服务器冗余:双网卡绑定、多网卡
– 交换机冗余:双交换机、堆叠 风哥提示:
– 路由器冗余:双路由器、VRRP
– 链路冗余:双链路、链路聚合
4. 网络安全设计:
– 防火墙:网络隔离、访问控制
– VPN:远程访问、安全传输
– IDS/IPS:入侵检测、入侵防护
– ACL:访问控制列表、权限控制
1. 网络分层设计:
– 接入层:用户接入、负载均衡
– 汇聚层:流量汇聚、策略控制
– 核心层:高速转发、核心交换
2. 网络分区设计:
– 业务区:业务系统网络
– 数据区:数据库系统网络
– 管理区:管理系统网络
– 备份区:备份系统网络
3. 网络冗余设计:
– 服务器冗余:双网卡绑定、多网卡
– 交换机冗余:双交换机、堆叠 风哥提示:
– 路由器冗余:双路由器、VRRP
– 链路冗余:双链路、链路聚合
4. 网络安全设计:
– 防火墙:网络隔离、访问控制
– VPN:远程访问、安全传输
– IDS/IPS:入侵检测、入侵防护
– ACL:访问控制列表、权限控制
2.2 高可用架构设计
# 高可用架构设计
1. 主备架构:
– 主库:处理业务请求
– 备库:实时同步主库数据
– 故障切换:主库故障时切换到备库
– 优点:架构简单,成本低
– 缺点:备库不处理业务,资源浪费
2. 双活架构:
– 主库1:处理部分业务请求
– 主库2:处理部分业务请求
– 数据同步:实时同步数据
– 故障切换:任一主库故障时切换到另一主库
– 优点:资源利用率高,性能好
– 缺点:架构复杂,成本高
3. 多活架构:
– 主库1:处理部分业务请求
– 主库2:处理部分业务请求
– 主库3:处理部分业务请求
– 数据同步:实时同步数据
– 故障切换:任一主库故障时切换到其他主库 学习交流加群风哥微信: itpux-com
– 优点:资源利用率高,性能好,可靠性高
– 缺点:架构复杂,成本高
4. 集群架构:
– 节点1:处理业务请求
– 节点2:处理业务请求
– 节点3:处理业务请求
– 共享存储:共享存储设备
– 故障切换:任一节点故障时切换到其他节点
– 优点:资源利用率高,性能好,可靠性高
– 缺点:架构复杂,成本高
1. 主备架构:
– 主库:处理业务请求
– 备库:实时同步主库数据
– 故障切换:主库故障时切换到备库
– 优点:架构简单,成本低
– 缺点:备库不处理业务,资源浪费
2. 双活架构:
– 主库1:处理部分业务请求
– 主库2:处理部分业务请求
– 数据同步:实时同步数据
– 故障切换:任一主库故障时切换到另一主库
– 优点:资源利用率高,性能好
– 缺点:架构复杂,成本高
3. 多活架构:
– 主库1:处理部分业务请求
– 主库2:处理部分业务请求
– 主库3:处理部分业务请求
– 数据同步:实时同步数据
– 故障切换:任一主库故障时切换到其他主库 学习交流加群风哥微信: itpux-com
– 优点:资源利用率高,性能好,可靠性高
– 缺点:架构复杂,成本高
4. 集群架构:
– 节点1:处理业务请求
– 节点2:处理业务请求
– 节点3:处理业务请求
– 共享存储:共享存储设备
– 故障切换:任一节点故障时切换到其他节点
– 优点:资源利用率高,性能好,可靠性高
– 缺点:架构复杂,成本高
生产环境建议:网络规划和高可用设计需要根据业务需求合理设计,确保网络性能和高可用性。
Part03-生产环境项目实施方案
3.1 网络配置实施
# 网络配置实施
1. 网卡配置:
– 网卡绑定:双网卡绑定,提高网络可靠性
– IP地址配置:配置IP地址、子网掩码、网关
– DNS配置:配置DNS服务器
– 主机名配置:配置主机名
2. 网卡绑定配置:
– 模式0:平衡轮询
– 模式1:主动备份
– 模式4:动态链路聚合
– 模式6:自适应负载均衡
3. 网络参数优化:
– TCP参数优化:
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.core.somaxconn = 4096
– 网络缓冲区优化:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
4. 防火墙配置: 学习交流加群风哥QQ113257174
– 开放端口:开放数据库端口5236
– 访问控制:限制访问IP
– 防火墙规则:配置防火墙规则
1. 网卡配置:
– 网卡绑定:双网卡绑定,提高网络可靠性
– IP地址配置:配置IP地址、子网掩码、网关
– DNS配置:配置DNS服务器
– 主机名配置:配置主机名
2. 网卡绑定配置:
– 模式0:平衡轮询
– 模式1:主动备份
– 模式4:动态链路聚合
– 模式6:自适应负载均衡
3. 网络参数优化:
– TCP参数优化:
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
net.core.somaxconn = 4096
– 网络缓冲区优化:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
4. 防火墙配置: 学习交流加群风哥QQ113257174
– 开放端口:开放数据库端口5236
– 访问控制:限制访问IP
– 防火墙规则:配置防火墙规则
3.2 高可用配置实施
# 高可用配置实施
1. 主备配置:
– 主库配置:
– 配置主库参数
– 配置归档日志
– 配置备库连接
– 备库配置:
– 配置备库参数
– 配置数据同步
– 配置故障切换
2. 双活配置:
– 主库1配置:
– 配置主库1参数
– 配置数据同步
– 配置负载均衡
– 主库2配置:
– 配置主库2参数
– 配置数据同步
– 配置负载均衡
3. 故障检测配置:
– 心跳检测:配置心跳检测机制
– 检测时间:配置故障检测时间
– 检测次数:配置故障检测次数
– 检测超时:配置故障检测超时
4. 故障切换配置:
– 切换模式:自动切换、手动切换
– 切换时间:配置故障切换时间
– 切换脚本:配置故障切换脚本
– 切换通知:配置故障切换通知
1. 主备配置:
– 主库配置:
– 配置主库参数
– 配置归档日志
– 配置备库连接
– 备库配置:
– 配置备库参数
– 配置数据同步
– 配置故障切换
2. 双活配置:
– 主库1配置:
– 配置主库1参数
– 配置数据同步
– 配置负载均衡
– 主库2配置:
– 配置主库2参数
– 配置数据同步
– 配置负载均衡
3. 故障检测配置:
– 心跳检测:配置心跳检测机制
– 检测时间:配置故障检测时间
– 检测次数:配置故障检测次数
– 检测超时:配置故障检测超时
4. 故障切换配置:
– 切换模式:自动切换、手动切换
– 切换时间:配置故障切换时间
– 切换脚本:配置故障切换脚本
– 切换通知:配置故障切换通知
风哥提示:网络配置和高可用配置需要根据业务需求合理配置,确保网络性能和高可用性。
Part04-生产案例与实战讲解
更多视频教程www.fgedu.net.cn
4.1 网络规划实战案例
4.1.1 案例一:核心数据库网络规划
# 项目背景
某企业需要为核心业务数据库进行网络规划,确保网络性能和高可用性满足业务需求。
# 规划目标
– 确保网络性能满足需求
– 确保网络高可用性满足需求
– 确保网络安全满足需求
– 确保网络成本合理
# 规划过程
# 1. 需求分析
# 网络性能需求
– 带宽:万兆网络
– 延迟:<1ms - 丢包率:<0.01% # 网络高可用性需求 - 网络冗余:双网卡绑定、双交换机 - 故障切换:<10秒 - 网络可靠性:99.99% # 2. 网络架构设计 # 网络分层设计 - 接入层:用户接入、负载均衡 - 汇聚层:流量汇聚、策略控制 - 核心层:高速转发、核心交换 # 网络分区设计 - 业务区:192.168.1.0/24 - 数据区:192.168.2.0/24 - 管理区:192.168.3.0/24 - 备份区:192.168.4.0/24 # 网络冗余设计 - 服务器冗余:双网卡绑定 - 交换机冗余:双交换机 - 路由器冗余:双路由器 - 链路冗余:双链路 # 3. 网络配置实施 # 网卡配置 [root@fgedu ~]# ip addr show eth0 2: eth0: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:12:34:56 brd ff:ff:ff:ff:ff:ff 更多学习教程公众号风哥教程itpux_com
inet 192.168.2.10/24 brd 192.168.2.255 scope global eth0
valid_lft forever preferred_lft forever
# 网卡绑定配置
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
IPADDR=192.168.2.10
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
ONBOOT=yes
BOOTPROTO=none
BONDING_OPTS=”mode=4 miimon=100″
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
# 网络参数优化
[root@fgedu ~]# cat >> /etc/sysctl.conf << EOF net.ipv4.tcp_max_syn_backlog = 8192 from DB视频:www.itpux.com net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_fin_timeout = 30 net.core.somaxconn = 4096 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 EOF [root@fgedu ~]# sysctl -p # 防火墙配置 [root@fgedu ~]# firewall-cmd --permanent --add-port=5236/tcp success [root@fgedu ~]# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="5236" accept' success [root@fgedu ~]# firewall-cmd --reload success # 4. 验证配置 # 验证网卡绑定 [root@fgedu ~]# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 Bonding Mode: IEEE 802.3ad Dynamic link aggregation Transmit Hash Policy: layer2 (0) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth0 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:12:34:56 Slave queue ID: 0 Slave Interface: eth1 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:12:34:57 Slave queue ID: 0 # 验证网络连接 [root@fgedu ~]# ping -c 4 192.168.2.1 PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data. 64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=0.123 ms 64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=0.124 ms 64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=0.125 ms 64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=0.126 ms --- 192.168.2.1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3002ms rtt min/avg/max/mdev = 0.123/0.124/0.126/0.001 ms # 规划结果 - 网络性能满足需求 - 网络高可用性满足需求 - 网络安全满足需求 - 网络成本合理 - 网络稳定运行
某企业需要为核心业务数据库进行网络规划,确保网络性能和高可用性满足业务需求。
# 规划目标
– 确保网络性能满足需求
– 确保网络高可用性满足需求
– 确保网络安全满足需求
– 确保网络成本合理
# 规划过程
# 1. 需求分析
# 网络性能需求
– 带宽:万兆网络
– 延迟:<1ms - 丢包率:<0.01% # 网络高可用性需求 - 网络冗余:双网卡绑定、双交换机 - 故障切换:<10秒 - 网络可靠性:99.99% # 2. 网络架构设计 # 网络分层设计 - 接入层:用户接入、负载均衡 - 汇聚层:流量汇聚、策略控制 - 核心层:高速转发、核心交换 # 网络分区设计 - 业务区:192.168.1.0/24 - 数据区:192.168.2.0/24 - 管理区:192.168.3.0/24 - 备份区:192.168.4.0/24 # 网络冗余设计 - 服务器冗余:双网卡绑定 - 交换机冗余:双交换机 - 路由器冗余:双路由器 - 链路冗余:双链路 # 3. 网络配置实施 # 网卡配置 [root@fgedu ~]# ip addr show eth0 2: eth0:
link/ether 00:0c:29:12:34:56 brd ff:ff:ff:ff:ff:ff 更多学习教程公众号风哥教程itpux_com
inet 192.168.2.10/24 brd 192.168.2.255 scope global eth0
valid_lft forever preferred_lft forever
# 网卡绑定配置
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
IPADDR=192.168.2.10
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
ONBOOT=yes
BOOTPROTO=none
BONDING_OPTS=”mode=4 miimon=100″
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
[root@fgedu ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
# 网络参数优化
[root@fgedu ~]# cat >> /etc/sysctl.conf << EOF net.ipv4.tcp_max_syn_backlog = 8192 from DB视频:www.itpux.com net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_fin_timeout = 30 net.core.somaxconn = 4096 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 EOF [root@fgedu ~]# sysctl -p # 防火墙配置 [root@fgedu ~]# firewall-cmd --permanent --add-port=5236/tcp success [root@fgedu ~]# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="5236" accept' success [root@fgedu ~]# firewall-cmd --reload success # 4. 验证配置 # 验证网卡绑定 [root@fgedu ~]# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 Bonding Mode: IEEE 802.3ad Dynamic link aggregation Transmit Hash Policy: layer2 (0) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth0 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:12:34:56 Slave queue ID: 0 Slave Interface: eth1 MII Status: up Speed: 10000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:12:34:57 Slave queue ID: 0 # 验证网络连接 [root@fgedu ~]# ping -c 4 192.168.2.1 PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data. 64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=0.123 ms 64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=0.124 ms 64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=0.125 ms 64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=0.126 ms --- 192.168.2.1 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3002ms rtt min/avg/max/mdev = 0.123/0.124/0.126/0.001 ms # 规划结果 - 网络性能满足需求 - 网络高可用性满足需求 - 网络安全满足需求 - 网络成本合理 - 网络稳定运行
4.2 高可用设计实战案例
4.2.1 案例一:主备高可用配置
# 项目背景
某企业需要为核心业务数据库配置主备高可用,确保数据库高可用性满足业务需求。
# 配置目标
– 确保数据库高可用性满足需求
– 确保故障切换时间满足需求
– 确保数据一致性满足需求
– 确保配置成本合理
# 配置过程
# 1. 需求分析
# 高可用性需求
– 故障切换时间:<30秒 - 数据一致性:强一致性 - 数据丢失:无数据丢失 - 可用性:99.99% # 2. 主备架构设计 # 主库配置 - 主库IP:192.168.2.10 - 主库端口:5236 - 主库数据路径:/dm/fgdata - 主库日志路径:/dm/log # 备库配置 - 备库IP:192.168.2.11 - 备库端口:5236 - 备库数据路径:/dm/fgdata - 备库日志路径:/dm/log # 3. 主库配置 # 配置归档日志 SQL> alter database archivelog;
操作已执行
SQL> alter database add archivelog ‘type=local,dest=/dm/arch,file_size=512,space_limit=10240’;
操作已执行
# 配置备库连接
SQL> sp_set_para_value(‘MAL_INI’, 1);
操作已执行
SQL> sp_set_para_value(‘MAL_CHECK_INTERVAL’, 5);
操作已执行
# 配置MAL配置文件
[dmdba@fgedu ~]$ cat /dm/data/dm.ini | grep MAL
MAL_INI = 1
MAL_CHECK_INTERVAL = 5
[dmdba@fgedu ~]$ cat /dm/data/dmmal.ini
[mal_inst1]
mal_inst_name = fgedudb01
mal_host = 192.168.2.10
mal_port = 5336
mal_inst_host = 192.168.2.10
mal_inst_port = 5236
[mal_inst2]
mal_inst_name = fgedudb02
mal_host = 192.168.2.11
mal_port = 5336
mal_inst_host = 192.168.2.11
mal_inst_port = 5236
# 4. 备库配置
# 配置备库参数
SQL> sp_set_para_value(‘MAL_INI’, 1);
操作已执行
SQL> sp_set_para_value(‘MAL_CHECK_INTERVAL’, 5);
操作已执行
# 配置MAL配置文件
[dmdba@fgedu ~]$ cat /dm/data/dm.ini | grep MAL
MAL_INI = 1
MAL_CHECK_INTERVAL = 5
[dmdba@fgedu ~]$ cat /dm/data/dmmal.ini
[mal_inst1]
mal_inst_name = fgedudb01
mal_host = 192.168.2.10
mal_port = 5336
mal_inst_host = 192.168.2.10
mal_inst_port = 5236
[mal_inst2]
mal_inst_name = fgedudb02
mal_host = 192.168.2.11
mal_port = 5336
mal_inst_host = 192.168.2.11
mal_inst_port = 5236
# 配置数据守护
[dmdba@fgedu ~]$ cat /dm/data/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /dm/data/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm/bin/dmserver /dm/data/dm.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /dm/data/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm/bin/dmserver /dm/data/dm.ini
# 5. 启动数据守护
# 启动主库数据守护
[dmdba@fgedu ~]$ dmwatcher /dm/data/dmwatcher.ini
# 启动备库数据守护
[dmdba@fgedu ~]$ dmwatcher /dm/data/dmwatcher.ini
# 6. 验证配置
# 验证主备同步
SQL> select * from v$dataguard;
行号 GRP_NAME INST_NAME MODE STATUS
———- ————- ————- ————– ————–
1 GRP1 fgedudb01 AUTO OPEN
2 GRP1 fgedudb02 AUTO STANDBY
# 验证数据同步
# 在主库插入数据
SQL> insert into fgedu.test_table values (1, ‘test’);
影响行数 1
# 在备库查询数据
SQL> select * from fgedu.test_table;
行号 ID NAME
———- — ——————–
1 1 test
# 配置结果
– 数据库高可用性满足需求
– 故障切换时间满足需求
– 数据一致性满足需求
– 配置成本合理
– 系统稳定运行
某企业需要为核心业务数据库配置主备高可用,确保数据库高可用性满足业务需求。
# 配置目标
– 确保数据库高可用性满足需求
– 确保故障切换时间满足需求
– 确保数据一致性满足需求
– 确保配置成本合理
# 配置过程
# 1. 需求分析
# 高可用性需求
– 故障切换时间:<30秒 - 数据一致性:强一致性 - 数据丢失:无数据丢失 - 可用性:99.99% # 2. 主备架构设计 # 主库配置 - 主库IP:192.168.2.10 - 主库端口:5236 - 主库数据路径:/dm/fgdata - 主库日志路径:/dm/log # 备库配置 - 备库IP:192.168.2.11 - 备库端口:5236 - 备库数据路径:/dm/fgdata - 备库日志路径:/dm/log # 3. 主库配置 # 配置归档日志 SQL> alter database archivelog;
操作已执行
SQL> alter database add archivelog ‘type=local,dest=/dm/arch,file_size=512,space_limit=10240’;
操作已执行
# 配置备库连接
SQL> sp_set_para_value(‘MAL_INI’, 1);
操作已执行
SQL> sp_set_para_value(‘MAL_CHECK_INTERVAL’, 5);
操作已执行
# 配置MAL配置文件
[dmdba@fgedu ~]$ cat /dm/data/dm.ini | grep MAL
MAL_INI = 1
MAL_CHECK_INTERVAL = 5
[dmdba@fgedu ~]$ cat /dm/data/dmmal.ini
[mal_inst1]
mal_inst_name = fgedudb01
mal_host = 192.168.2.10
mal_port = 5336
mal_inst_host = 192.168.2.10
mal_inst_port = 5236
[mal_inst2]
mal_inst_name = fgedudb02
mal_host = 192.168.2.11
mal_port = 5336
mal_inst_host = 192.168.2.11
mal_inst_port = 5236
# 4. 备库配置
# 配置备库参数
SQL> sp_set_para_value(‘MAL_INI’, 1);
操作已执行
SQL> sp_set_para_value(‘MAL_CHECK_INTERVAL’, 5);
操作已执行
# 配置MAL配置文件
[dmdba@fgedu ~]$ cat /dm/data/dm.ini | grep MAL
MAL_INI = 1
MAL_CHECK_INTERVAL = 5
[dmdba@fgedu ~]$ cat /dm/data/dmmal.ini
[mal_inst1]
mal_inst_name = fgedudb01
mal_host = 192.168.2.10
mal_port = 5336
mal_inst_host = 192.168.2.10
mal_inst_port = 5236
[mal_inst2]
mal_inst_name = fgedudb02
mal_host = 192.168.2.11
mal_port = 5336
mal_inst_host = 192.168.2.11
mal_inst_port = 5236
# 配置数据守护
[dmdba@fgedu ~]$ cat /dm/data/dmwatcher.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /dm/data/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm/bin/dmserver /dm/data/dm.ini
[GRP1]
DW_TYPE = GLOBAL
DW_MODE = AUTO
DW_ERROR_TIME = 10
INST_RECOVER_TIME = 60
INST_ERROR_TIME = 10
INST_OGUID = 453331
INST_INI = /dm/data/dm.ini
INST_AUTO_RESTART = 1
INST_STARTUP_CMD = /dm/bin/dmserver /dm/data/dm.ini
# 5. 启动数据守护
# 启动主库数据守护
[dmdba@fgedu ~]$ dmwatcher /dm/data/dmwatcher.ini
# 启动备库数据守护
[dmdba@fgedu ~]$ dmwatcher /dm/data/dmwatcher.ini
# 6. 验证配置
# 验证主备同步
SQL> select * from v$dataguard;
行号 GRP_NAME INST_NAME MODE STATUS
———- ————- ————- ————– ————–
1 GRP1 fgedudb01 AUTO OPEN
2 GRP1 fgedudb02 AUTO STANDBY
# 验证数据同步
# 在主库插入数据
SQL> insert into fgedu.test_table values (1, ‘test’);
影响行数 1
# 在备库查询数据
SQL> select * from fgedu.test_table;
行号 ID NAME
———- — ——————–
1 1 test
# 配置结果
– 数据库高可用性满足需求
– 故障切换时间满足需求
– 数据一致性满足需求
– 配置成本合理
– 系统稳定运行
生产环境建议:网络规划和高可用设计需要根据业务需求合理设计,确保网络性能和高可用性。
Part05-风哥经验总结与分享
5.1 最佳实践
网络规划和高可用设计最佳实践:
- 需求分析:充分分析业务需求,确定网络性能和高可用性需求
- 合理设计:合理设计网络架构和高可用架构
- 冗余设计:采用冗余设计,提高网络和高可用性
- 故障检测:配置故障检测机制,及时发现故障
- 故障切换:配置故障切换机制,快速切换故障
- 定期测试:定期测试故障切换,确保切换正常
- 文档完善:完善网络规划和高可用设计文档
- 经验积累:积累经验,提高网络规划和高可用设计的准确性
5.2 面试技巧
达梦数据库网络规划与高可用设计面试技巧:
- 了解概念:了解网络规划和高可用设计的概念
- 掌握方法:掌握网络规划和高可用设计的方法
- 实践经验:分享网络规划和高可用设计的实践经验
- 案例分析:分享网络规划和高可用设计的案例分析
- 故障处理:分享网络故障和高可用故障的处理经验
- 性能优化:分享网络性能优化的经验
- 持续学习:展示对网络规划和高可用设计的学习能力
风哥提示:网络规划和高可用设计是数据库高可用的重要环节,需要根据业务需求合理设计,确保网络性能和高可用性。
总结:达梦数据库网络规划与高可用设计涵盖了网络规划概述、高可用设计概述、网络架构设计、高可用架构设计、网络配置实施、高可用配置实施、网络规划实战案例、高可用设计实战案例等内容,通过系统学习和实践,可以了解网络规划和高可用设计的方法,在面试中取得好成绩。
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
