前言

本篇文章讲述linux环境下进行达梦数据库单机部署,希望能帮到大家。


一、安装前准备

1.1数据库部署规划

在进行部署数据库之前,先把部署目录规划好。相关路径规划,根据实际情况去调整 ,本次部署目录规划如下:
安装软件存放目录
/dm/dmiso/dmsoft
数据库安装目录
/dm/dmdbms
软件执行目录
/dm/dmdbms/bin
数据文件目录
/dm/dmdata
归档文件目录
/dm/dmarch
备份文件目录
/dm/dmbak

1.2检查服务器相关资源信息

在安装 DM 数据库之前需要检查或修改操作系统的配置,以保证 DM 数 据库能够正确安装和运行。
本文以演示环境如下:
在这里插入图片描述

1.2.1查看操作系统版本信息

代码如下(示例):

lsb_release -a

在这里插入图片描述

1.2.2查看磁盘信息

代码如下(示例):

 df -h

在这里插入图片描述

1.3创建安装数据库用户、用户组

代码如下(示例):

groupadd dinstall -g 2001
useradd  -G dinstall -m -d /home/dmdba -s /bin/bash -u 2001 dmdba

修改用户密码,密码自行定义
代码如下(示例):

passwd dmdba

在这里插入图片描述
本次部署设置密码:Hh@dameng123

1.4创建数据库部署目录

代码如下(示例):

mkdir  -p /dm/dmdata
mkdir  -p /dm/dmarch
mkdir  -p /dm/dmbak
mkdir  -p /dm/dmiso/dmsoft
mkdir  -p /dm/dmdbms

创建目录后修改用户/用户组
代码如下(示例):

chown -R dmdba:dinstall  /dm/dmdata
chown -R dmdba:dinstall /dm/dmarch
chown -R dmdba:dinstall /dm/dmbak
chown -R dmdba:dinstall /dm/dmiso/dmsoft
chown -R dmdba:dinstall /dm/dmdbms

1.5挂载磁盘管理

磁盘挂载使用LVM管理方式

1.5.1创建PV

代码如下(示例):

pvcreate /dev/vdc

1.5.2创建VG

代码如下(示例):

vgcreate vg_dm /dev/vdc

1.5.3创建LV

代码如下(示例):

lvcreate -L 20G -n lv_dmdata vg_dm
lvcreate -L 20G -n lv_dmbak vg_dm
lvcreate -L 20G -n lv_dmarch vg_dm
lvcreate -L 20G -n lv_dmdbms vg_dm

1.5.4格式化逻辑卷LV

代码如下(示例):

mkfs.ext4 /dev/mapper/vg_dm-lv_dmdata
mkfs.ext4 /dev/mapper/vg_dm-lv_dmbak
mkfs.ext4 /dev/mapper/vg_dm-lv_dmarch
mkfs.xfs /dev/mapper/vg_dm-lv_dmdbms

1.5.5设置自动挂载

查看lv的UUID
代码如下(示例):

blkid -s UUID /dev/mapper/vg_dm-lv_dm

根据查询出lv的UUID修改/etc/fstab
代码如下(示例):

vi /etc/fstab
UUID="373a3542-f227-4cef-9e2b-e14b62f69a2b" /dm/dmbak                   ext4     defaults,noatime        0 0
UUID="373a3542-f227-4cef-9e2b-e14b62f69a1b" /dm/dmdata                  ext4     defaults,noatime        0 0
UUID="373a3542-f227-4cef-9e2b-e14b62f69a3b" /dm/dmarch                   ext4     defaults,noatime        0 0
UUID="373a3542-f227-4cef-9e2b-e14b62f69a4b" /dm/dmdbms                  ext4     defaults,noatime        0 0

1.5.6挂载目录

代码如下(示例):

mount /dev/mapper/vg_dm-lv_dmdata  /dm/dmdata
mount /dev/mapper/vg_dm-lv_dmbak   /dm/dmbak
mount /dev/mapper/vg_dm-lv_dmarch  /dm/dmarch  
mount /dev/mapper/vg_dm-lv_dmdbms  /dm/dmdbms 

1.6修改磁盘调度方法

Linux7永久修改磁盘调度
代码如下(示例):

grubby --update-kernel=ALL --args="elevator=deadline"
reboot

修改后重启再查看调度方法

#cat /sys/block/sda/queue/scheduler

1.6测试磁盘I/O性能

测试磁盘I/O方法:
①使用dd命令测试性能
②使用FIO测试磁盘性能

1.8修改相关系统配置文件

1.8.1/proc/sys/vm/overcommit_memory设置为0

Linux操作系统要注意检查/proc/sys/vm/overcommit_memory是否设置为0。
设置为1或者2时可能会出现操作物理内存有空余,但数据库服务无法申请内存的严重问题。
永久修改方法:
编辑/etc/sysctl.conf ,修改vm.overcommit_memory=0,然后执行sysctl -p 使配置文件生效。

1.8.2关闭防火墙

检查和关闭防火墙
代码如下(示例):

systemctl list-unit-files | grep fire
systemctl stop firewalld.service
systemctl disable firewalld.service

关闭Selinux
代码如下(示例):

vim /etc/selinux/config
SELINUX=disable

1.8.3修改/etc/security/limits.conf

修改配置文件:/etc/security/limits.conf,添加参数如下
代码如下(示例):

vi /etc/security/limits.conf
dmdba  soft      nice       0
dmdba  hard      nice       0
dmdba  soft      as         unlimited
dmdba  hard      as         unlimited
dmdba  soft      fsize      unlimited
dmdba  hard      fsize      unlimited
dmdba  soft      nproc      65536
dmdba  hard      nproc      65536
dmdba  soft      nofile     65536
dmdba  hard      nofile     65536
dmdba  soft      core       unlimited
dmdba  hard      core       unlimited
dmdba  soft      data       unlimited
dmdba  hard      data       unlimited

切换到dmdba检查资源限制是否生效

ulimit  -a

1.8.4修改内核参数

修改内核参数,添加参数如下
代码如下(示例):

vi /etc/sysctl.conf
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.swappiness=10
vm.dirty_background_ratio = 0
vm.min_free_kbytes = 2097152
kernel.core_pattern = /dmdata/core.%p

使内核参数生效:

sysctl -p

1.9网络测试

网络测试
代码如下(示例):

scp -P 33022 testfile* 10.5.0.124:/dm/iotest/

1.10使用root用户挂载数据库软件iso文件

先把iso文件上传至服务器(例如上传至dmdba家目录下)
把iso挂载到/dm/dmiso

mount -o loop dm8_xxx.iso /dm/dmiso

进入/dm/dmiso,把DMInstall.bin复制到/dm/dmiso/dmsoft

cp /dm/dmiso/DMInstall.bin /dm/dmiso/dmsoft

修改用户和用户组为安装数据库的用户、用户组

chown -R dmdba.dinstall /dm/dmdata /dm/dmarch /dm/dmbak /dm/dmdbms

二、安装数据库

2.1执行DMInstall.bin进行安装

在安装数据库前注意用户是否为dmdba,不要使用root用户进行安装

cd /dm/dmiso/dmsoft
./DMInstall.bin -i

安装完成后按照提示使用root执行相关脚本

2.2设置环境变量

设置环境变量

vi ~/.bash_profile
export DM_HOME="/dm/dmdbms" 
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DM_HOME/bin"
export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool

2.3初始化实例

cd /dm/dmdbms/bin
./dminit path=/dm/dmdata DB_NAME=GXZY INSTANCE_NAME=GXZY01 PORT_NUM=5136 EXTENT_SIZE=32 PAGE_SIZE=32 LOG_SIZE=2048 CASE_SENSITIVE=Y CHARSET=0 LENGTH_IN_CHAR=0 BLANK_PAD_MODE=0 SYSDBA_PWD="Hh@dameng123" SYSAUDITOR_PWD="Hh@dameng123" ELOG_PATH=/dm/dmdbms/log/slog

2.4配置慢日志

配置慢日志

mkdir -p /dm/dmdbms/log/slog
cd /dm/dmdata//DAMENG
vi /dm/dmdata//DAMENG/sqllog.ini
BUF_TOTAL_SIZE = 10240
BUF_SIZE = 1024
BUF_KEEP_CNT = 6
[SLOG_ALL]
FILE_PATH = ../log/slog
PART_STOR = 1
SWITCH_MODE = 2
SWITCH_LIMIT = 512
ASYNC_FLUSH = 1
FILE_NUM = 20
ITEMS = 0
SQL_TRACE_MASK = 2:3:25
MIN_EXEC_TIME = 1500
USER_MODE = 0
USERS =

2.5注册服务

DM8注册服务的命令为

cd /dm/dmdbms/script/root/
./dm_service_installer.sh -t dmserver -p dmdb -dm_ini /dmdata/dmdb/dm.ini -m open

DM7注册服务的命令为

cd /dm/dmdbms/script/root/
./dm_service_installer.sh -t dmserver -p dmdb -i /dmdata/dmdb/dm.ini -m open

注册完成后启动数据库服务

systemctl start DmServicedmdb

确认数据库是否能正常登录

cd  /dm/dmdbms/bin
./disql SYSDBA/'"Hh@12345"'@localhost:5136

2.6开启归档

cd  /dm/dmdbms/bin
./disql SYSDBA/'"Hh@12345"'@localhost:5136
alter database mount;
Alter database add archivelog 'dest=/dm/dmarch ,TYPE=local,FILE_SIZE=1024,SPACE_LIMIT=10240';
alter database archivelog;
alter database open;

更多关注达梦数据库官网
https://eco.dameng.com

Logo

更多推荐