达梦数据库入门之:初始化数据库(dminit命令行)

达梦数据库初始化有两种方式:css

  1. 图形化界面,采用图形界面方式安装完成达梦数据库之后会自动弹出初始化数据库界面(也能够手动执行$DM_HOME/tool/dbca.sh脚本进行图形化界面的达梦数据库初始化)
  2. 命令行方式,即执行$DM_HOME/bin/dminit进行命令行方式的数据库初始化

dminit的具体用法以下:算法

./dminit help
initdb V7.6.0.142-Build(2019.03.12-103811)ENT 
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2020-03-12
格式: ./dminit     KEYWORD=value

例程: ./dminit     PATH=/public/dmdb/dmData PAGE_SIZE=16

关键字                     说明(默认值)
--------------------------------------------------------------------------------
INI_FILE                   初始化文件dm.ini存放的路径
PATH                       初始数据库存放的路径
CTL_PATH                   控制文件路径
LOG_PATH                   日志文件路径
EXTENT_SIZE                数据文件使用的簇大小(16),可选值:1六、32,单位:页
PAGE_SIZE                  数据页大小(8),可选值:四、八、1六、32,单位:K
LOG_SIZE                   日志文件大小(256),单位为:M,范围为:64M ~ 2G
CASE_SENSITIVE             大小敏感(Y),可选值:Y/N,1/0
CHARSET/UNICODE_FLAG       字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
LENGTH_IN_CHAR             VARCHAR类型长度是否以字符为单位(N),可选值:Y/N,1/0
SYSDBA_PWD                 设置SYSDBA密码(SYSDBA),密码长度为9到48
SYSAUDITOR_PWD             设置SYSAUDITOR密码(SYSAUDITOR),密码长度为9到48
DB_NAME                    数据库名(DAMENG)
INSTANCE_NAME              实例名(DMSERVER)
PORT_NUM                   监听端口号(5236)
TIME_ZONE                  设置时区(+08:00)
PAGE_CHECK                 页检查模式(0),可选值:0/1/2
EXTERNAL_CIPHER_NAME       设置默认加密算法
EXTERNAL_HASH_NAME         设置默认HASH算法
EXTERNAL_CRYPTO_NAME       设置根密钥加密引擎
RLOG_ENC_FLAG              设置日志文件是否加密(N),可选值:Y/N,1/0
USBKEY_PIN                 设置USBKEY PIN
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)
DCP_MODE                   是不是DCP代理模式(0)
DCP_PORT_NUM               DCP代理模式下管理端口
ELOG_PATH                  指定初始化过程当中生成的日志文件所在路径
AP_PORT_NUM                ECS模式下AP协同工做的监听端口
HELP                       打印帮助信息
复制代码

  • 特别须要注意的地方

dminit能够不带任何参数直接执行,可是不能设置INSTANCE_NAME,以下:数据库

./dminit 
initdb V7.6.0.142-Build(2019.03.12-103811)ENT 
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2020-03-12
input system dir: 
input db name: 
input port num: 
复制代码

从上面能够看出,DM_NAME设置完成后就是PORT_NUM,并无INSTANCE_NAME的设置(达梦数据库默认实例名为:DMSERVER)
所以不建议采用不带参数的方式直接执行dminit,缘由除了不能自定义实例名以外,你还会发现有些参数虽然有默认值,但仍是必需要选择后才能进行到下一步,没有直接执行dbca.sh方便。bash

建议采用带参数的方式执行dminit服务器

dminit虽然有不少参数,但大多数状况下默认值便是最佳的选择,因此咱们在使用dminit初始化数据库时,只要指定:post

  1. 初始数据库存放的路径:PATH
  2. 数据库名:DB_NAME(默认为:DAMENG)
  3. 实例名:INSTANCE_NAME(默认为:DMSERVER)
  4. 监听端口号:PORT_NUM(默认为:5236)
[root@dmlab bin]# su - dmdba
[dmdba@dmlab ~]$ cd $DM_HOME/bin
[dmdba@dmlab bin]$ ./dminit PATH=/数据库存放绝对路径  DB_NAME=数据库名  INSTANCE_NAME=实例名  PORT_NUM=监听端口号
复制代码

根据个人测试,在使用完图形化界面完成数据库初始化之后,再次使用dminit进行实例建立,只要PATH不同,数据库名和实例名与已经存在的数据库和实例相同也没有影响,可是PORT_NUM必须不同,达梦数据库是经过PORT_NUM来区分不一样实例的测试


  • 注册数据库服务

采用dminit建立的实例没有对应的服务,不能使用DM服务查看器(包含service或者systemctl命令)进行管理。因此必须在使用命令行建立实例以后进行服务注册,将其注册成系统服务,方便用户管理与控制。ui

注册数据库服务一样能够采用图形化界面和命令行两种方式:加密

  1. 手动执行$DM_HOME/tool/dbca.sh脚本进行图形化界面的数据库服务注册
  2. 手动执行$DM_HOME/script/root/dm_service_installer.sh脚本经过命令行方式注册数据库服务(该脚本必须以root用户执行)

dm_service_installer.sh 用法以下:spa

[root@dmlab root]# ./dm_service_installer.sh -h
Usage: dm_service_installer.sh -t service_type [-p service_name_postfix] [-i ini_file] [-d dcr_ini_file] [-m open|mount] [-y dependent_service]
  or dm_service_installer.sh [-s service_file_path]
  or dm_service_installer.sh -h
   -t     服务类型,包括dmimon,dmap,dmserver,dmwatch,dmrww,dmwmon,dmwatcher,dmmonitor,dmcss,dmcssm,dmasmsvr
   -p     服务名后缀,对于dmimon,dmap服务类型无效
   -i     ini文件路径,对于dmimon,dmap服务类型无效
   -d     dmdcr.ini文件路径,只针对dmserver服务类型生效,可选
   -m     设置服务器启动模式open或mount,只针对dmserver服务类型生效,可选
   -y     设置依赖服务,此选项只针对systemd服务环境下的dmserver和dmasmsvr服务生效
   -s     服务脚本路径,设置则忽略除-y外的其余参数选项
   -h     帮助
复制代码

举例:

./dm_service_installer.sh -t dmserver -i /path_to_dm.ini -p DCA
复制代码

注册完数据库服务之后既可经过如下方式进行管理:

1. DM服务查看器
2. serivce DmServiceDCA status/start/stop (LINUX 6)
3. systemctl status/start/stop DmServiceDCA.service (LINUX 7)
复制代码
相关文章
相关标签/搜索