DM8达梦数据库 dminit使用手册
1、功能介绍
dminit 是 DM 数据库初始化工具。在安装 DM 的过程中,用户可以选择是否创建初始数据库。如果当时没有创建,那么在安装完成之后,可以利用创建数据库工具 dminit 来创建。
系统管理员可以利用 dminit 工具提供的各种参数,设置数据库存放路径、段页大小、是否对大小写敏感、以及是否使用 UNICODE 等,创建出满足用户需要的数据库。该工具位于安装目录的 /bin 目录下。
2、使用dminit
dminit 工具需要从命令行启动。找到 dminit 所在安装目录 /bin,输入 dminit 和参数后回车。参数在下一节详细介绍。
语法如下:
dminit KEYWORD=value { KEYWORD=value }
KEYWORD:dminit 参数关键字。多个参数之间排列顺序无影响,参数之间使用空格间隔。
初始化一个数据库,放在/home/dmdba/dmdbms目录下,日志文件目录是/home/dmdba/dmdbms,数据文件使用的簇大小为32,数据文件使用的页大小为16,日志文件大小为512,初始化数据库名称为Dm_1,初始化数据库实例名称为Dmserver$1, 初始化设置数据库服务器监听端口号为5237。命令如图2.1所示。
如果创建成功,则屏幕显示如下
initdb V8
db version: 0x7000a
create dm database success. 2023-08-15 11:16:29
此时在/home/dmdba/dmdbms目录下会出现一个Dm_1文件夹,内容包含初始数据库 Dm_1 的相关文件和 DM 数据库启动所必须的配置文件 dm.ini。
3、查看dminit参数
dminit 使用较为灵活,参数较多。用户可使用“dminit HELP”快速查看 dminit 版本信息和各参数信息。
./dminit HELP
initdb V8
db version: 0x7000c
License will expire in 1 day(s) on 2021-12-25
version: 1-2-101-21.12.16-153499-10000-SEC
格式: ./dminit KEYWORD=value
例程: ./dminit PATH=/public/dmdb/dmData PAGE_SIZE=16
关键字 说明(默认值)
----------------------------------------------------------------------------
INI_FILE 初始化文件dm.ini存放的路径
PATH 初始数据库存放的路径
CTL_PATH 控制文件路径
LOG_PATH 日志文件路径
EXTENT_SIZE 数据文件使用的簇大小(16),可选值:16, 32, 64,单位:页
PAGE_SIZE 数据页大小(8),可选值:4, 8, 16, 32,单位:K
LOG_SIZE 日志文件大小(256),单位为:M,范围为:256M ~ 2G
CASE_SENSITIVE 大小敏感(Y),可选值:Y/N,1/0
CHARSET/UNICODE_FLAG 字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
SEC_PRIV_MODE 权限管理模式(0),可选值:0[TRADITION],1[BMJ],2[EVAL]
LENGTH_IN_CHAR VARCHAR类型长度是否以字符为单位(N),可选值:Y/N,1/0
SYSDBA_PWD 设置SYSDBA密码(SYSDBA)
SYSAUDITOR_PWD 设置SYSAUDITOR密码(SYSAUDITOR)
DB_NAME 数据库名(DAMENG)
INSTANCE_NAME 实例名(DMSERVER)
PORT_NUM 监听端口号(5236)
BUFFER 系统缓存大小(100),单位M
TIME_ZONE 设置时区(+08:00)
PAGE_CHECK 页检查模式(3),可选值:0/1/2/3
PAGE_HASH_NAME 设置页检查HASH算法
EXTERNAL_CIPHER_NAME 设置默认加密算法
EXTERNAL_HASH_NAME 设置默认HASH算法
EXTERNAL_CRYPTO_NAME 设置根密钥加密引擎
RLOG_ENCRYPT_NAME 设置日志文件加密算法,若未设置,则不加密
RLOG_POSTFIX_NAME 设置日志文件后缀名,长度不超过10。默认为log,例如DAMENG01.log
USBKEY_PIN 设置USBKEY PIN
PAGE_ENC_SLICE_SIZE 设置页加密分片大小,可选值:0、512、4096,单位:Byte
ENCRYPT_NAME 设置全库加密算法
BLANK_PAD_MODE 设置空格填充模式(0),可选值:0/1
SYSTEM_MIRROR_PATH SYSTEM数据文件镜像路径
MAIN_MIRROR_PATH MAIN数据文件镜像
ROLL_MIRROR_PATH 回滚文件镜像路径
MAL_FLAG 初始化时设置dm.ini中的MAL_INI(0)
ARCH_FLAG 初始化时设置dm.ini中的ARCH_INI(0)
MPP_FLAG Mpp系统内的库初始化时设置dm.ini中的mpp_ini(0)
CONTROL 初始化配置文件(配置文件格式见系统管理员手册)
AUTO_OVERWRITE 是否覆盖所有同名文件(0) 0:不覆盖 1:部分覆盖 2:完全覆盖
USE_NEW_HASH 是否使用改进的字符类型HASH算法(1)
ELOG_PATH 指定初始化过程中生成的日志文件所在路径
AP_PORT_NUM 分布式环境下协同工作的监听端口
HUGE_WITH_DELTA 是否仅支持创建事务型HUGE表(1) 1:是 0:否
RLOG_GEN_FOR_HUGE 是否生成HUGE表REDO日志(1) 1:是 0:否
PSEG_MGR_FLAG 是否仅使用管理段记录事务信息(0) 1:是 0:否
CHAR_FIX_STORAGE CHAR是否按定长存储(N),可选值:Y/N,1/0
SQL_LOG_FORBID 是否禁止打开SQL日志(N),可选值:Y/N,1/0
DPC_MODE 指定DPC集群中的实例角色(0) 0:无 1:MP 2:BP 3:SP,取值1/2/3时也可以用MP/BP/SP代替
SYSSSO_PWD 设置SYSSSO密码(SYSSSO)
SYSDBO_PWD 设置SYSDBO密码(SYSDBO)
PRIV_FLAG 设置权限标记(0),可选值:0[三权分立],1[四权分立]
HELP 打印帮助信息
4、dminit常用参数详解
4.1 PATH
初始数据库存放的路径。默认路径为 dminit.exe 当前所在的工作目录。文件路径长度最大为 256 个字符。可选参数。
4.2 LOG_PATH
初始数据库日志文件的路径。默认值 Windows 下为 PATH\DB_NAME\DB_NAME01.log 和 PATH\DB_NAME\DB_NAME02.log,Linux 下为 PATH/DB_NAME/DB_NAME01.log 和 PATH/DB_NAME/DB_NAME02.log(PATH 和 DB_NAME 表示各自设置的值)。文件路径长度最大为 256 个字符。日志文件路径个数不能超过 10 个。可选参数。数据库创建成功后,可以在运行时使用 ALTER DATABASE 修改数据库语句增加日志文件或对日志文件进行重命名。可通过查询 V$RLOGFILE 的 PATH 列查看当前系统各日志文件的路径。
4.3 PAGE_SIZE
数据文件使用的页大小。取值范围 4、8、16、32,单位:KB。缺省值为 8。可选参数。
选择的页大小越大,则 DM 支持的元组长度也越大,但同时空间利用率可能下降。
数据库创建成功后无法再修改页大小,可通过系统函数 SF_GET_PAGE_SIZE()获取系统的页大小。
4.4 LOG_SIZE
重做日志文件大小。取值范围为 64~2048 之间的整数,单位 MB。缺省值为 256。可选参数。
每个 DM 数据库实例至少有两个重做日志文件,循环使用,LOG_SIZE 设置每个重做日志文件的大小。
设置日志文件路径可以使用 LOG_PATH 参数。
数据库创建成功后,可以在运行时使用 ALTER DATABASE 修改数据库语句增加日志文件的大小。可通过查询 V$RLOGFILE 的 RLOG_SIZE 列查看当前系统各日志文件的大小。
4.5 CASE_SENSITIVE
标识符大小写敏感。当大小写敏感时,小写的标识符应用""括起,否则被系统自动转换为大写;当大小写不敏感时,系统不会转换标识符的大小写,在标识符比较时也不能区分大小写。取值:Y、y、1 表示敏感;N、n、0 表示不敏感。缺省值为 Y。可选参数。
此参数在数据库创建成功后无法修改,可通过系统函数 SF_GET_CASE_SENSITIVE_FLAG()或 CASE_SENSITIVE()查询设置的参数置。
4.6 CHARSET/UNICODE_FLAG
字符集选项。取值范围 0、1、2。0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR。缺省值为 0。可选参数。
此参数在数据库创建成功后无法修改,可通过系统函数 SF_GET_UNICODE_FLAG()或 UNICODE()查询设置的参数置。
4.7 DB_NAME
初始化数据库名称,缺省值为 DAMENG。名称为字符串,长度不能超过 128 个字符。可选参数。数据库名称只能由_、$、大写字母 A 至 Z、小写字母 a 至 z、数字 0 至 9 组成,且第一个字符不能是数字。例如:一个合格的数据库名称为 Dm_1。
数据库名称在数据库创建成功后无法修改,可通过查询 V$DATABASE 的 NAME 列获取数据库名。
4.8 INSTANCE_NAME
初始化数据库实例名称,缺省值为 DMSERVER。名称为字符串,长度不能超过 16 个字符。可选参数。实例名称只能由_、$、大写字母 A 至 Z、小写字母 a 至 z、数字 0 至 9 组成,且第一个字符不能是数字。例如:一个合格的实例名称为 Dmserver$1。
数据库创建成功后,可通过修改 INI 参数 INSTANCE_NAME 的值对此参数的设置进行修改。可通过查询 V$PARAMETER 中的 INSTANCE_NAME 参数名获取当前的数据库实例名。
4.9 PORT_NUM
初始化时设置 dm.ini 中的数据库服务器监听端口号,缺省值为 5236。服务器配置此参数,取值范围 102465534,发起连接端的端口在 102465535 之间随机分配。可选参数。
数据库创建成功后,可通过修改 INI 参数 PORT_NUM 的值对此参数的设置进行修改。可通过查询 V$PARAMETER 中的 PORT_NUM 参数名查看此参数当前的设置值。
4.10 其他参数
事实上,dminit参数还不止以上这些,这里不一一列出。