達夢數據庫初始化有兩種方式:css
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
[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
註冊數據庫服務一樣能夠採用圖形化界面和命令行兩種方式:加密
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)
複製代碼