当前位置:   article > 正文

达梦数据库安装详细步骤,dm7,dm8,HA_达梦ha

达梦ha

 一、达梦数据库简介

达梦数据库管理系统是武汉达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM。达梦数据库管理系统目前最新的版本是8.0版本,简称DM8,以下介绍dm7,dm8,以及HA集群的搭建详细步骤

DM8是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新、简洁实用的理念,推出的新一代自研数据库。DM8吸收借鉴当前先进新技术思想与主流数据库产品的优点,融合了分布式、弹性计算与云计算的优势,对灵活性、易用性、可靠性、高安全性等方面进行了大规模改进,多样化架构充分满足不同场景需求,支持超大规模并发事务处理和事务-分析混合型业务处理,动态分配计算资源,实现更精细化的资源利用、更低成本的投入。

以下是官网的原话:

1、新一代大型通用关系型数据库,全面支持SQL标准和主流编程语言接口/开发框架。行列整合存储技术,在兼顾OLAP和OLTP的同时,满足HTAP混合应用场景。
2、融合 了分布式、弹性计算与云计算的优势,对灵活性、易用性、可靠性、高安全性等方面进行了大规模改进,多样化架构充分满足不同场景需求,支持超大规模并发事务处理和事务-分析混合型业务处理,动态分配计算资源,实现更精细化的资源利用、更低成本的投入。一个数据库,满足用户多种需求,让用户能更加专注业务发展。
3、支持自动故障切换、支持事务级读写负载分离、支持读写分配比例可调整、读多写少业务场景下的性能近线性提升。
4、具备事务-分析混合弄业务处理能力,满足用户对HTAP应用场景的需求;具备变更缓存、高级日志两个关键特性,弥合行存储列存储的鸿沟。
5、多项细节优化,增强易用性,为用户带来359项产品细节打磨,优化细节增强易用性。全新的集中式运维管理工具——DEM;管理工具集成新的SQL助手2.0、运行环境提示与误删保护;高安全等级的数据库管理系统,达到国家安全四级、EAL4+级,满足GB/T 20273、GB/T 18336;增强改进多项安全性;支持多种云计算基础设施环境、支持多种硬件平台。
 

 

 二、达梦数据库版本介绍

标准版

不支持集群等特性,满足小型企业需求

企业版

满足中大型企业需求,生产环境使用最多的版本

安全版

增加了安全特性,四权分离、强制访问控制,环境标记等

开发版

对使用时间做了限制,不用于商用

三 、详细安装步骤如下


查看磁盘大小

lvs


查看磁盘名称

blkid

查看操作系统,然后去获取对应的iso镜像文件

cat /etc/issue


在root下创建用户和组
 

  1. groupadd dinstall
  2. mkdir -p /home/dmdba
  3. useradd -g dinstall -m -d /home/dmdba/dm -s /bin/bash dmdba 
  4. passwd dmdba                  --设置用户dmdba密码

创建安装所需要目录,dmdata是存放数据的目录,dmbak是存备份文件的目录,dmarch是存归档文件的目录

  1. mkdir -p   /dbdata/dmdata   /dbbak/dmbak    /dbarch/dmarch    
  2. chown -R dmdba:dinstall  /home/dmdba   /dbdata /dbbak /dbarch 

创建目录,存放iso镜像文件,dm.ini,dmarch.ini, sqllog.ini, dm.key,sql语句,nmon监控脚本等配置文件

mkdir /opt/dm  

根据不同要求创建目录

  1. mkdir -p   ./dbdata/dmdata   ./dbbak/dmbak    ./dbarch/dmarch    
  2. mkdir -p   /home/dmdba/dbdata/dmdata   /home/dmdba/dbbak/dmbak    /home/dmdba/dbarch/dmarch    
  3. chown -R dmdba:dinstall  /home/dmdba   /home/dmdba/dbdata /home/dmdba/dbbak  /home/dmdba/dbarch 

HA是装两台服务端,两台共用磁盘,所以只需要在一台挂载一台实例化,切忌两边挂载,会崩,如果是ha需挂载磁盘,按照data数据文件最大,arch最小挂载

使用blkid查看磁盘名,然后挂载:

  1. blkid
  2. mount /dev/mapper/vg01-lv01 /dbdata
  3. mount /dev/mapper/vg02-lv02 /dbbak
  4. mount /dev/mapper/vg03-lv03 /dbarch

设置用户open files(用户可以打开文件的最大数目):ulimit -n 65536。

ulimit 用于限制 shell 启动进程所占用的资源

ulimit -n 65536

或修改limit.conf文件:

  1. vi /etc/security/limits.conf     
  2. dmdba   soft    nofile     65536
  3. dmdba   hard    nofile     65536
  4. dmdba   soft    nproc      10240
  5. dmdba   hard    nproc      10240
  6. dmdba   soft    core       unlimited
  7. dmdba   hard    core       unlimited

查看系统用户所有限制值:

ulimit -a

resource:
    core – 限制内核文件的大小
    fsize – 最大文件大小
    memlock – 最大锁定内存地址空间
    nofile – 打开文件的最大数目
    rss – 最大持久设置大小
    stack – 最大栈大小
    cpu – 以分钟为单位的最多 CPU 时间
    noproc – 进程的最大数目(系统的最大进程数)
    as – 地址空间限制
   maxlogins – 此用户允许登录的最大数目


这里就需要设置文件大小不限制

ulimit  -c  unlimited

设置安装缓存,目录后开始安装
必须是在Dmdba用户下安装

挂载是Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,所以以下挂载点就是/mnt

mount挂载命令详细介绍

挂载命令:

mount -o loop /opt/dm/dm7_20230721_HWarm_linux6.0_64.iso /mnt

然后去dmdba用户下去安装

  1. su - dmdba
  2. cd /mnt
  3. ./DMInstall.bin -i

安装完成提示有一段脚本需要执行(没有就不需要执行)

root执行脚本
su -
安装完毕执行  脚本
初始化达梦数据库
配置实例

su - dmdba


命令行配置实例,(匹配ORACLE要加参数 blank_pad_mode=1  取值:1兼容ORA,0不兼容;CHARSET=1 取值:1为UTF-8 )(这一步也会验证key)

去dmdbms路径下:

cd /home/dmdba/dm/dmdbms/bin

切换到dmdba用户下的bin文件中按实际需求修改初始化参数,其中dbdata路径需和前面创建目录相同:

./dminit INI_FILE=/dbdata/dmdata/DAMENG/dm.ini PATH=/dbdata/dmdata extent_size=16 page_size=32 case_sensitive=y log_size=2048


将dm.ini文件拷贝到达梦安装目录bin目录下,修改参数(南瑞继保要将关键字过滤全部删掉 EXCLUDE_RESERVED_WORDS )
dm.ini 文件中SYSTEM_PATH 指向目录下放置  dmarch.ini 

DM8直接从DAMENG中拖出dm.ini放入人bin中

cp /dbdata/dmdata/DAMENG/dm.ini /home/dmdba/dm/dmdbms/bin

dm.ini文件放入/home/dmdba/dm/dmdbms/bin目录下,dmarch.ini与sqllog.ini放入数据目录下并替换。

  1. cd /opt/dm/
  2. cp dm.ini /home/dmdba/dm/dmdbms/bin
  3. cp dmarch.ini sqllog.ini /dbdata/dmdata/DAMENG/


dm.ini(BUFFER设为内存的40%,单位M  MAX_BUFFER50%)、dmarch.ini(ARCH_SPACE_LIMIT存储的80%)

vi /home/dmdba/dm/dmdbms/bin/dm.ini 

##DM8需要用自动生成的文件,先跑优化脚本,之后手动修改
AutoParaAdj_dm8.sql文件

修改dm.ini以下配置

ARCH_INI=1   SVR_LOG=1   MAX_SESSION

vi /dbdata/dmdata/DAMENG/dmarch.ini

添加dmap.sh脚本

  1. cp   /opt/dm/monitor_dmap.sh  /home/dmdba/dm/dmdbms/bin/
  2. chown dmdba:dinstall  /home/dmdba/dm/dmdbms/bin/monitor_dmap.sh
  3. chmod +x /home/dmdba/dm/dmdbms/bin/monitor_dmap.sh
  4. ll /home/dmdba/dm/dmdbms/bin/monitor_dmap.sh

部署了HA环境,务必将dm.ini参数文件放置在安装目录bin文件夹下,并添加参数:   其他设备的IP
HA_INST_CHECK_IP                 =  172.17.3.53 
HA_INST_CHECK_IP                 =  10.10.10.1  
HA_INST_CHECK_IP                 =  11.11.11.1  
HA_OTHER_INST_PORT               =  65533
配置启动脚本/bin/service_template/DmService  为dmserverd,

  1. cd /home/dmdba/dm/dmdbms/bin/service_template/
  2. cp DmService ../dmserverd  
  3. cd ../
  4. vi dmserverd    --修改path_ini的路径
  5. /home/dmdba/dm/dmdbms/bin/dm.ini    --path_ini的路径
  6. INI_PATH=/home/dmdba/dm/dmdbms/bin/dm.ini


修改ini文件目录为/home/dmdba/dm/dmdbms/bin/dm.ini
使用root用户

  1. cp /home/dmdba/dm/dmdbms/bin/dmserverd  /etc/rc.d/init.d/
  2. cp /home/dmdba/dm/dmdbms/bin/dmserverd  /etc/init.d/   

HA需要复制DmAPService  

  1. cp /home/dmdba/dm/dmdbms/bin/DmAPService  /etc/rc.d/init.d/
  2. cp /home/dmdba/dm/dmdbms/bin/DmAPService  /etc/init.d/ 


   
开机自启设置

  1. /lib/systemd/systemd-sysv-install enable dmserverd
  2. chkconfig dmserverd on
  3. chkconfig dmserverd --list
  4. --(2345应都为启用状态)

客户端的安装配置

客户端的安装配置

  1. su - dmdba
  2. vi /etc/dm_svc.conf


添加
char_chk=(0) #忽略字符检查
direct=(n) #不使用快速装载
dummy=(y) #导入导出时选择覆盖

用dmdba用户,把oci接口放入相应文件夹

  1. ls -lrth
  2. cd /opt/dm/dmoci/
  3. cp libdmoci.so /home/dmdba/dm/dmdbms/bin
  4. cp libdmoci.a /home/dmdba/dm/dmdbms/include/
  5. cd include/
  6. cp oci.h /home/dmdba/dm/dmdbms/include/

符号包的导入

  1. mv symbols.tar.gz /home/dmdba/dm/dmdbms/
  2. cd /home/dmdba/dm/dmdbms/
  3. tar -zxvf symbols.tar.gz

启动库

  1. cd /home/dmdba/dm/dmdbms/bin
  2. ./dmserverd start

 连接达梦数据库:

./disql SYSDBA/SYSDBA

##DM8需要用自动生成的文件,先跑优化脚本
AutoParaAdj_dm8.sql文件  查看dm.ini文件参数

跑一个备份的sql

下面dbbak  dmbak需要根据实际路径更换,比如/home/dmdba/dbbak

  1. call SP_INIT_JOB_SYS(1);
  2. call SP_CREATE_JOB('dbbak',1,0,'',0,0,'',0,'');
  3. call SP_JOB_CONFIG_START('dbbak');
  4. call SP_ADD_JOB_STEP('dbbak', 'bakjob', 6, '01040000/dbbak/dmbak', 0, 2, 0, 0, NULL, 0);
  5. call SP_ADD_JOB_STEP('dbbak', 'del7', 0, 'CALL SF_BAKSET_BACKUP_DIR_ADD(''DISK'',''/dbbak/dmbak'');
  6. CALL SF_BAKSET_REMOVE_BATCH (''DISK'',now()-7,NULL,NULL);', 1, 2, 0, 0, NULL, 0);
  7. call SP_ADD_JOB_SCHEDULE('dbbak', 'dobak', 1, 1, 1, 0, 0, '01:00:00', NULL, '1970-01-01 00:00:00', NULL, '');
  8. call SP_JOB_CONFIG_COMMIT('dbbak');

如歌客户端需要更改用户的归属把客户端启动权限给ems

  1. id ems
  2. chown -R ems:1002 /home/dmdba/dm/dmClient
  3. cd /home/dmdba/dm/dmClient/tool/
  4. ./manager

部署nmon监控程序:
上传nmon程序
root下

创建nmon的监控路径和log文件

  1. cp /opt/dm/nmon.dat /home/dmdba/dm/dmdbms/tool
  2. cd /home/dmdba/dm/dmdbms/tool
  3. chown -R dmdba:dinstall nmon.dat 
  4. chmod -R 777 nmon.dat 
  5.  mv nmon.dat nmon
  6.  ls -ll nmon
  7. mkdir -p /home/dmdba/dm/nmon_log
  8. chown -R dmdba:dinstall /home/dmdba/dm/nmon_log/

crontab -e 是一个用于编辑 crontab 文件的命令。crontab 文件是一个用于定时执行任务的文件,其中包含了一系列的命令和任务,系统会按照预定的时间间隔来执行这些任务。

crontab -e


 

  1. 0 0 * * * /home/dmdba/dm/dmdbms/tool/nmon -s20 -c4320 -fT -m /home/dmdba/dm/nmon_log > /dev/null 2>&1
  2. 0 0 * * * find /home/dmdba/dm/nmon_log  -type f -mtime +365 -exec rm -f {} \;
  3. */1 * * * * /home/dmdba/dm/dmdbms/bin/monitor_dmap.sh


##DM8 或者客户要求   需要根据客户执行相关表空间创建用户等sql

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/733588
推荐阅读
相关标签
  

闽ICP备14008679号