dameng-guide.md
... ...
@@ -0,0 +1,198 @@
1
+# 达梦数据库(DM8)适配
2
+
3
+## 1. 支持版本
4
+
5
+- DM8
6
+
7
+## 2. Docker安装
8
+
9
+### 参考文档
10
+
11
+[Docker安装 | 达梦技术文档](https://eco.dameng.com/document/dm/zh-cn/start/dm-install-docker.html)
12
+
13
+### 安装前准备
14
+
15
+| 软硬件 | 版本要求 |
16
+| ------ | ----------------- |
17
+| 终端 | X86-64 架构 |
18
+| Docker | 2023年6月版或更新 |
19
+
20
+### 安装步骤
21
+
22
+#### 1. 下载Docker安装包
23
+
24
+访问达梦官网下载:[产品下载 | 达梦数据库](https://eco.dameng.com/download/)
25
+
26
+#### 2. 导入安装包
27
+
28
+```bash
29
+# 拷贝安装包到/opt目录下
30
+docker load -i dm8_20230808_rev197096_x86_rh6_64_single.tar
31
+
32
+# 查看导入的镜像
33
+docker images
34
+```
35
+
36
+#### 3. 启动容器
37
+
38
+```bash
39
+docker run -d -p 30236:5236 \
40
+ --restart=always \
41
+ --name dm8_test \
42
+ --privileged=true \
43
+ -e PAGE_SIZE=16 \
44
+ -e LD_LIBRARY_PATH=/opt/dmdbms/bin \
45
+ -e EXTENT_SIZE=32 \
46
+ -e BLANK_PAD_MODE=1 \
47
+ -e LOG_SIZE=1024 \
48
+ -e UNICODE_FLAG=1 \
49
+ -e LENGTH_IN_CHAR=1 \
50
+ -e INSTANCE_NAME=dm8_test \
51
+ -v /data/dm8_test:/opt/dmdbms/data \
52
+ dm8_single:dm8_20230808_rev197096_x86_rh6_64
53
+```
54
+
55
+**注意**:挂载目录 `/data/dm8_test` 需要足够大的磁盘空间。
56
+
57
+#### 4. 检查容器状态
58
+
59
+```bash
60
+# 查看容器运行状态
61
+docker ps
62
+
63
+# 查看启动日志
64
+docker logs -f dm8_test
65
+# 或
66
+docker logs -f [容器ID]
67
+```
68
+
69
+#### 5. 容器管理命令
70
+
71
+```bash
72
+# 停止数据库
73
+docker stop dm8_test
74
+
75
+# 启动数据库
76
+docker start dm8_test
77
+
78
+# 重启数据库
79
+docker restart dm8_test
80
+```
81
+
82
+**重要提示**:
83
+
84
+1. 在容器内使用disql时,先执行 `source /etc/profile` 防止中文乱码
85
+2. 默认用户名/密码:SYSDBA/SYSDBA001
86
+
87
+## 3. 测试环境信息
88
+
89
+- **服务器**:192.168.175.xxx
90
+
91
+- **Docker镜像**:dm8_test
92
+
93
+- **端口**:30236(映射到容器5236端口)
94
+
95
+ <img src="./images/dameng-2.png" alt="img" style="zoom:67%;" />
96
+
97
+## 4. 安装DM管理工具(Windows)
98
+
99
+### 参考文档
100
+
101
+[DM管理工具 | 达梦技术文档](https://eco.dameng.com/document/dm/zh-cn/start/tool-dm-manager.html)
102
+
103
+### 安装步骤
104
+
105
+1. 从官网下载Windows版DM8安装包
106
+2. 安装时只勾选"DM管理工具"(不安装数据库)
107
+
108
+<img src="./images/dameng-1.png" alt="img" style="zoom: 67%;" />
109
+
110
+## 5. 连接DM数据库
111
+
112
+### 连接信息
113
+
114
+- **地址**:192.168.175.XXX:30236
115
+- **用户名**:SYSDBA
116
+- **密码**:SYSDBA001
117
+
118
+### 使用DM管理工具连接
119
+
120
+1. 打开DM管理工具
121
+
122
+2. 新建连接
123
+
124
+3. 填写上述连接信息
125
+
126
+ ![img](./images/dameng-3.png)
127
+
128
+## 6. Java项目集成
129
+
130
+### Maven依赖
131
+
132
+```xml
133
+<dependency>
134
+ <groupId>com.dameng</groupId>
135
+ <artifactId>DmJdbcDriver18</artifactId>
136
+ <version>8.1.3.111</version>
137
+</dependency>
138
+```
139
+
140
+### 数据库连接配置(dbcp.properties)
141
+
142
+```properties
143
+########dameng##########
144
+driverClassName=dm.jdbc.driver.DmDriver
145
+url=jdbc:dm://192.168.175.XXX:30236/IIDP_DEMO
146
+username=SYSDBA
147
+password=SYSDBA001
148
+```
149
+
150
+## 7. DM数据库兼容性测试
151
+
152
+### 测试连接配置
153
+
154
+```properties
155
+########dameng##########
156
+driverClassName=dm.jdbc.driver.DmDriver
157
+url=jdbc:dm://192.168.175.XXX:30236/SNEST_TEST
158
+username=SNEST_TEST
159
+password=******
160
+```
161
+
162
+### 使用DBeaver连接
163
+
164
+1. **连接方式**:选择ODBC
165
+2. **编辑ODBC模板**:
166
+ - JDBC驱动类:`dm.jdbc.driver.DmDriver`
167
+ - JDBC URL:`jdbc:dm://192.168.175.XXX:30236/SNEST_TEST`
168
+3. **添加驱动**:`DmJdbcDriver18-8.1.3.62.jar`
169
+
170
+<img src="./images/dameng-4.png" alt="img" style="zoom: 67%;" />
171
+
172
+<img src="./images/dameng-5.png" alt="img" style="zoom:67%;" />
173
+
174
+
175
+
176
+## 9.DamengProvider介绍
177
+
178
+`DamengProvider` 是一个专为达梦数据库(DM8)设计的Java JDBC提供者实现类。它继承自 `OracleProvider`,提供了达梦数据库特有的数据类型映射、SQL语法转换和连接处理功能。
179
+
180
+由于DM数据库兼容Oracle语法,测试用例和测试应用程序可以与Oracle保持一致。
181
+
182
+```java
183
+public class DamengProvider extends OracleProvider {
184
+ @Override
185
+ public String getDBType() {
186
+ return DBType.Dameng.getName();
187
+ }
188
+}
189
+```
190
+
191
+
192
+
193
+## 10.注意事项
194
+
195
+1. 确保挂载的磁盘空间足够
196
+2. 容器内使用disql时注意编码设置
197
+3. 根据实际需求调整容器启动参数
198
+4. 生产环境建议使用更复杂的配置和安全设置
... ...
\ No newline at end of file