flash网站策划书,卖东西怎么做网站,凡客和凡客诚品一样吗,网站关键词先后目录标题 达梦数据库单主转主备配置笔记前期准备服务器环境数据库安装磁盘空间 流程流程图说明基于脱机备份方式的单实例转主备流程图详细步骤说明 详细步骤1. 检查主库归档模式2. 配置主库配置文件dm.ini 文件dmmal.ini 文件dmarch.ini 文件 3. 备份主库数据库4. 备库配置新建… 目录标题 达梦数据库单主转主备配置笔记前期准备服务器环境数据库安装磁盘空间 流程流程图说明基于脱机备份方式的单实例转主备流程图详细步骤说明 详细步骤1. 检查主库归档模式2. 配置主库配置文件dm.ini 文件dmmal.ini 文件dmarch.ini 文件 3. 备份主库数据库4. 备库配置新建备库数据库配置备库配置文件dm.ini 文件复制主库的 dmmal.ini 和 dmarch.ini 文件 5. 恢复备库数据6. 配置主备模式主库备库 7. 配置监视器创建监视器配置文件 dmmonitor.ini启动监视器 验证主备同步注意事项 达梦数据库单主转主备配置笔记
达梦官方文档 数据守护系统构建 前期准备
安装前准备工作 服务器环境 准备至少两台服务器一台作为主库服务器另一台作为备库服务器。确保服务器硬件配置满足达梦数据库运行要求例如有足够的 CPU、内存和磁盘 I/O 性能。 保证服务器之间网络连通且稳定网络延迟应在可接受范围内。开放防火墙所需端口如 5236数据库监听、5266MAL 通信、5216守护进程通信等。可使用 ping 和 telnet 命令进行网络连通性测试。
ping 目标服务器 IP
telnet 目标服务器 IP 端口号数据库安装
在所有服务器上安装相同版本的达梦数据库记录好安装目录如 /dm8。安装过程中可参考官方文档的安装指南确保安装步骤正确。 磁盘空间
为每台服务器规划充足的磁盘空间用于存储数据库文件、备份文件和日志文件。不同类型的文件建议存放在不同的磁盘分区以提高 I/O 性能和数据安全性。例如数据文件存放在数据盘日志文件存放在日志盘备份文件存放在备份盘。
流程 流程图说明
基于脱机备份方式的单实例转主备流程图 #mermaid-svg-ddj5DLAPF3R3IwFA {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .error-icon{fill:#552222;}#mermaid-svg-ddj5DLAPF3R3IwFA .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-ddj5DLAPF3R3IwFA .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-ddj5DLAPF3R3IwFA .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-ddj5DLAPF3R3IwFA .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-ddj5DLAPF3R3IwFA .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-ddj5DLAPF3R3IwFA .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-ddj5DLAPF3R3IwFA .marker{fill:#333333;stroke:#333333;}#mermaid-svg-ddj5DLAPF3R3IwFA .marker.cross{stroke:#333333;}#mermaid-svg-ddj5DLAPF3R3IwFA svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-ddj5DLAPF3R3IwFA .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .cluster-label text{fill:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .cluster-label span{color:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .label text,#mermaid-svg-ddj5DLAPF3R3IwFA span{fill:#333;color:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .node rect,#mermaid-svg-ddj5DLAPF3R3IwFA .node circle,#mermaid-svg-ddj5DLAPF3R3IwFA .node ellipse,#mermaid-svg-ddj5DLAPF3R3IwFA .node polygon,#mermaid-svg-ddj5DLAPF3R3IwFA .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-ddj5DLAPF3R3IwFA .node .label{text-align:center;}#mermaid-svg-ddj5DLAPF3R3IwFA .node.clickable{cursor:pointer;}#mermaid-svg-ddj5DLAPF3R3IwFA .arrowheadPath{fill:#333333;}#mermaid-svg-ddj5DLAPF3R3IwFA .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-ddj5DLAPF3R3IwFA .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-ddj5DLAPF3R3IwFA .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-ddj5DLAPF3R3IwFA .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-ddj5DLAPF3R3IwFA .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-ddj5DLAPF3R3IwFA .cluster text{fill:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA .cluster span{color:#333;}#mermaid-svg-ddj5DLAPF3R3IwFA div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-ddj5DLAPF3R3IwFA :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 开始 检查环境准备 初始化主库 正常启动主库并正常退出 关闭主库 执行脱机备份 拷贝备份文件到备库机器 在备库机器上初始化备库 执行脱机还原 更新备库DB_MAGIC 配置主库dm.ini 配置主库dmmal.ini 配置主库dmarch.ini 配置主库dmwatcher.ini 以Mount方式启动主库 设置主库OGUID 修改主库数据库模式为Primary 配置备库dm.ini 配置备库dmmal.ini 配置备库dmarch.ini 配置备库dmwatcher.ini 以Mount方式启动备库 设置备库OGUID 修改备库数据库模式为Standby 配置监视器dmmonitor.ini 启动主库守护进程 启动备库守护进程 启动监视器 完成主备配置 详细步骤说明 开始检查环境准备 确保所有实例使用的DM服务器版本一致。确保各实例所在主机的操作系统位数、大小端模式、时区及时间设置一致。确保使用同一个用户启动DM服务器和守护进程dmwatcher。 2. 初始化主库在主库机器上初始化数据库。 3. 正常启动主库并正常退出首次启动主库时需要先正常启动并正常退出然后才允许以Mount方式启动。 关闭主库关闭主库确保主库处于关闭状态以便进行脱机备份。 执行脱机备份使用脱机备份命令对主库进行备份生成备份文件。 备份到/opt/dmdbms/bak/master_bak1目录 在备库机器上初始化备库在备库机器上初始化数据库。 在备库机器上关闭备库在备库机器上关闭数据库。 拷贝备份文件到备库机器将备份文件从主库机器拷贝到备库机器的指定目录。 拷贝到POD的/opt/dmdbms/bak/master_bak1/目录 执行脱机还原使用脱机还原命令将备份文件还原到备库。 更新备库DB_MAGIC执行数据库更新操作更新备库的DB_MAGIC。 配置主库相关文件配置主库的dm.ini、dmmal.ini、dmarch.ini和dmwatcher.ini。 以Mount方式启动主库以Mount方式启动主库。 设置主库OGUID使用命令行工具DIsql设置主库的OGUID值。 守护系统唯一 OGUID 值 修改主库数据库模式为Primary修改主库的数据库模式为Primary。 配置备库相关文件配置备库的dm.ini、dmmal.ini、dmarch.ini和dmwatcher.ini。 以Mount方式启动备库以Mount方式启动备库。 设置备库OGUID使用命令行工具DIsql设置备库的OGUID值。 修改备库数据库模式为Standby修改备库的数据库模式为Standby。 配置监视器配置监视器的dmmonitor.ini。 启动主库守护进程启动主库的守护进程。 启动备库守护进程启动备库的守护进程。 启动监视器启动监视器。 完成主备配置在监视器上执行show命令检查所有实例和守护进程的状态是否正常。 结束
以上流程图和详细步骤涵盖了从单实例数据库到主备数据库的完整搭建过程重点突出了脱机备份的步骤。
详细步骤
1. 检查主库归档模式
在进行模式转换前需确保主库已开启归档模式这样才能将事务日志同步到备库保证数据一致性。
# 登录主库服务器
# 使用 disql 工具登录主库
disql SYSDBA/密码# 在 disql 中查询归档模式
SELECT arch_mode FROM v$database;若结果为 Y表示已开启归档模式若为 N则按如下步骤开启
-- 关闭数据库
SHUTDOWN IMMEDIATE;
-- 以 mount 方式启动数据库
STARTUP MOUNT;
-- 开启归档模式
ALTER DATABASE ARCHIVELOG;
-- 打开数据库
ALTER DATABASE OPEN;可参考 达梦数据库归档 获取更多归档相关知识。
2. 配置主库配置文件 修改主库的相关配置文件使主库能与备库进行通信并同步数据。
dm.ini 文件
ps -ef |grep ini
通常位于数据库安装目录下的 data/实例名 目录进行如下修改
INSTANCE_NAME 主库实例名
PORT_NUM 5236 # 数据库监听端口
DW_INACTIVE_INTERVAL 60 # 守护进程检测间隔
ALTER_MODE_STATUS 0 # 不允许在非 mount 状态下修改模式
ENABLE_OFFLINE_TS 2 # 不允许离线表空间
MAL_INI 1 # 开启 MAL 系统
ARCH_INI 1 # 开启归档修改完成后可使用 cat 命令检查配置文件内容是否正确。
cat /dm8/data/实例名/dm.inidmmal.ini 文件
在数据库安装目录下创建该文件配置如下
[MAL_INST1]
MAL_INST_NAME 主库实例名
MAL_HOST 主库 IP 地址
MAL_PORT 5266
MAL_INST_HOST 主库 IP 地址
MAL_INST_PORT 5236
MAL_DW_PORT 5216[MAL_INST2]
MAL_INST_NAME 备库实例名
MAL_HOST 备库 IP 地址
MAL_PORT 5266
MAL_INST_HOST 备库 IP 地址
MAL_INST_PORT 5236
MAL_DW_PORT 5216注意确保 MAL_HOST 和 MAL_INST_HOST 填写正确的 IP 地址。
dmarch.ini 文件
同样在数据库安装目录下创建配置如下
[ARCHIVE_REALTIME]
ARCH_TYPE REALTIME
ARCH_DEST 备库实例名[ARCHIVE_LOCAL1]
ARCH_TYPE LOCAL
ARCH_DEST /dm8/arch # 本地归档路径
ARCH_FILE_SIZE 1024
ARCH_SPACE_LIMIT 0确保 ARCH_DEST 路径存在且有足够的磁盘空间。
3. 备份主库数据库
使用 dmrman 工具对主库数据进行全量备份以便将其恢复到备库。
# 登录主库服务器
# 启动 dmrman 工具
./dmrman# 在 dmrman 中执行全量备份命令
BACKUP DATABASE FULL TO 备份名 BACKUPSET 备份路径;
# 示例
BACKUP DATABASE FULL TO my_backup BACKUPSET /dm8/backup/my_backup;备份过程中可监控备份进度和磁盘空间使用情况。
检查备份集可用性 实操 runuser -l dmdba -c cd /opt/dmdbms/bin ./dmrman CTLSTMTBACKUP DATABASE /opt/dmdbms/dmdata/DAMENG/dm.ini FULL TO master_bak1 BACKUPSET /opt/dmdbms/bak/master_bak14. 备库配置
新建备库数据库
可使用达梦数据库的初始化工具 dminit 来创建备库数据库。
# 登录备库服务器
# 执行初始化命令
./dminit PATH/dm8/data DB_NAME备库数据库名 INSTANCE_NAME备库实例名 PORT_NUM5236根据实际情况调整 PATH、DB_NAME 和 INSTANCE_NAME 等参数。
配置备库配置文件
修改备库的相关配置文件使其与主库配置相匹配。
dm.ini 文件
修改内容与主库类似但实例名使用备库的。
INSTANCE_NAME 备库实例名
PORT_NUM 5236
DW_INACTIVE_INTERVAL 60
ALTER_MODE_STATUS 0
ENABLE_OFFLINE_TS 2
MAL_INI 1
ARCH_INI 1复制主库的 dmmal.ini 和 dmarch.ini 文件
将主库的 dmmal.ini 和 dmarch.ini 文件复制到备库的相同目录下。
scp 主库服务器:/dm8/dmmal.ini /dm8/
scp 主库服务器:/dm8/dmarch.ini /dm8/实操 5. 恢复备库数据
将主库的备份文件复制到备库服务器然后使用 dmrman 工具进行数据恢复。
# 登录备库服务器
# 复制备份文件
scp 主库服务器:备份路径/* /dm8/backup/# 启动 dmrman 工具
./dmrman# 在 dmrman 中执行全量恢复命令
RESTORE DATABASE /dm8/data/备库实例名/dm.ini FROM BACKUPSET 备份路径;
# 示例
RESTORE DATABASE /dm8/data/DAMENG/dm.ini FROM BACKUPSET /dm8/backup/my_backup;# 执行恢复归档日志命令
RECOVER DATABASE /dm8/data/备库实例名/dm.ini WITH ARCHIVED LOG;# 执行更新数据库魔数命令
RECOVER DATABASE /dm8/data/备库实例名/dm.ini UPDATE DB_MAGIC;恢复过程中可能会耗时较长需耐心等待。 实操 /bin/sh /opt/dmdbms/bin/DmAPService startrunuser -l dmdba -c cd /opt/dmdbms/bin ./dmrman CTLSTMTRESTORE DATABASE /opt/dmdbms/dmdata/DAMENG/dm.ini FROM BACKUPSET /opt/dmdbms/bak/master_bak1/runuser -l dmdba -c cd /opt/dmdbms/bin ./dmrman CTLSTMTRECOVER DATABASE /opt/dmdbms/dmdata/DAMENG/dm.ini FROM BACKUPSET /opt/dmdbms/bak/master_bak1/runuser -l dmdba -c cd /opt/dmdbms/bin ./dmrman CTLSTMTRECOVER DATABASE /opt/dmdbms/dmdata/DAMENG/dm.ini UPDATE DB_MAGIC》扩展emptyDir 说明
kubernetes.io~empty - dir 表示这是一个 emptyDir 类型的卷
https://kubernetes.io/docs/concepts/storage/volumes/#emptydir volumes 目录用于存储 Pod 使用的各种卷的数据 6. 配置主备模式
主库
启动主库实例并将其切换到 open 状态。
# 启动主库实例
./dmserver /dm8/data/主库实例名/dm.ini mount
# 示例
./dmserver /dm8/data/DAMENG/dm.ini mount# 使用 disql 登录主库
disql SYSDBA/密码# 在 disql 中执行以下命令将主库切换到 open 状态
ALTER DATABASE OPEN;备库
启动备库实例并将其切换到 standby 状态。
# 启动备库实例
./dmserver /dm8/data/备库实例名/dm.ini mount
# 示例
./dmserver /dm8/data/DAMENG/dm.ini mount# 使用 disql 登录备库
disql SYSDBA/密码# 在 disql 中执行以下命令将备库切换到 standby 状态
ALTER DATABASE STANDBY;7. 配置监视器
监视器用于监控主备库的状态确保主备模式正常运行。
创建监视器配置文件 dmmonitor.ini
内容如下
MON_DW_CONFIRM 1
MON_LOG_PATH /dm8/log # 监视器日志路径
MON_LOG_INTERVAL 60
MON_LOG_FILE_SIZE 32
MON_LOG_SPACE_LIMIT 0[GRP1]
MON_INST_OWNER GRP1
MON_INST_NAME 主库实例名
MON_DW_IP 主库 IP 地址:5216[GRP1]
MON_INST_OWNER GRP1
MON_INST_NAME 备库实例名
MON_DW_IP 备库 IP 地址:5216启动监视器
./dmmonitor /dm8/dmmonitor.ini验证主备同步
# 登录主库
disql SYSDBA/密码# 在主库上创建一个测试表并插入数据
CREATE TABLE test_table (id INT, name VARCHAR(50));
INSERT INTO test_table VALUES (1, test);
COMMIT;# 登录备库
disql SYSDBA/密码# 在备库上查询测试表
SELECT * FROM test_table;若能在备库上查询到主库插入的数据表明主备同步配置成功。
注意事项
操作前务必备份好所有相关数据防止数据丢失。可定期进行全量备份和增量备份。确保主备库之间网络连通防火墙允许相应端口通信。定期检查网络状态和防火墙配置。仔细检查配置文件参数避免因参数错误导致配置失败。配置修改后可使用工具进行语法检查。监控数据库运行状态和性能指标如 CPU 使用率、内存使用率、磁盘 I/O 等及时发现并处理异常情况。