操作系统 |
CPU |
存储 |
内存 |
数据库版本 |
CentOS7 |
x86_64 架构 |
/:20G |
2G |
03134283968-20230103-178822-20033 |
产品下载 | 达梦数据库下载X86平台的dm8安装包
使用 vi 编辑器打开 /etc/security/limits.conf 文件,命令如下:
vi /etc/security/limits.conf
在最后添加几条语句,需添加的语句如下:
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384
该参数文件需要重启生效,reboot生效
参数说明:
core - 限制内核文件的大小(KB)
nproc 对每个用户创建的进程数的限制,默认的很小,泄露的时候多
nofile-一个进程能打开的文件数
stack堆大小,堆-存放变量的位置
重启后验证limit参数:
su - dmdba
ulimit -a
1、查看防火状态
systemctl status firewalld
service iptables status
2、暂时关闭防火墙
systemctl stop firewalld或systemctl stop firewalld.service
service iptables stop
3、永久关闭防火墙
systemctl disable firewalld
4、关闭selinux
vi /etc/selinux/config
改SELINUX=disabled
或者echo"SELINUX=disabled”>>/etc/selinux/config
5、查看防火墙状态
systemctl status firewalld
2.3 禁用透明大页
1、编辑/etc/sysconfig/grub文件,在GRUB_CMDLINE_LINUX那一行后面追加
transparent_hugepage=never
2、再使用grub2-mkconfig生成grub.cfg配置文件。
grub2-mkconfig -o /boot/grub2/grub.cfg
3、重启系统使配置生效。
4、查看重启后,是否生效
cat /sys/kernel/mm/transparent_hugepage/enabled
2.4 修改系统配置
修改/etc/systemd/system.conf文件,增加如下4行:
DefaultLimitCORE=infinity
DefaultLimitNOFILE=100000
DefaultLimitNPROC=100000
DefaultTaskMax=infinity
2.5 numa检查
1、编辑 /etc/default/grub 文件,如下图所示加上:numa=off
2、重新生成/etc/grub2.cfg 配置文件:
grub2-mkconfig -o /etc/grub2.cfg
3、重启操作系统
reboot
4、重启之后进行确认
dmesg | grep -i numa
5、再次确认
cat /proc/cmdline
2.6磁盘调度算法
1、查看对应的调度算法:
cat /sys/block/{DEVICE-NAME}/queue/scheduler,注意把{DEVICE-NAME}替换会数据库所使用的对应的磁盘名称,以下以sda为例。
cat /sys/block/sda/queue/scheduler
2、临地更改I/O调度方法,重启后失效:
echo deadline > /sys/block/sda/queue/scheduler
3、永久的更改I/O调度方法:
grubby --update-kernel=ALL --args="elevator=deadline"
4、重启(可与其他待重启生效配置一同重启):
reboot
5、重新确认调度算法:
cat /sys/block/sda/queue/scheduler
2.7操作系统时间检查
确认操作系统时间为真实时间,如果时间不匹配,请及时调整系统时间,若搭建集群,将节点内操作系统时间同步;
date
--手动修改时间方法
date -s "yyyy-mm-dd HH:MM:SS"
修改后需要复核,执行 date 查看。
执行命令:lscpu
确认磁盘大小以及挂载点,根据实际情况规划数据库程序安装位置以及数据文件、备份文件位置,归档日志文件大小限制以及位置。(一般实例放到最大盘)
df -h --total :查看已挂载的磁盘
查看磁盘是否为固态盘:
方法1:lsblk -d -o name,rota
方法2:cat /sys/block/sda/queue/rotational
注意:
命令中的sba是你的磁盘名称,可以通过df命令查看磁盘,然后修改成你要的
结果:
返回0:SSD盘
返回1:SATA盘
进入磁盘路径直接执行下列命令:
dd bs=32k count=20k if=/dev/zero of=test oflag=dsync
执行命令:free -m -t、free -h
查看网卡:ifconfig
查看网卡兆数:ethtool ens33
解压安装包后,挂载镜像
mount -o loop /soft/dm8_20230104_x86_rh6_64.iso /mnt
创建用户所在的组:groupadd dinstall
创建用户:useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
修改用户密码:passwd dmdba
mkdir /dm8
mkdir -p /dm8/dmdata
mkdir -p /dm8/dmarch
mkdir -p /dm8/dmbak
mkdir -p /home/dmdba/dmsoft
mkdir -p /home/dmdba/dmdbms
chown dmdba:dinstall -R /home/dmdba/
chown dmdba:dinstall -R /dm8/
chmod -R 755 /home/dmdba/
chmod -R 755 /dm8
切换至 dmdba 用户下,在 /mnt 目录下使用命令行安装数据库程序,依次执行以下命令安装 DM 数据库。
su - dmdba
cd /mnt/
./DMInstall.bin -i
说明:--图形化安装方法
用当前用户执行 xhost +,切换到 dmdba 用户,执行 export DISPLAY=:0,再执行 xhost +命令
需求选择安装语言,默认为中文。
本地安装选择【不输入 Key 文件】,
选择【默认时区 21】
安装类型选择:【典型安装】
安装目录选择:【home/dmdata/dmdbms】
注意:该目录不为空,默认为/home/dmdba/dmdbms
是否确认安装:【y】
安装小结,是否确认安装:【y】
root执行命令/home/dmdba/dmdbms/script/root/root_installer.sh
需要root下创建 DmAPService,否则会影响数据库备份
su - dmdba
vi ~/.bash_profile
#添加如下三行
export DM_HOME="/home/dmdba/dmdbms"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DM_HOME/bin"
export PATH=”$PATH:$DM_HOME/bin:$DM_HOME/tool”
保存后,使环境变量生效:
source ~/.bash_profile
在dmdba用户下执行以下命令:
cd /home/dmdba/dmdbms/bin
./dminit path=/dm8/dmdata PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=0 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5236
参数详情参考:dminit 参数详解 | 达梦技术文档 (dameng.com)
达梦数据库sql日志记录的内容主要由实例数据存放目录下的sqllog.ini配置文件决定,默认情况下达梦数据库不开启sql日志记录。修改该配置文件后,并且开启日志记录,可以达到控制达梦数据库sql日志记录我们想要的sql执行过程信息,比如记录执行计划时间超过1s以上的慢查询,有助于我们对数据库慢查询、操作语句进行重点优化。
su - dmdba
mkdir -p /home/dmdba/dmdbms/log/slog
cd /dm8/dmdata/DMDB/
vi /dm8/dmdata/DMDB/sqllog.ini
注册服务需使用 root 用户进行注册。使用 root 用户进入数据库安装目录的 /script/root下:
cd /home/dmdba/dmdbms/script/root
注册服务,如下所示:
./dm_service_installer.sh -t dmserver -dm_ini /dm8/dmdata/DMDB/dm.ini -p DMSERVER
服务注册成功后,启动数据库,:
systemctl start DmServiceDMSERVER.service
查看数据库服务状态:
systemctl status DmServiceDMSERVER.service
相关启停命令:
停止数据库:
systemctl stop DmServiceDMSERVER.service
重启数据库:
systemctl restart DmServiceDMSERVER.service
登录:
cd /home/dmdba/dmdbms/bin
./disql SYSDBA/'"SYSDBA"'@localhost:5237
检查实例状态:
SQL> select name,instance_name,status$,start_time from v$instance;
SQL>sp_set_para_value(1,'SVR_LOG',1);
执行后立即生效
更多相关资料请参考达梦云适配技术社区
达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台