達夢數據庫安裝
安裝前環境准備
1.創建用戶所在組,命令
groupadd dinstall
2.創建用戶命令
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
3.修改密碼
passwd dmdba
修改文件最大打開數
- 服務器重啟后永久生效
vi /etc/security/limits.conf
添加信息
dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384
切換用戶dmdba 查看是否生效
su -dmdba
ulimit -a
- 參數臨時生效配置
使用dmdba用戶執行
ulimit -n 65536
建立安裝目錄
mkdir /app/dm7(或者dm8)
注意
使用 root 用戶建立文件夾,待 dmdba 用戶建立完成后需將文件所有者更改為 dmdba 用戶,否則無法安裝到該目錄下
修改安裝目錄權限
將新建的安裝路徑目錄權限的用戶修改為 dmdba,用戶組修改為 dinstall。root來操作。命令如下:
chown dmdba:dinstall -R /dm8/
給安裝路徑下的文件設置 755 權限。命令如下:
chmod -R 755 /dm8
數據庫安裝
介質准備,兩種方式 一種通過掛載的方式將安裝文件掛載到系統上進行安裝,另一種方式,將安裝包本地解壓,獲取DMInstall.bin文件並上傳至服務器
當前文檔上傳路徑/media/
命令行安裝
切換至 dmdba 用戶下,在 /mnt 目錄下使用命令行安裝數據庫程序,依次執行以下命令安裝 DM 數據庫。
su - dmdba
cd /media
./DMInstall.bin -i // 可能權限不足 記得使用root權限進行賦權
1. C 中文安裝
2. N
3. Y 21 中國時區
4. 1 典型安裝
數據庫實例配置
使用 dmdba 用戶配置實例,進入到 DM 數據庫安裝目錄下的 bin 目錄中,使用 dminit 命令初始化實例。
dminit 命令可設置多種參數,可執行如下命令查看可配置參數。
./dminit help
格式: ./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,單位:頁
PAGE_SIZE 數據頁大小(8),可選值:4、8、16、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]
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)
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
PAGE_ENC_SLICE_SIZE 設置頁加密分片大小,可選值: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)
DCP_MODE 是否是DCP代理模式(0)
DCP_PORT_NUM DCP代理模式下管理端口
ELOG_PATH 指定初始化過程中生成的日志文件所在路徑
AP_PORT_NUM ECS模式下AP協同工作的監聽端口
HELP 打印幫助信息
需要注意的是頁大小 (page_size)、簇大小 (extent_size)、大小寫敏感 (case_sensitive)、字符集 (charset) 這四個參數,一旦確定無法修改,需謹慎設置。
- extent_size 指數據文件使用的簇大小,即每次分配新的段空間時連續的頁數。只能是 16 頁或 32 頁或 64 頁之一,缺省使用 16 頁。
- page_size 數據文件使用的頁大小,可以為 4 KB、8 KB、16 KB 或 32 KB 之一,選擇的頁大小越大,則 DM 支持的元組長度也越大,但同時空間利用率可能下降,缺省使用 8 KB。
- case_sensitive 標識符大小寫敏感,默認值為 Y 。當大小寫敏感時,小寫的標識符應用雙引號括起,否則被轉換為大寫;當大小寫不敏感時,系統不自動轉換標識符的大小寫,在標識符比較時也不區分大小寫,只能是 Y、y、N、n、1、0 之一。
- charset 字符集選項。0 代表 GB18030;1 代表 UTF-8;2 代表韓文字符集 EUC-KR;取值 0、1 或 2 之一。默認值為 0。
可以使用默認參數初始化實例,需要附加實例存放路徑,命令如下:
./dminit path=/dm/data
以下命令設置頁大小為 32 KB,簇大小為 32 KB,大小寫敏感,字符集為 utf_8,數據庫名為 DMDB,實例名為 DBSERVER,端口為 5237。
./dminit path=/dm/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y
CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5237
注意
如果此處自定義了初始化參數,在后面的注冊服務和啟動數據庫等步驟中,請按實際的自定義參數進行操作。
[dmdba@localhost bin]$ ./dminit
initdb V7.6.1.112-Build(2021.10.28-149686-10036)ENT
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2022-10-28
input system dir: /app/dm7
input db name: das
input port num:
input page size(4, 8, 16, 32): 16
input extent size(16, 32): 32
input sec priv mode(0, 1, 2): 0
input time zone(-12:59,+14:00): +8:00
string case sensitive? ([Y]es, [N]o): N
which charset to use? (0[GB18030], 1[UTF-8], 2[EUC-KR]): 1
length in char? ([Y]es, [N]o): y
enable database encrypt? ([Y]es, [N]o): N
input slice size(512, 4096): 512
page check mode? (0/1/2): 0
input elog path:
auto_overwrite mode? (0/1/2): 0
log file path: /app/dm7/das/das01.log
log file path: /app/dm7/das/das02.log
write to dir [/app/dm7/das].
create dm database success. 2022-03-31 23:32:30
注冊服務
命令行注冊服務
注冊服務需使用 root 用戶進行注冊。使用 root 用戶進入數據庫安裝目錄的 /script/root
下,如下所示:
cd /home/dmdba/dmdbms/script/root
注冊服務
./dm_server_install.sh -h 查看各屬性意義
[root@progs 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 Service Type, include: dmimon,dmap,dmserver,dmwatch,dmrww,dmwmon,dmwatcher,dmmonitor,dmcss,dmcssm,dmasmsvr.
-p Service Name Postfix, is invalid for dmimon,dmap.
-i The path of the ini file, is invalid for dmimon,dmap.
-d The path of dmdcr.ini, is valid for dmserver only, select.
-m Set the start modeof the server, include:open or mount, is valid for dmserver only, select.
-y Set the dependent service, this parameter is valid for dmserver,dmasmsvr in systemd service environment.
-s The path of the service script file, if set this parameter and ignore other parameter but -y.
-h Help
示例
./dm_service_installer.sh -t dmserver -i /app/dm7/das/dm.ini -p DMDASSERVER
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDMDASSERVER.service to /usr/lib/systemd/system/DmServiceDMDASSERVER.service.
創建服務(DmServiceDMDASSERVER)完成
數據庫啟停
服務注冊成功后,啟動數據庫,如下所示:
systemctl start DmServiceDMDASSERVER.service
停止數據庫,如下所示:
systemctl stop DmServiceDMDASSERVER.service
重啟數據庫,如下所示:
systemctl restart DmServiceDMDASSERVER.service
查看數據庫服務狀態,如下所示:
systemctl status DmServiceDMDASSERVER.service
可前台啟動,進入 DM 安裝目錄下的 bin 目錄下,命令如下:
./dmserver /app/dm7/das/dm.ini
該啟動方式為前台啟動,若想關閉數據庫,則輸入 exit 即可。
也可進入 DM 安裝目錄下的 bin 目錄下,啟動/停止/重啟數據庫,如下所示:
./DmServiceDMDASSERVER start/stop/restart
查看數據庫狀態,如下所示:
./DmServiceDMDASSERVER status