目录
- 准备
- 下载安装包
- 版本选择
- 安装前准备
- 【登录root用户】创建用户
- 【登录root用户】设置限制资源配置
- 【登录dmdba用户】
- 上传iso文件
- 挂载iso
- 创建安装路径
- 开始安装
- 【登录dmdba用户】安装
- 【登录dmdba用户】初始化实例
- 初始化注意事项
- 开始初始化
- 启动数据库
- 启动方式1 (推荐)
- 不注册数据服务方式启动
- 方式2
- 【登录root用户】注册数据库服务方式启动
准备
- vm虚拟机,且安装好centos7 系统
下载安装包
访问达梦的官网下载安装包
官网地址:达梦官网下载地址
版本选择
版本选择如下图
下载到本地之后,解压安装包得到iso文件。
此处我这解压得到的iso文件名称为:dm8_20220720_x86_rh7_64_ent_8.1.2.114_pack11.iso
安装前准备
【登录root用户】创建用户
进入centos7系统中,使用以下命令创建用户,此处用户名称为:dmdba
# 格式:useradd 用户名称
useradd dmdba
给用户dmdba设置密码,此处用户密码为:dmdba
# 格式: passwd dmdba的密码
passwd dmdba
【登录root用户】设置限制资源配置
编辑limits.conf 文件
vim /etc/security/limits.conf
在limits.conf文件中加入以下配置
# 格式:用户名 hard nofile 65536
dmdba hard nofile 65536
# 格式:用户名 soft nofile 65536
dmdba soft nofile 65536
# 格式:用户名 hard stack 32768
dmdba hard stack 32768
# 格式:用户名 oft stack 16384
dmdba soft stack 16384
保存退出后使用命令查看配置结果,
ulimit –a
若输出内容中显示有open files (-n) 65536 和 stack size (kbytes,-s) 16384,表明已经生效。
【登录dmdba用户】
上传iso文件
登录dmdba用户后,
使用命令进入当前用户的登录目录下,默认情况下登录进入的目录就是当前用户的目录。
cd ~
将解压得到的iso文件上传到当前登录者目录下。
挂载iso
在当前登录者目录下创建文件夹:dm8 此文件夹用于挂载iso
# 格式: mkdir 文件夹名称
mkdir ~/dm8
使用命令将上传的iso文件挂载到dm8 目录
# 格式:mount –o loop iso文件名称 dm8文件夹路径
mount –o loop dm8_20220720_x86_rh7_64_ent_8.1.2.114_pack11.iso /home/dmdba/dm8
挂载成功后,dm8文件夹中存在下图所示的文件
创建安装路径
在 挂载目录 dm8 同级目录下创建文件夹install,此文件夹作为安装达梦8数据库的安装路径。
mkdir ~/install
开始安装
【登录dmdba用户】安装
进入挂载目录dm8 下
cd ~/dm8
执行 DMInstall.bin 达梦安装脚本
./DMInstall.bin –i
安装时选项:
- 选择对应的语言,输入C表示使用中文
- key文件路径,输入N表示不使用key
- 是否设置时区,输入y后进入时区设置
- 时区选择输入21,表示使用中国标准时间
- 安装目录输入时,输入 自己创建的安装文件夹路径,此处为:~/install 或 /home/dmdba/install
等待安装完成
【登录dmdba用户】初始化实例
安装成功后,install目录下会存在以下的目录结构。
并在install 目录下创建数据存储文件夹data
mkdir ~/install/data
初始化前建议查看初始化相关参数
进入bin目录,
cd ~/install/bin
使用命令查看初始化参数说明
./dminit help
参数说明如下:
[dmdba@localhost bin]$ ./dminit help
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2023-07-20
version: 03134283890-20220720-165295-10045 Pack11
格式: ./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 页检查模式(0),可选值:0/1/2
PAGE_HASH_NAME 设置页检查HASH算法
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 设置页加密分片大小,可选值: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 分布式环境下协同工作的监听端口
DFS_FLAG 初始化时设置dm.ini中的DFS_INI(0)
DFS_PATH 启用dfs时指定数据文件的缺省路径
DFS_HOST 指定连接分布式系统DFS的服务地址(localhost)
DFS_PORT 指定连接分布式系统DFS的服务端口号(3332)
DFS_COPY_NUM 指定分布式系统的副本数(3)
DFS_DB_NAME 指定分布式系统的中数据库名(默认与DB_NAME一致)
SHARE_FLAG 指定分布式系统中该数据库的共享属性(0)
REGION_MODE 指定分布式系统中该数据库的系统表空间数据文件的区块策略(0) 0:微区策略 1:宏区策略
HUGE_WITH_DELTA 是否仅支持创建事务型HUGE表(1) 1:是 0:否
RLOG_GEN_FOR_HUGE 是否生成HUGE表REDO日志(0) 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代替
HELP 打印帮助信息
初始化注意事项
在上诉的初始化参数中,以下四个参数一旦配置,之后无法修改,初始化时请谨慎设置:
- 页大小 (page_size)
- 簇大小 (extent_size)
- 大小写敏感 (case_sensitive)
- 字符集 (charset)
开始初始化
进入 bin 目录
cd ~/install/bin
使用以下命令进行初始化实例
# 说明:
# path=/home/dmdba/install/data: 指定数据存放目录
# PAGE_SIZE=32 :数据文件的页大小32,设置后无法修改
# EXTENT_SIZE=32:簇大小32,设置后无法修改
# CASE_SENSITIVE=N:大小写不敏感,设置后无法修改
# CHARSET=1 :字符集UTF-8,设置后无法修改
# DB_NAME=ZHANGXIAOSAN: 数据库名称,自定义,ZHANGXIAOSAN为我自定义的数据库名称
# INSTANCE_NAME=ZHANGXIAOSAN_SERVER:数据库服务名称,自定义,ZHANGXIAOSAN_SERVER为服务名称
# PORT_NUM=5236:服务端口号5236
./dminit path=/home/dmdba/install/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=N CHARSET=1 DB_NAME=ZHANGXIAOSAN INSTANCE_NAME=ZHANGXIAOSAN_SERVER PORT_NUM=5236
初始化完成之后,在 ~/install/data下可以看到文件夹ZHANGXIAOSAN,这个ZHANGXIAOSAN就是 数据库存放数据的地址
ll ~/install/data
启动数据库
在以下方式中选择一种启动即可
启动方式1 (推荐)
不注册数据服务方式启动
进入**~/install/bin/service_template/**目录下,将此目录的 DmService 复制到 bin目录下
cp ~/install/bin/service_template/DmService ~/install/bin/DmService
修改复制到bin中的DmService配置。
vim ~/install/bin/DmService
将其中的INI_PATH 修改为ZHANGXIAOSAN 数据库目录下的dm.ini 文件路径。修改内容如下:
# 未修改前:
DM_HONE="/home/dmdba/install"
INI_PATH=%INI_PATH%
# 修改后
INI_PATH=${DM_HONE}"/data/ZHANGXIAOSAN/dm.ini"
保存退出。
此时,复制到bin下且修改配置之后的DmService 成为启动ZHANGXIAOSAN数据库服务的脚本。
使用以下命令启动数据库
./DmService start
其他命令:
./DmService start # 开启数据库服务;
./DmService stop # 停止数据库服务;
./DmService restart # 重启数据库服务;
./DmService status # 查看数据库状态;
ps -ef|grep ZHANGXIAOSAN # 查看数据库是否开启;
方式2
【登录root用户】注册数据库服务方式启动
进入**~/install/script/root目录下,看到dm_service_installer.sh**脚本文件,此脚本文件为数据库服务注册脚本文件。
cd ~/install/script/root
注册服务前建议使用命令查看注册服务脚本参数说明
./dm_service_installer.sh -h
输出的说明如下:
[root@localhost root]# ./dm_service_installer.sh -h
Usage: dm_service_installer.sh -t service_type [-p service_name_postfix] [-dm_ini dm_ini_file]
[-watcher_ini watcher_ini_file ] [-monitor_ini monitor_ini_file] [-cssm_ini cssm_ini_file]
[-dfs_ini dfs_ini_file] [-dcr_ini dcr_ini_file]
[-dss_ini dss_ini_file] [-drs_ini drs_ini_file] [-dras_ini dras_ini_file] [-dcs_ini dcs_ini_file] [-server server_info]
[-dmap_ini dmap_ini_file] [-dpc_mode SP|MP|BP] [-m open|mount] [-y dependent_service] [-auto true|false]
or dm_service_installer.sh [-s service_file_path]
or dm_service_installer.sh -h
-t 服务类型,包括dmimon,dmap,dmserver,dmwatcher,dmmonitor,dmcss,dmcssm,dmasmsvr,dmasmsvr3,dmdcs,dmdrs,dmdras,dmdss
-p 服务名后缀,对于dmimon,dmap服务类型无效
-dm_ini dm.ini文件路径
-watcher_ini dmwatcher.ini文件路径.
-monitor_ini dmmonitor.ini文件路径.
-dcr_ini dmdcr.ini文件路径.
-cssm_ini dmcssm.ini文件路径.
-dss_ini dss.ini文件路径.
-drs_ini drs.ini文件路径.
-dras_ini dras.ini文件路径.
-dcs_ini dcs.ini文件路径.
-dfs_ini dfs.ini文件路径.
-dmap_ini dmap.ini文件路径.
-dpc_mode DPC节点类型.
-server 服务器信息(IP:PORT)
-auto 设置服务是否自动启动,值为true或false,默认true.
-m 设置服务器启动模式open或mount,只针对dmserver服务类型生效,可选
-y 设置依赖服务,此选项只针对systemd服务环境下的dmserver,dmasmsvr,dmasmsvr3服务生效
-s 服务脚本路径,设置则忽略除-y外的其他参数选项
-h 帮助
使用命令注册数据库服务
# 说明:
# -t dmserver :指定服务类型为dmserver
# -p ZHANGXIAOSAN:指定服务名后缀,后缀为ZHANGXIAOSAN,
# -dm_ini=/home/dmdba/install/data/ZHANGXIAOSAN/dm.ini :指定ZHANGXIAOSAN数据库的初始化文件地址
./dm_service_installer.sh -t dmserver -p ZHANGXIAOSAN -dm_ini /home/dmdba/install/data/ZHANGXIAOSAN/dm.ini
服务注册完成后进入bin目录
cd ~/install/bin
在此目录下执行启动命令
./dmserver /home/dmdba/install/data/ZHANGXIAOSAN/dm.ini
注意:此方式启动会输出启动的详细日志,但是只在当前会话中有效。