确认系统参数
[root@localhost ~]# ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited【1048576(即 1GB)以上或 unlimited】
scheduling priority (-e) 0
file size (blocks, -f) unlimited【unlimited】
pending signals (-i) 116902
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536 【65536或unlimited】
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 116902
virtual memory (kbytes, -v) unlimited【1048576(即 1GB)以上或 unlimited】
file locks (-x) unlimited
[root@localhost ~]#
创建用户组及用户,设置用户密码
[root@localhost ~]# groupadd -g 12349 dinstall
[root@localhost ~]# useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
[root@localhost ~]# passwd dmdba
上传安装文件
[root@localhost ~]# cd /home/dmdba/
[root@localhost dmdba]# ll
total 1149172
-rw-r--r-- 1 root root 1176750113 Aug 23 10:02 DMInstall.bin
-rw-r--r-- 1 root root 5956 Aug 30 11:02 auto_install.xml
安装文件授权
[root@localhost dmdba]# chown dmdba.dinstall *
[root@localhost dmdba]# chmod 755 ./DMInstall.bin
[root@localhost dmdba]# su - dmdba
Last login: Wed Aug 23 09:55:15 CST 2023 on pts/2
[dmdba@localhost ~]$ ll
total 1149172
-rwxr-xr-x 1 dmdba dinstall 1176750113 Aug 23 10:02 DMInstall.bin
-rw-r--r-- 1 dmdba dinstall 5956 Aug 30 11:02 auto_install.xml
静默安装配置文件
<DATABASE>
<!--安装数据库的语言配置,安装中文版配置 ZH,英文版配置 EN,不区分大小写。不允许为空。-->
<LANGUAGE>zh</LANGUAGE>
<!--安装程序的时区配置,缺省为+08:00,取值范围:-12:59 ~ +14:00 -->
<TIME_ZONE>+08:00</TIME_ZONE>
<!-- key 文件路径 -->
<KEY></KEY>
<!--安装程序组件类型,取值范围:0、1、2,0 表示安装全部,1 表示安装服务器,2 表示安装客户端。缺省为 0。 -->
<INSTALL_TYPE>0</INSTALL_TYPE>
<!--安装路径,不允许为空。 -->
<INSTALL_PATH>/home/dmdba/dmdbms</INSTALL_PATH>
<!--是否初始化库,取值范围:Y/N、y/n,不允许为空。 -->
<INIT_DB>Y</INIT_DB>
<!--数据库实例参数 -->
<DB_PARAMS>
<!--初始数据库存放的路径,不允许为空 -->
<PATH>/home/dmdba/dmdbms/data</PATH>
<!--初始化数据库名字,缺省为 DAMENG,不超过 128 个字符 -->
<DB_NAME>DAMENG</DB_NAME>
<!--初始化数据库实例名字,缺省为 DMSERVER,不超过 128 个字符 -->
<INSTANCE_NAME>DMSERVER</INSTANCE_NAME>
<!--初始化时设置 dm.ini 中的 PORT_NUM,缺省为 5236,取值范围:1024~65534 -->
<PORT_NUM>5236</PORT_NUM>
<!--初始数据库控制文件的路径,文件路径长度最大为 256 -->
<CTL_PATH>/home/dmdba/dmdbms/data/DAMENG/dm.ctl</CTL_PATH>
<!--初始化数据库日志文件的路径,文件路径长度最大为 256,LOG_PATH 值为空则使用缺省值,如果使用非默认值 LOG_PATH 节点数不能少于 2 个 -->
<LOG_PATHS>
<LOG_PATH>
</LOG_PATH>
</LOG_PATHS>
<!--数据文件使用的簇大小,取值范围:16 页、32 页,缺省为 16 页 -->
<EXTENT_SIZE>16</EXTENT_SIZE>
<!--数据文件使用的页大小,取值范围:4K、8K、16K、32K,缺省为 8K -->
<PAGE_SIZE>8</PAGE_SIZE>
<!--日志文件使用的簇大小,缺省为 256,取值范围为 64~2048 之间的整数 -->
<LOG_SIZE>256</LOG_SIZE>
<!--标识符大小写敏感。取值范围:Y/N y/n 1/0,缺省为 Y -->
<CASE_SENSITIVE>Y</CASE_SENSITIVE>
<!--字符集选项,缺省为 0。0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR -->
<CHARSET>0</CHARSET>
<!--规定 VARCHAR 对象长度的单位。取值范围:0,1。1:所有 VARCHAR 类型对象的长度以字符为单位;0:有 VARCHAR 类型对象的长度以字节为单位。缺省为 0。 -->
<LENGTH_IN_CHAR>0</LENGTH_IN_CHAR>
<!--字符类型在计算 HASH 值时所采用的 HASH 算法类别。取值范围 0,1。0:原始 HASH算法;1:改进的 HASH 算法。缺省为 1。 -->
<USE_NEW_HASH>1</USE_NEW_HASH>
<!--初始化时设置 SYSDBA 的密码,缺省为 SYSDBA,长度在 9 到 48 个字符之间 -->
<SYSDBA_PWD>sysdba@123</SYSDBA_PWD>
<!--初始化时设置 SYSAUDITOR 的密码,缺省为 SYSAUDITOR,长度在 9 到 48 个字符之间 -->
<SYSAUDITOR_PWD>sysdba@123</SYSAUDITOR_PWD>
<!--初始化时设置 SYSSSO 的密码,缺省为 SYSSSO,长度在 9 到 48 个字符之间,仅在安全版本下可见和可设置 -->
<SYSSSO_PWD>sysdba@123</SYSSSO_PWD>
<!--初始化时设置 SYSDBO 的密码,缺省为 SYSDBO,长度在 9 到 48 个字符之间,仅在安全版本下可见和可设置 -->
<SYSDBO_PWD>sysdba@123</SYSDBO_PWD>
<!--初始化时区,默认是东八区。格式为:正负号小时:分钟,取值范围:-12:59 ~ +14:00 -->
<TIME_ZONE>+08:00</TIME_ZONE>
<!--是否启用页面内容校验,取值范围:0,1,2。0:不启用;1:简单校验;2:严格校验(使用 CRC16 算法生成校验码)。缺省为 0 -->
<PAGE_CHECK>0</PAGE_CHECK>
<!--设置默认加密算法,不超过 128 个字符 -->
<EXTERNAL_CIPHER_NAME></EXTERNAL_CIPHER_NAME>
<!--设置默认 HASH 算法,不超过 128 个字符 -->
<EXTERNAL_HASH_NAME></EXTERNAL_HASH_NAME>
<!--设置根密钥加密引擎,不超过 128 个字符 -->
<EXTERNAL_CRYPTO_NAME></EXTERNAL_CRYPTO_NAME>
<!--全库加密密钥使用的算法名。算法可以是 DM 内部支持的加密算法,或者是第三方的加密算法。默认使用"AES256_ECB"算法加密,最长为 128 个字节 -->
<ENCRYPT_NAME></ENCRYPT_NAME>
<!--用于加密服务器根密钥,最长为 48 个字节 -->
<USBKEY_PIN></USBKEY_PIN>
<!--设置空格填充模式,取值范围:0,1,缺省为 0 -->
<BLANK_PAD_MODE>0</BLANK_PAD_MODE>
<!--指定 system.dbf 文件的镜像路径,缺省值为空 -->
<SYSTEM_MIRROR_PATH></SYSTEM_MIRROR_PATH>
<!--指定 main.dbf 文件的镜像路径,缺省值为空 -->
<MAIN_MIRROR_PATH></MAIN_MIRROR_PATH>
<!--指定 roll.dbf 文件的镜像路径,缺省值为空 -->
<ROLL_MIRROR_PATH></ROLL_MIRROR_PATH>
<!--是否是四权分立,取值范围:0,1。0:不使用;1:使用。缺省为 0。仅在安全版本下可见和可设置。-->
<PRIV_FLAG>0</PRIV_FLAG>
<!--指定初始化过程中生成的日志文件所在路径。合法的路径,文件路径长度最大为 257(含结束符),不包括文件名-->
<ELOG_PATH>/home/dmdba/dmdbms/data/DAMENG</ELOG_PATH>
</DB_PARAMS>
<!--是否创建数据库实例的服务,取值范围: Y/N y/n,不允许为空,不初始化数据库将忽略此节点。非 root 用户不能创建数据库服务。 -->
<CREATE_DB_SERVICE>Y</CREATE_DB_SERVICE>
<!--是否启动数据库,取值范围: Y/N y/n,不允许为空,不创建数据库服务将忽略此节点。 -->
<STARTUP_DB_SERVICE>Y</STARTUP_DB_SERVICE>
</DATABASE>
指定一下字符集,否则可能会出现不能解析配置文件的错误
[dmdba@localhost ~]$ export LANG=zh_CN.UTF-8
执行安装,注意配置文件要用全路径
[dmdba@localhost ~]$ ./DMInstall.bin -q /home/dmdba/auto_install.xml
解压安装程序.........
2023-09-01 16:35:52
[INFO] 安装达梦数据库...
2023-09-01 16:35:52
[INFO] 安装 基础 模块...
2023-09-01 16:35:54
[INFO] 安装 服务器 模块...
2023-09-01 16:35:54
[INFO] 安装 客户端 模块...
2023-09-01 16:35:55
[INFO] 安装 驱动 模块...
2023-09-01 16:36:10
[INFO] 安装 手册 模块...
2023-09-01 16:36:12
[INFO] 安装 服务 模块...
2023-09-01 16:36:12
[INFO] 移动日志文件。
2023-09-01 16:36:14
[INFO] 正在启动DmAPService服务...
2023-09-01 16:36:14
[INFO] 启动DmAPService服务成功。
2023-09-01 16:36:15
[INFO] 安装达梦数据库完成。
2023-09-01 16:36:17
[INFO] 开始初始化数据库...
2023-09-01 16:36:20
[INFO] 初始化数据库完成。
2023-09-01 16:36:20
[INFO] 开始创建数据库服务...
2023-09-01 16:36:20
[INFO] 创建数据库服务完成。
2023-09-01 16:36:20
[INFO] 开始启动数据库实例服务(DmServiceDMSERVER)...
2023-09-01 16:36:35
[INFO] 启动数据库实例服务(DmServiceDMSERVER)完成。
[dmdba@localhost ~]$
数据库安装后,自动启动,,查看数据库状态
[dmdba@localhost ~]$ /home/dmdba/dmdbms/bin/DmServiceDMSERVER status
DmServiceDMSERVER (pid 1429) is running.
[dmdba@localhost ~]$
问题一
不能解析安装文件
[root@CentOS7 dmdba]# ./DM8Install_20230418_x86_rh6_64.bin -q /home/dmdba/auto_install.xml
Extract install files.........
Fail to parse the config file(/home/dmdba/auto_install.xml) of Auto Install!
[root@CentOS7 dmdba]#
在运行安装时会出现不能解析配置文件的问题,对于此问题,已发现两种情况会引发
(1)字符集问题
解决方案是设置为中文utf-8
[root@CentOS7 dmdba]# export LANG=zh_CN.UTF-8
[root@CentOS7 dmdba]# ./DMInstall.bin -q /home/dmdba/auto_install.xml
解压安装程序.........
2023-08-30 16:57:10
[INFO] 安装达梦数据库...
2023-08-30 16:57:10
[INFO] 安装 基础 模块...
2023-08-30 16:57:12
.....
(2)未完全卸载,或有残留进程,dmap进程
[root@CentOS7 ~]# ps -ef|grep dm
……
dmdba 13563 1 0 Aug31 ? 00:00:02 /home/dmdba/dmdbms/bin/dmap
dmdba 13718 1 0 Aug31 ? 00:01:24 /home/dmdba/dmdbms/bin/dmserver path=/home/dmdba/dmdbms/data/DAMENG/dm.ini -noconsole
……
[root@CentOS7 ~]#
解决方案
可以使用以下命令,杀掉进程重新尝试
[root@CentOS7 ~]# kill -s 9 `pgrep dmserver`
[root@CentOS7 ~]# kill -s 9 `pgrep dmap`