达梦数据库安装配置与备份全攻略

DM 数据库(达梦数据库)安装、配置与备份还原指南

一、安装 DM 数据库

1.1 环境准备

操作系统要求
  • 支持 Linux(RedHat/CentOS 7+、Ubuntu 16.04+、Kylin 等)
  • 支持 Windows Server 2012 R2 及以上版本
  • 支持国产操作系统(如统信 UOS、麒麟 OS 等)
硬件要求
  • 内存:建议至少 8GB(生产环境推荐 32GB 以上)
  • 磁盘空间:安装目录需要 5GB 以上,数据目录根据业务需求预留
  • CPU:建议 4 核以上(x86 或 ARM 架构均可)
软件依赖
  • Linux 系统需安装 glibc 2.17+、libstdc++ 等基础库
  • Windows 系统需安装 VC++ 运行库

1.2 获取安装包

官方下载渠道
  1. 访问达梦官网(www.dameng.com)下载中心
  2. 选择与操作系统匹配的版本(如 DM8 for Linux x86_64)
  3. 下载 ISO 镜像或 BIN 安装包(如 DM8_2023.iso)

1.3 详细安装步骤(Linux 环境)

步骤 1:准备安装环境
# 创建安装用户和组
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
passwd dmdba

# 创建安装目录并设置权限
mkdir -p /opt/dmdbms
chown dmdba:dinstall /opt/dmdbms

步骤 2:挂载安装介质
# 如果是 ISO 文件
mount -o loop DM8_2023.iso /mnt

# 如果是 BIN 文件
chmod +x DMInstall.bin

步骤 3:执行图形化安装
# 切换用户
su - dmdba

# 启动安装向导
cd /mnt
./DMInstall.bin -i

安装选项说明

  • 选择语言:中文/English
  • 接受许可协议
  • 安装类型
    • 典型安装:包含核心组件
    • 完全安装:包含所有组件
    • 自定义:可选组件
  • 安装路径:默认为 /opt/dmdbms
  • 组件选择
    • 数据库服务器
    • 客户端工具
    • 管理工具
    • 开发接口
步骤 4:完成安装后配置
# 设置环境变量
echo 'export DM_HOME=/opt/dmdbms' >> ~/.bashrc
echo 'export PATH=$DM_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

1.4 验证安装

# 检查版本
disql -V

# 测试连接
disql SYSDBA/SYSDBA@localhost:5236

二、创建与配置数据库实例

2.1 实例创建详细步骤

使用 dminit 工具:

cd $DM_HOME/bin
./dminit PATH=/dmdata DB_NAME=DMPROD INSTANCE_NAME=DMSERVER \
PORT_NUM=5236 CASE_SENSITIVE=N CHARSET=1 \
SYSDBA_PWD=Dameng123 PAGE_SIZE=32 EXTENT_SIZE=32

参数说明

  • PATH:数据文件存放路径(建议独立磁盘)
  • CASE_SENSITIVE:是否区分大小写(Y/N)
  • CHARSET:字符集(0-GBK,1-UTF8)
  • PAGE_SIZE:页大小(8/16/32KB)
  • EXTENT_SIZE:扩展数据块大小(16/32)

2.2 服务管理

注册系统服务:

# 使用 root 用户操作
$DM_HOME/script/root/dm_service_installer.sh -t dmserver \
-p $DM_HOME/bin/dmserver -i /dmdata/DMPROD/dm.ini \
-n DmServiceDMPROD

服务控制命令

systemctl start DmServiceDMPROD   # 启动
systemctl stop DmServiceDMPROD    # 停止
systemctl status DmServiceDMPROD # 查看状态

2.3 配置文件优化

dm.ini 关键参数

[MEMORY]
MEMORY_TARGET = 8192           # 共享内存大小(MB)
MEMORY_N_POOLS = 200           # 内存池数量

[BUFFER]
BUFFER = 4096                  # 数据缓冲区大小(MB)
BUFFER_POOLS = 16              # 缓冲池数量

[OPTIMIZER]
OPTIMIZER_MODE = 1             # 优化模式(0-传统/1-新)

调整方法

  1. 编辑 /dmdata/DMPROD/dm.ini
  2. 修改参数后保存
  3. 重启实例生效

三、备份与还原操作

3.1 备份策略

类型命令示例特点适用场景
全量备份BACKUP DATABASE FULL...完整备份所有数据每周基础备份
增量备份BACKUP DATABASE INCREMENT...只备份变化数据每日差异备份
归档备份BACKUP ARCHIVELOG ALL...备份归档日志日志备份

3.2 详细备份操作

联机全量备份

-- 使用 SYSDBA 登录
disql SYSDBA/Dameng123@localhost:5236

-- 执行备份
BACKUP DATABASE FULL BACKUPSET '/backup/full_20230501' 
COMPRESSED LEVEL 3 
MAXPIECESIZE 2048 
PARALLEL 4;

参数说明

  • COMPRESSED LEVEL:压缩级别(1-9)
  • MAXPIECESIZE:单个备份片大小(MB)
  • PARALLEL:并行线程数

定时备份配置

# 创建备份脚本
vim /scripts/dm_backup.sh
#!/bin/bash
date_str=$(date +%Y%m%d)
$DM_HOME/bin/disql SYSDBA/Dameng123@localhost:5236 \
`echo "BACKUP DATABASE FULL BACKUPSET '/backup/full_${date_str}';"`

# 设置 cron 任务
0 2 * * 6 /scripts/dm_backup.sh > /var/log/dm_backup.log 2>&1

3.3 还原操作详解

完整恢复流程

  1. 准备环境:
systemctl stop DmServiceDMPROD
mv /dmdata/DMPROD /dmdata/DMPROD_old
mkdir /dmdata/DMPROD

  1. 使用 dmrman 恢复:
$DM_HOME/bin/dmrman
RMAN> RESTORE DATABASE '/dmdata/DMPROD/dm.ini' FROM BACKUPSET '/backup/full_20230501';
RMAN> RECOVER DATABASE '/dmdata/DMPROD/dm.ini' FROM BACKUPSET '/backup/full_20230501';
RMAN> RECOVER DATABASE '/dmdata/DMPROD/dm.ini' UPDATE DB_MAGIC;

  1. 启动验证:
systemctl start DmServiceDMPROD
disql SYSDBA/Dameng123@localhost:5236 -e "SELECT COUNT(*) FROM DBA_OBJECTS;"

3.4 逻辑备份与恢复

导出示例

$DM_HOME/bin/dexp SYSDBA/Dameng123@localhost:5236 \
FILE=/backup/full_exp.dmp \
LOG=/backup/exp.log \
FULL=Y \
COMPRESS=Y \
PARALLEL=4

导入示例

$DM_HOME/bin/dimp SYSDBA/Dameng123@localhost:5236 \
FILE=/backup/full_exp.dmp \
LOG=/backup/imp.log \
FULL=Y \
TABLE_EXISTS_ACTION=replace

四、最佳实践与注意事项

备份策略建议

  • 每周全量备份 + 每日增量备份
  • 保留最近 3 个月备份
  • 异地存储重要备份

性能优化

-- 备份时优化
BACKUP ... BUFFER=1024 PARALLEL=8;

-- 恢复时优化
SET RESTORE SPEED 50;  -- 限制恢复速度(MB/s)

常见问题处理

  • 备份空间不足:添加 MAXSIZE 参数限制大小
  • 恢复失败:检查 dmrman.log 获取详细错误
  • 版本不兼容:使用 SHOW BACKUP INFO 验证版本

监控命令

-- 查看备份历史
SELECT * FROM V$BACKUPSET;

-- 监控恢复进度
SELECT * FROM V$RECOVER_PROGRESS;

安全建议

  • 加密备份:BACKUP ... ENCRYPT WITH <密码>
  • 限制访问:设置备份目录权限为 700
  • 定期验证:CHECK BACKUPSET '/backup/full_20230501'

如需更详细的技术参数或特定场景配置方案,请参考《DM8 系统管理员手册》或联系达梦技术支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值