文章目录
一、部署规划
1.1 版本说明
操作系统版本 | CentOS release 6.10 (Final) |
---|---|
数据库版本 | DM Database Server x64 V8 DB Version: 0x7000a |
内核版本 | 2.6.32-754.el6.x86_64 |
CPU | 8C |
MEM | 16G |
1.2 安装路径规划
说明项 | 安装路径 | 挂载点 | |
---|---|---|---|
软件安装目录 | 达梦安装目录 | /data/dmdba/dmdbms | /data |
数据文件目录 | 达梦数据目录 | /data/dmdba/dmdbms/data | /data |
日志文件目录 | 达梦日志路径 | /data/dmdba/dmdbms/data/DM1/DM101.log/data/dmdba/dmdbms/data/DM1/DM102.log | /data |
1.3 用户与组规划
根据规划配置用户与组信息:
用户名称 | 组 | 用户目录 |
---|---|---|
dmdba | dinstall | /home/dmdba |
1.4 节点规划
IP、端口规划如下:
角色 | 协议类型 | 服务监听端口 |
---|---|---|
dm8 | TCP/IP | 172.32.1.59:5236 |
二、系统环境配置
2.1 创建安装用户
#创建安装用户组 dinstall。
groupadd dinstall
#创建安装用户 dmdba。
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
#初始化用户密码。
passwd dmdba
2.2 检查操作系统限制
参数使用限制:
#data seg size data seg size (kbytes, -d)
建议用户设置为 1048576(即 1GB)以上或 unlimited(无限制),此参数过小 将导致数据库启动失败。
#file size file size(blocks, -f)
建议用户设置为unlimited(无限制),此参数过小将导致数据库安装或初始化 失败。
#open files open files(-n)
建议用户设置为65536以上或unlimited(无限制)。
#virtual memory virtual memory (kbytes, -v)
建议用户设置为 1048576(即 1GB)以上或 unlimited(无限制),此参数过小 将导致数据库启动失败。
如果需要为当前安装用户更改 ulimit 的资源限制,请修改文件 /etc/security/limits.conf。
2.3 检查内存和存储
2.3.1 检查内存
要尽量保证操作系统至少1GB的可用内存(RAM)。 如果可用内存过少,可能导致DM安装或启动失败。
#获取内存总大小
grep MemTotal /proc/meminfo
# 获取内存使用详情
free
2.3.2 检查存储
DM完全安装需要1GB的存储空间,用户需要提前规划好安装目录,预留足够的存储空间。
#查询目录/data可用空间
df -h /data
DM安装程序在安装时将产生临时文件,临时文件需要1GB的存储空间,临时文件目录默认为/tmp。可以使用以下命令检查存储空间。 如果/tmp目录不能保证1GB的存储空间,可以扩展/tmp目录存储空间或者通过设置环境变量DM_INSTALL_TMPDIR指定安装程序的临时目录。具体命令如下所示:
#以bash为例
mkdir -p /data/tmp
DM_INSTALL_TMPDIR=/data/tmp
export DM_INSTALL_TMPDIR
3 安装DM
3.1 拷贝安装脚本
#挂载安装镜像
unzip dm8_setup_rh6_64_ent_8.1.1.45_20191121.zip
mount -o loop dm8_setup_rh6_64_ent_8.1.1.45_20191121.iso /mnt
#复制安装文件到指定目录
mkdir -pv /opt/iso/dm/
cp /mnt/* /opt/iso/dm/
#卸载安装镜像
umount /mnt
3.2 静默安装
创建响应文件
[root@172-32-1-59 ~]# cat /opt/iso/dm/auto_install.xml
<?xml version="1.0"?>
<DATABASE>
<LANGUAGE>en</LANGUAGE>
<TIME_ZONE>+08:00</TIME_ZONE>
<KEY></KEY>
<INSTALL_TYPE>0</INSTALL_TYPE>
<INSTALL_PATH>/data/dmdba/dmdbms</INSTALL_PATH>
<INIT_DB>Y</INIT_DB>
<DB_PARAMS>
<PATH>/data/dmdba/dmdbms/data</PATH>
<DB_NAME>DM1</DB_NAME>
<INSTANCE_NAME>DM1SERVER</INSTANCE_NAME>
<PORT_NUM>5236</PORT_NUM>
<CTL_PATHS>
<CTL_PATH>/data/dmdba/dmdbms/data/DM1/dm.ctl</CTL_PATH>
</CTL_PATHS>
<LOG_PATHS>
<LOG_PATH>/data/dmdba/dmdbms/data/DM1/DM101.log</LOG_PATH>
<LOG_PATH>/data/dmdba/dmdbms/data/DM1/DM102.log</LOG_PATH>
</LOG_PATHS>
<EXTENT_SIZE>16</EXTENT_SIZE>
<PAGE_SIZE>8</PAGE_SIZE>
<LOG_SIZE>512</LOG_SIZE>
<CASE_SENSITIVE>Y</CASE_SENSITIVE>
<CHARSET>1</CHARSET>
<LENGTH_IN_CHAR>1</LENGTH_IN_CHAR>
<USE_NEW_HASH>1</USE_NEW_HASH>
<SYSDBA_PWD></SYSDBA_PWD>
<SYSAUDITOR_PWD></SYSAUDITOR_PWD>
<SYSSSO_PWD></SYSSSO_PWD>
<SYSDBO_PWD></SYSDBO_PWD>
<TIME_ZONE>+08:00</TIME_ZONE>
<PAGE_CHECK>0</PAGE_CHECK>
<EXTERNAL_CIPHER_NAME></EXTERNAL_CIPHER_NAME>
<EXTERNAL_HASH_NAME></EXTERNAL_HASH_NAME>
<EXTERNAL_CRYPTO_NAME></EXTERNAL_CRYPTO_NAME>
<SVR_KEY></SVR_KEY>
<DB_KEY></DB_KEY>
<ENCRYPT_PWD></ENCRYPT_PWD>
<ENCRYPT_NAME></ENCRYPT_NAME>
<RLOG_ENC_FLAG>N</RLOG_ENC_FLAG>
<USBKEY_PIN></USBKEY_PIN>
<BLANK_PAD_MODE>0</BLANK_PAD_MODE>
<SYSTEM_MIRROR_PATH></SYSTEM_MIRROR_PATH>
<MAIN_MIRROR_PATH></MAIN_MIRROR_PATH>
<ROLL_MIRROR_PATH></ROLL_MIRROR_PATH>
<PRIV_FLAG>0</PRIV_FLAG>
</DB_PARAMS>
<CREATE_DB_SERVICE>Y</CREATE_DB_SERVICE>
<STARTUP_DB_SERVICE>Y</STARTUP_DB_SERVICE>
</DATABASE>
安装
[root@172-32-1-59 ~]# /opt/iso/dm/DMInstall.bin -q /opt/iso/dm/auto_install.xml
Extract install files..........
2020-05-14 01:16:30
[INFO] Installing DM DBMS...
2020-05-14 01:16:31
[INFO] Installing BASE Module...
2020-05-14 01:16:36
[INFO] Installing SERVER Module...
2020-05-14 01:16:37
[INFO] Installing CLIENT Module...
2020-05-14 01:16:42
[INFO] Installing DRIVERS Module...
2020-05-14 01:16:42
[INFO] Installing MANUAL Module...
2020-05-14 01:16:43
[INFO] Installing SERVICE Module...
2020-05-14 01:16:46
[INFO] Move ant log file to log directory.
2020-05-14 01:16:46
[INFO] Change the power of installtion directory successfully.
2020-05-14 01:16:46
[INFO] Starting DmAPService service...
2020-05-14 01:16:47
[INFO] Start DmAPService service successfully.
2020-05-14 01:16:47
[INFO] Installed DM DBMS completely.
2020-05-14 01:16:51
[INFO] Creating database...
2020-05-14 01:16:54
[INFO] Create database completed.
2020-05-14 01:16:54
[INFO] Creating database service...
2020-05-14 01:16:54
[INFO] Create database service completed.
2020-05-14 01:16:54
[INFO] Starting the database service(DmServiceDM1SERVER)...
2020-05-14 01:17:09
[INFO] Start the database service(DmServiceDM1SERVER) success!
3.3 dbinit建库
[dmdba@172-32-1-59 ~]$ /data/dmdba/dmdbms/bin/dminit path=/data/dmdba/dmdbms/data page_size=8 DB_NAME=DM2 INSTANCE_NAME=DM1SERVER PORT_NUM=5238
initdb V8
db version: 0x7000a
file dm.key not found, use default license!
License will expire on 2020-11-21
log file path: /data/dmdba/dmdbms/data/DM2/DM201.log
log file path: /data/dmdba/dmdbms/data/DM2/DM202.log
write to dir [/data/dmdba/dmdbms/data/DM2].
create dm database success. 2020-05-14 01:21:09
3.4 注册数据库
[root@172-32-1-59 ~]# /data/dmdba/dmdbms/script/root/dm_service_installer.sh -t dmserver -p DMSERVER2 -dm_ini /data/dmdba/dmdbms/data/DM2/dm.ini
Move the service script file(/data/dmdba/dmdbms/bin/DmServiceDMSERVER2 to /etc/rc.d/init.d/DmServiceDMSERVER2)
Finished to create the service (DmServiceDMSERVER2)
3.5 启动数据库
[root@172-32-1-59 ~]# service DmServiceDMSERVER2 start
Starting DmServiceDMSERVER2: [ OK ]
[root@172-32-1-59 ~]# service DmServiceDMSERVER2 --help
Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]
[root@172-32-1-59 ~]# service DmServiceDMSERVER2 --status-all
Usage: /etc/init.d/DmServiceDMSERVER2 {start|stop|status|condrestart|restart}
3.6 配置环境变量
[dmdba@172-32-1-59 bin]$ cat /home/dmdba/.bashrc
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
export PATH=$PATH:/data/dmdba/dmdbms/bin/
# User specific aliases and functions
3.7 基本操作
DM数据库语法类似于Oracle,可以对比操作。相关操作可参考文档。
3.7.1 连接数据库
#服务器直连
disql SYSDBA/SYSDBA
#使用IP和端口连接
disql SYSDBA/[email protected]:5236
#使用service_name连接
在linux 系统中,dm_svc.conf 文件在/etc 目录下。官方给的配置 dm_svc.conf 示例如下:
cat /etc/dm_svc.conf
zijie=(172.32.1.59:5236)
TIME_ZONE=(480)
LANGUAGE=(en)
disql SYSDBA/SYSDBA@zijie
SQL> select * from v$instance;
LINEID NAME INSTANCE_NAME INSTANCE_NUMBER HOST_NAME SVR_VERSION DB_VERSION
---------- --------- ------------- --------------- ----------- -------------------------- -------------------
START_TIME STATUS$ MODE$ OGUID RAC_SEQNO RAC_ROLE
---------------------------------------------------------------------------------------------------- ------- ------ ----------- ----------- --------
1 DM1SERVER DM1SERVER 1 172-32-1-59 DM Database Server x64 V8 DB Version: 0x7000a
2020-05-14 01:16:54 OPEN NORMAL 0 0 NULL
used time: 211.673(ms). Execute id is 989.
SQL> select username from dba_users;
LINEID USERNAME
---------- ----------
1 SYSSSO
2 SYSDBA
3 SYS
4 SYSAUDITOR
used time: 94.621(ms). Execute id is 991.
SYS-内置管理账号,不能登录数据库
SYSDBA-管理员
SYSAUDITOR-审计员
SYSSSO-安全版特有,安全员