一、系统检查
达梦数据库管理系统(以下简称 DM)是基于客户/服务器方式的数据库管理系统,可 以 安 装 在 多 种 计 算 机 操 作 系 统 平 台 上 , 典 型 的 操 作 系 统 有:Windows(Windows2000/2003/XP/Vista/7/8/10/Server 等)、Linux、HP-UNIX、 Solaris、FreeBSD 和 AIX 等。对于不同的系统平台,有不同的安装步骤。
下面介绍在Linux系统下的安装流程。
达梦数据库安装规范流程
1前期准备工作
1.1收集操作系统信息
查询操作系统版本信息,看系统是否符合安装达梦数据库要求
系统名称:cat /etc/redhat-release
1.1.2了解项目业务类型(OLAP/OLTP/混合)
OLTP也被称为面向交易的处理系统,其基本特征是可以立即将顾客的原始数据传送到计算中心进行处理,并在很短的时间内给出处理结果,这个过程的最大优点是可以即时地处理输入的数据、及时地回答,因此OLTP又被称为实时系统(Real Time System)。衡量OLTP系统的一个重要性能指标是系统性能,具体体现为实时响应时间(Response Time),即从用户在终端输入数据到计算机对这个请求做出回复所需的时间。OLTP数据库旨在使事务应用程序仅完成对所需数据的写入,以便尽快处理单个事务。
OLAP是共享多维信息的、针对特定问题的联机数据访问和分析的快速软件技术。它通过对信息的多种可能的观察形式进行快速、稳定一致和交互性的存取,允许管理决策人员对数据进行深入观察。决策数据是多维数据,是决策的主要内容。OLAP专门用于支持复杂的分析操作,侧重对决策人员和高层管理人员的决策支持,可以根据分析人员的要求快速、灵活地进行大数据量的复杂查询处理,并且以一种直观易懂的形式将查询结果提供给决策人员,以便他们准确掌握企业(公司)的经营状况、了解对象的需求、制定正确的方案。
1.1.3了解项目业务运行时段
看项目运行的时间段,对参数进行调配。
1.1.4定期JOB情况
查看定期备份情况,规划是否创建备份作业
1.1.5停机窗口情况
了解系统停机时段,为后期运维做准备
1.1.6了解业务并发量
对数据库参数进行设置
1.1.7知悉数据库版本
看版本与系统是否冲突
1.1.8数据库架构
RAC/MPP/主备/读写分离/HA/单机
全备:完全备份,把所有需要备份的数据全部备份。
增备:跟完全备份合用,在全备基础上增备
删除备份:使用RMAN工具删除
REMOVE BACKUPSET '/data/bak';
1.2硬件配置信息
1.2.1了解服务器型号
dmidecode |grep -A5 'System Information'
1.2.2CPU相关信息
Cat /proc/cpuinfo
1.2.3内存容量
free –h
total 列显示系统总的可用物理内存和交换空间大小
used 列显示已经被使用的物理内存和交换空间。
free 列显示还有多少物理内存和交换空间可用使用。
shared 列显示被共享使用的物理内存大小。
buff/cache 列显示被 buffer 和 cache 使用的物理内存大小。
available 列显示还可以被应用程序使用的物理内存大小。
Mem 行(第二行)是内存的使用情况
Swap 行(第三行)是交换空间的使用情况。
查看设备挂载情况和储存
1.2.4网络带宽
百兆/千兆/万兆交换机
1.3操作系统检查
1.3.1防火墙检查
查看状态systemctl status firewalld 关闭systemctl stop firewalld
永久关闭 systemctl disable firewalld
1.3.2操作系统资源限制检查
Ulimit -a
操作系统默认会对程序使用操作系统资源进行限制。为了使达梦数据库能够正常运行,需对用户的参数进行修改,根据安装手册的建议进行修改。
core file size:当某些程序发生错误时,系统可能会将该程序在内存中的信息写成文件(除错用),这种文件就被称为核心文件(core file)。此为限制每个核心文件的最大容量,建议设置为unlimited。
data seg size:每个进程数据段的最大值,建议用户设置为1048576(1GB)以上或unlimited,此参数过小会导致数据库启动失败
file size:当前shell可创建的最大文件容量,建议unlimited,此参数过小会导致数据库安装或初始化失败
max locked memory:可以锁定的物理内存的最大值
max memory size:可以使用的常驻内存的最大值
open files:每个进程可以同时打开的最大文件句柄数,建议65536以上或者unlimited
pipe size:管道的最大值
stack size:堆栈的最大值
cpu time:每个进程可以使用CPU的最大时间
max user processes:每个用户运行的最大进程并发数, 建议修改为10240
virtual memory:当前shell可使用的最大虚拟内存,建议用户设置为1048576(1GB)以上或unlimited
更改参数方式:
方式一
vi /etc/security/limits.conf 在下面加
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft nproc 10240
dmdba hard nproc 10240
dmdba soft core unlimited
dmdba hard core unlimited
方式二:
重启生效
例:修改open files
Vim /etc/systemd/system.conf
DefaultLimitNOFILE=65535
1.3.3磁盘调度算法检查
cat /sys/block/sda/queue/scheduler
若为下图所示
调度算法为deadline([ ]在dedline上)
更改调度算法的指令
临时echo deadline > /sys/block/sda/queue/scheduler
永久 grubby --update-kernel=ALL --args="elevator=deadline"
重启生效 reboot
1.3.4磁盘检查
df -h
根据磁盘挂载情况与磁盘大小,规划软件安装位置,数据文件位置,备份文件位置,归档文件位置。数据库实例要放在最大的盘里。
dd if=/dev/zero of=/tmp/test.txt bs=64k count=4k oflag=dsync
从虚拟磁盘/dev/zero数据写入/tmp/testfile中
1.3.5查看网络
可以看到网卡状态 IP a
ethtool ens33
1.3.6检测操作系统内存参数
cat /proc/sys/vm/overcommit_memory
Linux操作系统要注意检查/proc/sys/vm/overcommit_memory是否设置为0。设置为1或者2时可能会出现操作物理内存有空余,但数据库服务无法申请内存的严重问题。
NUMA架构:调节内存与处理器的一种方式
数据库安装要求numa处于关闭状态
检查numa状态:dmesg | grep -i numa
Node为0 证明numa关闭
如果打开,关闭方法为:
编辑 /etc/default/grub 文件,加上:numa=off
重新生成/etc/grub2.cfg 配置文件:grub2-mkconfig -o /etc/grub2.cfg
重启系统:reboot
再次查看:dmesg | grep -i numa
1.3.8. 禁用透明大页检查
透明大页:用大页面减少程序运行过程中的缺页和中断数量,但是因页面较大会导致缓存和内存出现延迟。
查看透明大页的状态:cat /sys/kernel/mm/transparent_hugepage/enabled
透明大页处于关闭状态
若透明大页打开则需要:编辑/etc/sysconfig/grub 文件,在 GRUB_CMDLINE_LINUX 那一行后面追加 transparent_hugepage=never。再使用 grub2-mkconfig 生成grub.cfg配置文件:grub2-mkconfig -o /boot/grub2/grub.cfg。重启系统使配置生效。Reboot
数据库安装
2.1创建安装用户组,用户
创建用户组
groupadd -g 12349 dinstall
创建组内用户
useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
修改密码
passwd dmdba
2.2创建对应文件夹
mkdir /data /data/DM_SOFT /data/arch /data/bak
分别为数据路径,归档路径,备份路径
2.3变更/data目录所属的用户和组
chown -R dmdba:dinstall /data
2.4将DM镜像文件通过xftpl上传到安装包目录下,解压
unzip dm8_20210625_x86_rh6_64_ent.zip
2.5挂载DM镜像
将镜像挂载到适合的文件下面
mount dm8_20210625_x86_rh6_64_ent_8.1.2.18_pack4.iso /mnt
2.6将只读文件复制到安装包目录下
cp DMInstall.bin /data/DM_SOFT/
2.7变更所属的用户和组
chown dmdba:dinstall DMInstall.bin
chown dmdba:dinstall dm.key
#静默安装
./DMInstall.bin -i
2.9安装完成后初始化实例
在DM安装目录下bin文档里的./dmini进行实例创建,所需参数可以使用
./dminit help查看所有关键字含义
初始化实例的命令为
./dminit path=/data EXTENT_SIZE=32 PAGE_SIZE=32 LOG_PATH=/data/log/DATA01.log LOG_SIZE=1024
CASE_SENSITIVE=y CHARSET=1
初始化参数页大小、簇大小生产环境如果没有要求,统一用32k, 初始化数据库时指定redo 大小
2.10开启归档模式
方法一:在实例参数文件dm.ini中找到ARCH关键字将其参数改为1
再配置归档文件
首先运行“DM管理工具”,使用SYSDBA的账号和密码登录需要操作的数据库和服务器,在打开的主界面上选择对应数据库右击选择“管理服务器”,选择“系统管理”,在状态切换中选择“配置”,点击【转换】,等待后提示“转换状态成功”,此时数据库切换为mount状态。
在管理服务器页面选择“归档配置”,在归档模式中选择“归档”,点击右侧绿色加号,配置归档目录和归档类型,文件大小等
配置归档路径完成之后,重新选择“系统管理”,在状态转换中选择“打开”,点击“转换”按钮,等候片刻提示转换状态成功。此时,数据库已正常打开
方法三:SQL命令联机配置
1)修改数据库为 MOUNT 状态。
2)配置本地归档。
SQL>ALTER DATABASE ADD ARCHIVELOG 'DEST = /data/arch, TYPE = local, FILE_SIZE = 1024, SPACE_LIMIT = 2048';
3)开启归档模式
SQL>ALTER DATABASE ARCHIVELOG;
4)修改数据库为 OPEN 状态。
SQL>ALTER DATABASE OPEN;
5)操作完成后,使用如下语句确认数据库是否为归档模式。
SQL>select arch_mode from v$database;
2.11前台启动
./dmserver /data/DAMENG/dm.ini
前台启动一遍查看是否有错误,无报错就退出(前台启动一定要用dmdba用户启动。
2.12创建服务
服务创建在root用户下在DM安装目录下script/root/文件夹下注册
./dm_service_installer.sh -t dmserver -dm_ini /data/DAMENG/dm.ini -p DMSERVER
2.13后台启动服务
./DmServiceDMSERVER start
2.14检查是否可以正常备份
冷备检查
- 关闭数据库服务
./DmServiceDMSERVER stop
- 打开DmAP
一般情况下AP是开启的,若没有开启使用./DmAPService start开启
- 使用DMRMAN备份
在bin目录下使用./dmrman
- 使用DMRMAN还原
1、还原数据库
RMAN> restore database '/data/DAMENG/dm.ini' from backupset '/data/bak'
2、数据恢复
RMAN> recover database '/data/DAMENG/dm.ini' from backupset '/data/bak'
3、还原完成,更新魔数
每次备份结束必须更新永久魔数,负责无法启动数据库
RMAN> recover database '/data/DAMENG/dm.ini' update db_magic
2.15重启数据服务
DM数据库安装完成,若业务需要创建作业,则应当在./manager中创建代理创建备份作业
2.16数据库性能优化
更改dm.ini文件按照业务需求对参数值进行修改
数据库参数的设置与业务应用密不可分。不同的业务类型,决定着关键参数的值,同时合理参数值也就决定着数据库系统的性能优劣。对于实例创建成功而不可更改的或者修改代价比较大的参数,必须慎重考虑,在充分调研各个方面的需求后,方可确定参数值,以满足业务的正常健康的运行。