Oamc

达梦 DM8 安装与初始化 · 修改记录

这是 database/dameng-install.md 的每次改动内容,按时间从新到旧。其他文章一起提交的部分不会出现在这里。

#1 2026-10-18 +81 −0 docs: 新增数据库/虚拟化/监控/备份 4 个分类和 13 篇文章 a0b4968
 new file mode 100644
 @@ -0,0 +1,81 @@
+---
+tags: [达梦, DM8, 国产化]
+order: 40
+---
+
+# 达梦 DM8 安装与初始化
+
+## 场景
+
+国产化替代项目要装达梦数据库,替换原来的 Oracle / MySQL。
+
+## 前置条件
+
+- 拿到安装包和授权文件(`dm.key`)
+- 操作系统匹配(麒麟 / 统信 / CentOS)
+- 规划好安装目录和数据目录,**不要用 root 跑数据库**
+- 关闭或调整 SELinux
+
+## 配置
+
+```bash
+# 1. 建用户和目录
+groupadd dinstall
+useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
+mkdir -p /dm8 /dmdata
+chown -R dmdba:dinstall /dm8 /dmdata
+
+# 2. 解压并安装(命令行模式)
+unzip dm8_setup.zip
+cd dm8_setup
+./DMInstall.bin -i
+
+# 按提示选:安装目录 /dm8、key 文件、不初始化实例
+```
+
+初始化实例:
+
+```bash
+su - dmdba
+cd /dm8/bin
+./dminit PATH=/dmdata PAGE_SIZE=16 CHARSET=1 CASE_SENSITIVE=1 DB_NAME=DAMENG
+```
+
+注册服务并启动:
+
+```bash
+./dm_service_installer.sh -t dmserver -p DAMENG -dm_ini /dmdata/DAMENG/dm.ini
+systemctl start DmServiceDAMENG
+```
+
+## 验证
+
+```bash
+cd /dm8/bin
+./disql SYSDBA/SYSDBA@127.0.0.1:5236
+```
+
+```sql
+SELECT * FROM v$version;
+SELECT STATUS$ FROM v$instance;
+```
+
+默认端口 5236,默认账号 `SYSDBA`,装完第一件事是改密码。
+
+## 回滚
+
+```bash
+systemctl stop DmServiceDAMENG
+./dm_service_uninstaller.sh -n DmServiceDAMENG
+```
+
+删掉 `/dm8` 和 `/dmdata`。
+
+## 坑
+
+- **用 root 初始化实例**,后面权限全乱,必须 `dmdba`。
+- 字符集选错,中文入库变问号,重装代价很大。
+- `CASE_SENSITIVE` 选了 1,SQL 里表名大小写敏感,MySQL 迁移过来的应用会报错。
+- 内存参数(`MEMORY_POOL`、`BUFFER`)按机器规格调,默认值偏小。
+- 麒麟系统上要先确认依赖库(`libaio` 等)。
+- 授权文件到期会直接拒绝启动,提前看 `dm.key` 的有效期。