达梦数据库静默安装
- 达梦数据库在Linux、Windows和Docker环境下的安装与卸载:https://www.xmmup.com/damengshujukuzailinuxwindowshedockerhuanjingxiadeanzhuangyuxiezai.html
- 软件下载:https://www.dameng.com/list_103.html
静默安装
说明:静默安装可以用dmdba用户安装,也可以用root用户安装。dmdba用户安装的话,是无法创建数据库服务的,因此CREATE_DB_SERVICE一定要设置为N,不然会报错。我们一般使用root用户安装。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | docker rm -f lhrdm8 docker run -d --name lhrdm8 -h lhrdm8 \ -p 52360:5236 -p 52361:3389 \ -v /sys/fs/cgroup:/sys/fs/cgroup \ --privileged=true lhrbest/lhrcentos76:8.2 \ /usr/sbin/init docker cp dm8_20210712_x86_rh6_64_ent.zip lhrdm8:/soft/ docker exec -it lhrdm8 bash #close selinux sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0 #close firewalld systemctl stop firewalld && systemctl disable firewalld -- 创建用户和组 groupadd dinstall useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba echo "lhr" | passwd dmdba --stdin -- 配置环境变量 cat >> /root/.bashrc <<"EOF" export DM_HOME=/dm8 export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin alias disql='rlwrap disql' alias dmrman='rlwrap dmrman' EOF cat >> /home/dmdba/.bash_profile <<"EOF" export DM_HOME=/dm8 export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin alias disql='rlwrap disql' alias dmrman='rlwrap dmrman' EOF source /root/.bashrc source /home/dmdba/.bash_profile -- 修改文件打开最大数 echo 'dmdba hard nofile 65536 dmdba soft nofile 65536 dmdba hard stack 32768 dmdba soft stack 16384 ' >> /etc/security/limits.conf -- 安装目录 mkdir /dm8 chown dmdba:dinstall -R /dm8/ chmod -R 755 /dm8 -- 挂载镜像 cd /soft/ unzip dm8_20210712_x86_rh6_64_ent.zip mount -o loop /soft/dm8_20210712_x86_rh6_64_ent/dm8_20210712_x86_rh6_64_ent_8.1.2.38_pack1.iso /mnt -- root静默安装软件 /mnt/DMInstall.bin -q /soft/auto_install.xml -- 查询过期时间 systemctl status DmServiceDMSERVER disql SYSDBA/SYSDBA select EXPIRED_DATE from v$license; |
静默过程:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | [root@lhrdm8 soft]# cat auto_install.xml <?xml version="1.0"?> <DATABASE> <!-- 安装数据库的语言配置,安装中文版配置ZH,英文版配置EN,不区分大小写。不允许为空。 --> <LANGUAGE>EN</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>/dm8</INSTALL_PATH> <!--是否初始化库,取值Y/N、y/n,不允许为空。 --> <INIT_DB>Y</INIT_DB> <!-- 数据库实例参数 --> <DB_PARAMS> <!-- 初始数据库存放的路径,不允许为空 --> <PATH>/dm8/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_PATHS> <CTL_PATH>/dm8/data/DAMENG/dm.ctl</CTL_PATH> </CTL_PATHS> <!-- 初始数据库日志文件的路径,文件路径长度最大为256 --> <LOG_PATHS> <LOG_PATH>/dm8/data/DAMENG/DAMENG01.log</LOG_PATH> <LOG_PATH>/dm8/data/DAMENG/DAMENG02.log</LOG_PATH> </LOG_PATHS> <!-- 数据文件使用的簇大小,只能是16页或32页之一,缺省使用16页 --> <EXTENT_SIZE>16</EXTENT_SIZE> <!-- 数据文件使用的页大小,缺省使用8K,只能是4K、8K、16K 或32K 之一 --> <PAGE_SIZE>8</PAGE_SIZE> <!-- 日志文件使用的簇大小,默认是512,取值范围64和2048之间的整数 --> <LOG_SIZE>512</LOG_SIZE> <!-- 标识符大小写敏感,默认值为 Y。 只能是’Y’, ’y’, ’N’, ’n’, ’1’, ’0’之一 --> <CASE_SENSITIVE>Y</CASE_SENSITIVE> <!-- 字符集选项 ,默认值为 0。0 代表GB18030,1 代表UTF-8,2 代表韩文字符集EUC-KR --> <CHARSET>1</CHARSET> <!-- 设置为1 时,所有 VARCHAR 类型对象的长度以字符为单位,否则以字节为单位。默认值为0。 --> <LENGTH_IN_CHAR>0</LENGTH_IN_CHAR> <!-- 字符类型在计算HASH值时所采用的HASH算法类别。0:原始 HASH算法;1:改进的 HASH算法。默认值为1。 --> <USE_NEW_HASH>1</USE_NEW_HASH> <!-- 初始化时设置SYSDBA的密码,默认为SYSDBA,长度在6 到48个字符之间 --> <SYSDBA_PWD></SYSDBA_PWD> <!-- 初始化时设置SYSAUDITOR的密码,默认为SYSAUDITOR,长度在 6 到48个字符之间 --> <SYSAUDITOR_PWD></SYSAUDITOR_PWD> <!-- 初始化时设置SYSSSO的密码,默认为 SYSSSO,长度在6 到48个字符之间,仅在安全版本下可见和可设置 --> <SYSSSO_PWD></SYSSSO_PWD> <!-- 初始化时设置SYSDBO的密码,默认为 SYSdbO,长度在6 到48个字符之间,仅在安全版本下可见和可设置 --> <SYSDBO_PWD></SYSDBO_PWD> <!-- 初始化时区,默认是东八区。格式为:正负号小时:分钟,范围:-12:59 ~ +14:00 --> <TIME_ZONE>+08:00</TIME_ZONE> <!-- 是否启用页面内容校验,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> <!-- 服务器主密钥,用于加密数据库主密钥,最长为32个字节 --> <SVR_KEY></SVR_KEY> <!-- 数据库主密钥,用于加密库内密钥,如用户加密密钥、列加密密钥,最长为32个字节 --> <DB_KEY></DB_KEY> <!-- 全库加密密钥 ,最长为32个字节 --> <ENCRYPT_PWD></ENCRYPT_PWD> <!-- 全库加密密钥使用的算法名。算法可以是DM内部支持的加密算法,或者是第三方的加密算法。默认使用"AES256_ECB"算法加密 ,最长为128 个字节 --> <ENCRYPT_NAME></ENCRYPT_NAME> <!-- 指定日志文件是否加密。默认值 N。取值Y/N,y/n,1/0 --> <RLOG_ENC_FLAG>N</RLOG_ENC_FLAG> <!-- 用于加密服务器根密钥,最长为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(不使用)。仅在安全版本下可见和可设置。只能是0或1 --> <PRIV_FLAG>0</PRIV_FLAG> </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> [root@lhrdm8 soft]# /mnt/DMInstall.bin -q /soft/auto_install.xml Extract install files.......... 2021-10-14 16:35:59 [INFO] Installing BASE Module... 2021-10-14 16:35:59 [INFO] Installing DM DBMS... 2021-10-14 16:36:02 [INFO] Installing SERVER Module... 2021-10-14 16:36:02 [INFO] Installing CLIENT Module... 2021-10-14 16:36:03 [INFO] Installing DRIVERS Module... 2021-10-14 16:36:04 [INFO] Installing MANUAL Module... 2021-10-14 16:36:04 [INFO] Installing SERVICE Module... 2021-10-14 16:36:06 [INFO] Move log file to log directory. 2021-10-14 16:36:06 [INFO] Change the power of installtion directory successfully. 2021-10-14 16:36:06 [INFO] Starting DmAPService service... 2021-10-14 16:36:07 [INFO] Start DmAPService service successfully. 2021-10-14 16:36:07 [INFO] Installed DM DBMS completely. 2021-10-14 16:36:10 [INFO] Creating database... 2021-10-14 16:36:13 [INFO] Create database completed. 2021-10-14 16:36:13 [INFO] Creating database service... 2021-10-14 16:36:13 [INFO] Create database service completed. 2021-10-14 16:36:13 [INFO] Starting the database service(DmServiceDMSERVER)... 2021-10-14 16:36:29 [INFO] Start the database service(DmServiceDMSERVER) success! [root@lhrdm8 soft]# ps -ef|grep dm dmdba 2667 1 0 16:36 ? 00:00:00 /dm8/bin/dmap dmdba 2735 1 21 16:36 ? 00:00:05 /dm8/bin/dmserver path=/dm8/data/DAMENG/dm.ini -noconsole root 2832 259 0 16:36 pts/0 00:00:00 grep --color=auto dm [root@lhrdm8 soft]# systemctl status DmServiceDMSERVER ● DmServiceDMSERVER.service - DM Instance Service Loaded: loaded (/usr/lib/systemd/system/DmServiceDMSERVER.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2021-10-14 16:36:29 CST; 38s ago Process: 2711 ExecStart=/dm8/bin/DmServiceDMSERVER start (code=exited, status=0/SUCCESS) Main PID: 2735 (dmserver) CGroup: /docker/89ea8f98f2624307c098475d54036aaf55ebc23038b85b59a13caf44d6101b88/system.slice/DmServiceDMSERVER.service └─2735 /dm8/bin/dmserver path=/dm8/data/DAMENG/dm.ini -noconsole Oct 14 16:36:13 lhrdm8 systemd[1]: Starting DM Instance Service... Oct 14 16:36:29 lhrdm8 DmServiceDMSERVER[2711]: [39B blob data] Oct 14 16:36:29 lhrdm8 systemd[1]: Started DM Instance Service. [root@lhrdm8 soft]# disql ^C [root@lhrdm8 soft]# disql SYSDBA/SYSDBA Server[LOCALHOST:5236]:mode is normal, state is open login used time : 4.186(ms) disql V8 SQL> select EXPIRED_DATE from v$license; LINEID EXPIRED_DATE ---------- ------------ 1 2022-07-09 used time: 5.003(ms). Execute id is 53300. |