本文档由 石墨办公 提供。
| 项目 | 示例值 |
|---|---|
| 数据库安装目录 | /opt/dmdbms |
| 数据库存放目录 | /dmdata/data |
| 数据库名 | DMTEST |
| 实例名 | DBSERVER |
| 数据库端口 | 5236 |
| 管理员账号 | SYSDBA |
| 管理员密码 | <SYSDBA_PASSWORD> |
说明:文档中的 <SYSDBA_PASSWORD>、<SYSAUDITOR_PASSWORD>是占位符,实际操作时请替换成符合密码复杂度要求的真实密码。
dminit、dmserver、disql 等文件,说明达梦软件已经安装。dmserver V8
version: 03134284194-20240920-243574-20108dmdba 用户运行数据库。检查用户是否存在:root 用户创建:root 用户执行:dmdba 用户。dmdba 用户:create dm database success/dmdata/data/DMTEST/dmdata/data/DMTEST/dm.iniroot 或 dmdba 用户编辑配置文件:COMPATIBLE_MODE = 4
ORDER_BY_NULLS_FLAG = 0root 用户:DmServiceDBSERVER.serviceActive: active (running)dmserver 监听 5236,说明数据库端口正常。dmdba 用户:OK
-----------
1disql 中执行:INSTANCE_NAME DBSERVER
PORT_NUM 5236
COMPATIBLE_MODE 4
ORDER_BY_NULLS_FLAG 0COMPATIBLE_MODE = 4PATHPATH=/dmdata/dataPATH 是数据库文件的根目录。初始化时,达梦会在该目录下创建数据库目录。DB_NAME=DMTEST,最终目录通常是:/dmdata/data/DMTESTdm.ini 配置文件。/tmp。DB_NAMEDB_NAME=DMTESTDB_NAME 是数据库名称。它会影响数据库目录名称、日志文件名称等。DB_NAME=DMTEST 时,通常会生成:/dmdata/data/DMTEST
/dmdata/data/DMTEST/DMTEST01.log
/dmdata/data/DMTEST/DMTEST02.logINSTANCE_NAMEINSTANCE_NAME=DBSERVERINSTANCE_NAME 是数据库实例名。注册服务时通常会用于生成服务名称。INSTANCE_NAME=DBSERVERDmServiceDBSERVER.serviceDBSERVER。PORT_NUMPORT_NUM=5236PORT_NUM 是数据库监听端口。应用连接数据库时需要访问这个端口。主机:172.17.9.84
端口:52365236。PAGE_SIZEPAGE_SIZE=32PAGE_SIZE 是数据库页大小,单位是 KB。数据库读写数据时,会以页为基础单位组织数据。PAGE_SIZE=32 表示每个数据页是 32KB。EXTENT_SIZEEXTENT_SIZE=32EXTENT_SIZE 是簇大小,单位是页。可以理解为数据库一次分配空间时使用的基本扩展单位。PAGE_SIZE=32
EXTENT_SIZE=3232KB * 32 = 1024KBCASE_SENSITIVECASE_SENSITIVE=0CASE_SENSITIVE 表示数据库对象名是否大小写敏感。0:大小写不敏感
1:大小写敏感user
USER0。UNICODE_FLAGUNICODE_FLAG=1UNICODE_FLAG 是字符集配置。0:GB18030
1:UTF-8
2:EUC-KRUNICODE_FLAG=1 表示数据库使用 UTF-8 字符集。SYSDBA_PWDSYSDBA_PWD=<SYSDBA_PASSWORD>SYSDBA_PWD 是 SYSDBA 管理员账号密码。SYSDBA 类似数据库超级管理员,拥有较高权限。SYSDBA、123456、password 等简单密码。SYSAUDITOR_PWDSYSAUDITOR_PWD=<SYSAUDITOR_PASSWORD>SYSAUDITOR_PWD 是 SYSAUDITOR 审计管理员账号密码。SYSAUDITOR 主要用于审计相关管理能力。SYSDBA 使用不同密码。COMPATIBLE_MODECOMPATIBLE_MODE = 4COMPATIBLE_MODE 是达梦数据库的兼容模式配置,用于控制数据库在 SQL 语法、函数、部分行为上向哪类数据库靠近。0:默认模式
1:SQL92
2:Oracle
3:MS SQL Server
4:MySQL
5:DM6
6:Teradata
7:PostgreSQL
8:DB2COMPATIBLE_MODE = 4v$dm_ini 查询结 果为准。ORDER_BY_NULLS_FLAGORDER_BY_NULLS_FLAG = 0ORDER_BY_NULLS_FLAG 用于控制 ORDER BY 排序时,NULL 值排在前面还是后面。ORDER_BY_NULLS_FLAG = 0NULLS FIRST 或 NULLS LAST,则应以 SQL 明确指定的行为为准。dm.jdbc.driver.DmDriver
jdbc:dm://<host>:5236com.mysql.cj.jdbc.Driver
jdbc:mysql://<host>:5236dm.ini 文件,建议登录数据库查运行态:COMPATIBLE_MODE 4
ORDER_BY_NULLS_FLAG 0dm.ini 后为什么没生效?dm.ini。dmserver path=/dmdata/data/DMTEST/dm.ini -noconsole至少 8 位
包含字母和数字
避免使用账号名本身PAGE_SIZEEXTENT_SIZECASE_SENSITIVEUNICODE_FLAGDB_NAMEINSTANCE_NAMEdm.ini 参数可以后期调整,例如:COMPATIBLE_MODEORDER_BY_NULLS_FLAGPORT_NUM/dmdata/data 数据目录。dmdba:dinstall。/dmdata/data/DMTEST/dm.ini 存在。COMPATIBLE_MODE = 4。ORDER_BY_NULLS_FLAG = 0。DmServiceDBSERVER.service 为 active。5236 端口已监听。SYSDBA 能登录数据库。v$dm_ini 中 COMPATIBLE_MODE 运行态值为 4。