当前位置: 首页 > news >正文

dm8在Linux环境安装精简步骤说明(2024年12月更新版dm8)

dm8在Linux环境安装详细步骤 - - 2025年1月之后dm8

  • 环境介绍
  • 1 修改操作系统资源限制
  • 2 操作系统创建用户
  • 3 操作系统配置
  • 4 数据库安装
  • 5 初始化数据库
  • 6 实例参数优化
  • 7 登录数据库配置归档与备份
  • 8 配置审计
  • 9 创建用户
  • 10 屏蔽关键字与数据库兼容模式
  • 11 jdbc连接串配置
  • 12 更多达梦数据库学习使用列表

环境介绍

  • Cpu x86
  • Os Kylin v10 sp2
  • Dm8 1-4-6-2024.12.25-255012-20119-ENT
    –03134284294-20241225-255012-20119 Pack20
  • 数据库程序安装路径 /opt/dmdba/dmdbms
  • 数据库实例安装路径 /opt/dmdba/dmdata
  • 数据库归档日志路径 /opt/dmdba/dmarch
  • 数据库异常CORE路径 /opt/dmdba/dmcore
  • 数据库备份路径 /opt/dmdba/data/DAMENG/bak
  • 数据库安装包路径 /opt/dmdba
  • 安装前操作系统环境检查 - - 点击跳转
  • 操作系统建议安装 tar、telnet、perf、gdb、nmon、pstack、iostat、netstat、ethtool 等工具包 , 遇到问题方便分析
磁盘测速 低于25MB/S 不满足上线规范要求,可能存在性能瓶颈dd  if=/dev/sdb  of=test  bs=32k  count=20k  oflag=dsyncdd  if=/dev/vdb  of=test  bs=32k  count=20k  oflag=dsync/dev/sdb 是数据盘符名称,根据实际环境修改/dev/vdb 是数据盘符名称,根据实际环境修改

1 修改操作系统资源限制

# 使用 root 用户
vi /etc/security/limits.conf* soft nproc 10240
* hard nproc 10240
dmdba soft nproc 10240
dmdba hard nproc 10240
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba hard data unlimited
dmdba soft data unlimited
dmdba hard fsize unlimited
dmdba soft fsize unlimited
dmdba soft core unlimited
dmdba hard core unlimited

2 操作系统创建用户

# 使用 root 用户
groupadd dinstall
useradd -g dinstall dmdba
passwd dmdba
**********
**********
mkdir -p /opt/dmdba
chown -R dmdba:dinstall /opt/dmdba

3 操作系统配置

# 使用 root 用户cat /etc/sysctl.conf
# 1 操作系统内存配置overcommit_memory设置为0(详情见上线规范)
echo vm.overcommit_memory = 0 >> /etc/sysctl.conf && sysctl -p
# 2 core 文件生产路径修改 (详情见上线规范)
echo kernel.core_pattern = /opt/dmdba/dmcore/core-%e-%p-%s >> /etc/sysctl.conf && sysctl -p
# 3 关闭numa
echo vm.numa_stat = 0 >> /etc/sysctl.conf && sysctl -p# 4 内存≤32G 不用改vm.min_free_kbytes
echo vm.min_free_kbytes = 1153434 >> /etc/sysctl.conf && sysctl -p
# 5 内存不足时,建议设置为 1
echo vm.swappiness = 10 >> /etc/sysctl.conf && sysctl -p# 6 永久关闭swap 缓存 重启生效
sed -ri 's/.*swap.*/#&/' /etc/fstab# 7 关闭numa +关闭透明大页 重启生效# 编辑 vi /etc/default/grub 文件 或编辑 vi /etc/grub.conf 文件# (必须看上线规范操作验证)在 GRUB_CMDLINE_LINUX 那一行后面追加 numa=off transparent_hugepage=never# 查询结果是 UEFI 或 BIOS[ -d /sys/firmware/efi ] && echo UEFI || echo BIOS# UEFI 执行命令grub2-mkconfig -o /boot/efi/EFI/kylin/grub.cfg# BIOS 执行命令grub2-mkconfig -o /boot/grub2/grub.cfg# 重启后验证cat /sys/kernel/mm/transparent_hugepage/enabled# 8 磁盘调算法 (详情见上线规范)# 要求磁盘调度算法为 deadlinecat /sys/block/{DEVICE-NAME}/queue/scheduler# 注意把{DEVICE-NAME}替换会数据库所使用的对应的磁盘名称,以下以 sda,sdb,vdb 为例。cat /sys/block/sda/queue/schedulercat /sys/block/sdb/queue/schedulercat /sys/block/vdb/queue/scheduler# 9 麒麟 V10sp1 检查 RemoveIPC 参数 (详情见上线规范)查看麒麟版本命令: nkvers# 修改/etc/systemd/logind.conf 配置文件中的 RemoveIPC 参数,#注释去掉,并修改 yes 为 no# 重启服务systemctl daemon-reload;systemctl restart systemd-logind# 检查确认systemctl show systemd-logind | grep -i removeipc# 10 关闭防火墙或放开端口 (详情见上线规范)
# 11 关闭 SELinux(CentOS6.5) (详情见上线规范)

4 数据库安装

# 使用 root 用户mount -o loop dm8_20241227_x86_rh7_64.iso /mnt# 使用 dmdba 用户
su - dmdba
cd /mnt
./DMInstall.bin -i
请选择安装语言 [1]:1
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:y
请输入Key文件的路径地址 [dm.key]:/opt/dmdba/dm.key
是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
请选择时区 [21]:21
请选择安装类型的数字序号 [1 典型安装]:1
请选择安装目录 [/home/dmdba/dmdbms]:/opt/dmdba/dmdbms
是否确认安装路径(/opt/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y
是否确认安装? (Y/y:是 N/n:否):y# 使用 root 用户 执行
exit
/opt/dmdba/dmdbms/script/root/root_installer.sh

5 初始化数据库

# 使用 dmdba 用户su - dmdba./dminit path=/opt/dmdba/dmdata page_size=32 extent_size=32 log_size=2048 charset=0 case_sensitive=1 DB_NAME=DAMENG INSTANCE_NAME=DMSERVER SYSDBA_PWD=Dameng@123 SYSAUDITOR_PWD=Dameng@123 PORT_NUM=5236 BLANK_PAD_MODE=0# 前台启动 与 关闭
./dmserver  /opt/dmdba/dmdata/DAMENG/dm.ini
# 日志输出 SYSTEM IS READY
输入 exit  正常关闭数据库# 使用 root 用户 注册数据库服务
su - root
cd /opt/dmdba/dmdbms/script/root./dm_service_installer.sh -t dmserver -p 5236 -dm_ini /opt/dmdba/dmdata/DAMENG/dm.ini# 启动数据库服务
/opt/dmdba/dmdbms/bin/DmService5236 start

6 实例参数优化

# 使用 dmdba 用户su - dmdba
cd /opt/dmdba/dmdbms/bin
./disql SYSDBA/'"Dameng@123"'@127.0.0.1:5236
-- 示例 16c,32g配置 , 报错行可以跳过
SP_SET_PARA_VALUE(2,'WORKER_THREADS',14);
SP_SET_PARA_VALUE(2,'IO_THR_GROUPS',16);
SP_SET_PARA_VALUE(2,'GEN_SQL_MEM_RECLAIM',0);
SP_SET_PARA_VALUE(2,'MAX_OS_MEMORY',       100);
SP_SET_PARA_VALUE(2,'MEMORY_POOL',         2048);
SP_SET_PARA_VALUE(2,'MEMORY_N_POOLS',      3);
SP_SET_PARA_VALUE(2,'MEMORY_TARGET',       10240);
SP_SET_PARA_VALUE(2,'BUFFER',              12000);
SP_SET_PARA_VALUE(2,'BUFFER_POOLS',        21);
SP_SET_PARA_VALUE(2,'RECYCLE',        	   2048);
SP_SET_PARA_VALUE(2,'RECYCLE_POOLS',       7);
SP_SET_PARA_VALUE(2,'FAST_POOL_PAGES',     9999);
SP_SET_PARA_VALUE(2,'FAST_ROLL_PAGES',     1000);
SP_SET_PARA_VALUE(2,'ENABLE_FREQROOTS',1);
SP_SET_PARA_VALUE(2,'MULTI_PAGE_GET_NUM',1);
SP_SET_PARA_VALUE(2,'PRELOAD_SCAN_NUM',0);
SP_SET_PARA_VALUE(2,'PRELOAD_EXTENT_NUM',0);
SP_SET_PARA_VALUE(2,'TASK_THREADS',8);
SP_SET_PARA_VALUE(2,'MEMORY_MAGIC_CHECK',       1);
SP_SET_PARA_VALUE(2,'HJ_BUF_GLOBAL_SIZE',  2048);
SP_SET_PARA_VALUE(2,'HJ_BUF_SIZE',        128);
SP_SET_PARA_VALUE(2,'HAGR_BUF_GLOBAL_SIZE',2048);
SP_SET_PARA_VALUE(2,'HAGR_BUF_SIZE',     128);
SP_SET_PARA_VALUE(2,'SORT_FLAG',0);
SP_SET_PARA_VALUE(2,'SORT_BLK_SIZE',1);
SP_SET_PARA_VALUE(2,'SORT_BUF_SIZE',       10);
SP_SET_PARA_VALUE(2,'SORT_BUF_GLOBAL_SIZE',       2048);
SP_SET_PARA_VALUE(2,'RLOG_POOL_SIZE',      1024);
SP_SET_PARA_VALUE(2,'CACHE_POOL_SIZE',     1024);
SP_SET_PARA_VALUE(2,'DICT_BUF_SIZE',       512);
SP_SET_PARA_VALUE(2,'VM_POOL_TARGET',       16384);
SP_SET_PARA_VALUE(2,'SESS_POOL_TARGET',       16384);
SP_SET_PARA_VALUE(2,'USE_PLN_POOL',        1);
SP_SET_PARA_VALUE(2,'ENABLE_MONITOR',      1);
SP_SET_PARA_VALUE(2,'SVR_LOG',             1);
SP_SET_PARA_VALUE(2,'TEMP_SIZE',           20480);
SP_SET_PARA_VALUE(2,'TEMP_SPACE_LIMIT',    204800);
SP_SET_PARA_VALUE(2,'MAX_SESSIONS',        1500);
SP_SET_PARA_VALUE(2,'MAX_SESSION_STATEMENT', 20480);
SP_SET_PARA_VALUE(2,'PK_WITH_CLUSTER',		0);
SP_SET_PARA_VALUE(2,'ENABLE_ENCRYPT',0);
SP_SET_PARA_VALUE(2,'OLAP_FLAG',2);
SP_SET_PARA_VALUE(2,'VIEW_PULLUP_FLAG',1);
SP_SET_PARA_VALUE(2,'OPTIMIZER_MODE',1);
SP_SET_PARA_VALUE(2,'ADAPTIVE_NPLN_FLAG',0);
SP_SET_PARA_VALUE(2,'MONITOR_INDEX_FLAG',2);
SP_SET_PARA_VALUE(2,'ENABLE_CREATE_BM_INDEX_FLAG',0);
SP_SET_PARA_VALUE(2,'OPTIMIZER_OR_NBEXP',0);
SP_SET_PARA_VALUE(2,'PARALLEL_PURGE_FLAG',1);
SP_SET_PARA_VALUE(2,'PARALLEL_POLICY',2);
SP_SET_PARA_DOUBLE_VALUE(2,'UNDO_RETENTION',900);
SP_SET_PARA_VALUE(2,'UNDO_EXTENT_NUM',16);
SP_SET_PARA_VALUE(2,'ENABLE_INJECT_HINT',1);
SP_SET_PARA_VALUE(2,'BTR_SPLIT_MODE',1);
SP_SET_PARA_VALUE(2,'FAST_LOGIN',1);
SP_SET_PARA_VALUE(2,'ENABLE_MONITOR_BP',0);
SP_SET_PARA_VALUE(2,'MVCC_RETRY_TIMES',300);
SP_SET_PARA_VALUE(2,'RLOG_APPEND_LOGIC',1);
SP_SET_PARA_VALUE(2,'CALC_AS_DECIMAL',1);
SP_SET_PARA_VALUE(2,'AUDIT_MAX_FILE_SIZE',1024);
SP_SET_PARA_VALUE(2,'AUDIT_SPACE_LIMIT',10240);
alter tablespace "MAIN" datafile 'MAIN.DBF' autoextend on maxsize 102400;

7 登录数据库配置归档与备份

# 使用 dmdba 用户su - dmdba
cd /opt/dmdba/dmdbms/bin
./disql SYSDBA/'"Dameng@123"'@127.0.0.1:5236-- 开归档
ALTER DATABASE MOUNT;
ALTER DATABASE ARCHIVELOG;
-- 单个文件 2048MB=2GB , 最大空间限制204800MB=200GB
ALTER DATABASE ADD ARCHIVELOG 'DEST=/opt/dmdba/dmdata/dmarch,TYPE=LOCAL,FILE_SIZE=2048,SPACE_LIMIT=204800';
ALTER DATABASE OPEN;
CHECKPOINT(100);--手动全备一次
backup database compressed;--开启代理环境
SP_INIT_JOB_SYS(1);-- 周六晚上9点 备份全量
call SP_CREATE_JOB('db_bak',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('db_bak');
call SP_ADD_JOB_STEP('db_bak', 'db_bak', 6, '01000000', 1, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('db_bak', 'db_bak', 1, 2, 1, 64, 0, '21:36:44', NULL, '2021-12-08 21:36:44', NULL, '');
call SP_JOB_CONFIG_COMMIT('db_bak');--23点累计增量备份 周日,周一,周二,周三,周四,周五
--注意修改全量备份路径 /opt/dmdba/dmdata/DAMENG/bak
call SP_CREATE_JOB('db_bak_add',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('db_bak_add');
call SP_ADD_JOB_STEP('db_bak_add', 'db_bak_add', 6, '41000000/opt/dmdba/dmdata/DAMENG/bak', 1, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('db_bak_add', 'db_bak_add', 1, 2, 1, 63, 0, '23:16:38', NULL, '2024-12-31 17:16:38', NULL, '');
call SP_JOB_CONFIG_COMMIT('db_bak_add');-- 删除31天前的备份
call SP_CREATE_JOB('del_dbbak',1,0,'',0,0,'',0,'');
call SP_JOB_CONFIG_START('del_dbbak');
call SP_ADD_JOB_STEP('del_dbbak', 'del_dbbak', 0, 'CALL SP_DB_BAKSET_REMOVE_BATCH(''DISK'', NOW()-31);', 1, 1, 0, 0, NULL, 0);
call SP_ADD_JOB_SCHEDULE('del_dbbak', 'del_dbbak', 1, 1, 1, 0, 0, '22:04:40', NULL, '2021-12-08 22:04:40', NULL, '');
call SP_JOB_CONFIG_COMMIT('del_dbbak');

8 配置审计

# 使用 dmdba 用户su - dmdba
cd /opt/dmdba/dmdbms/bin
./disql SYSAUDITOR/'"Dameng@123"'@127.0.0.1:5236
-- 登陆审计用户,开启审计
SP_SET_ENABLE_AUDIT(1);
--记录对表的全部操作 DDL CREATE,DROP,TRUNCAT,
SP_AUDIT_STMT('TABLE', 'NULL', 'ALL');

9 创建用户

--将其中的 CESHI 替换为要创建的用户名即可
--用户默认密码: Dameng@123
--通用机创建用户 CESHI
--创建用户默认表空间
CREATE TABLESPACE "CESHI01_DATA" 
DATAFILE 'CESHI_DATA_01.DBF' SIZE 1024 AUTOEXTEND ON NEXT 1024 MAXSIZE 409600, 'CESHI_DATA_02.DBF' SIZE 1024 AUTOEXTEND ON NEXT 1024 MAXSIZE 409600 CACHE = NORMAL;
--创建用户索引表空间
CREATE TABLESPACE "CESHI02_INDEX" DATAFILE 'CESHI_INDEX_01.DBF' SIZE 1024 AUTOEXTEND ON NEXT 1024 MAXSIZE 409600, 'CESHI_INDEX_02.DBF' SIZE 1024 AUTOEXTEND ON NEXT 1024 MAXSIZE 409600 CACHE = NORMAL;
--创建用户
CREATE USER "CESHI" IDENTIFIED BY "Dameng@123" 
DEFAULT TABLESPACE "CESHI01_DATA"
DEFAULT INDEX TABLESPACE "CESHI02_INDEX";--根据情况添加 DBA(系统管理员)权限
GRANT "PUBLIC","RESOURCE","SOI","SVI","VTI" TO "CESHI";-- 取消用户限制
--修改用户失败登录次数限制:
ALTER USER CESHI LIMIT FAILED_LOGIN_ATTEMPS UNLIMITED;--修改用户口令过期时间限制:
ALTER USER CESHI LIMIT PASSWORD_LIFE_TIME UNLIMITED; --修改用户口令锁定期限制:
ALTER USER CESHI LIMIT PASSWORD_LOCK_TIME UNLIMITED;

10 屏蔽关键字与数据库兼容模式

  • 屏蔽关键字 - - 点击跳转
  • 数据库兼容模式
SP_SET_PARA_VALUE(2,'COMPATIBLE_MODE',0);

在这里插入图片描述

11 jdbc连接串配置

  • jdbc连接串配置 - - 点击跳转

12 更多达梦数据库学习使用列表

  • 更多达梦数据库学习使用列表 - - 点击跳转
http://www.lryc.cn/news/528928.html

相关文章:

  • 学技术学英语:elasticsearch查询的两阶段queryingfetching
  • Linux_线程互斥
  • 基于 NodeJs 一个后端接口的创建过程及其规范 -- 【elpis全栈项目】
  • 企业知识库提升企业核心竞争力促进团队协作和知识分享
  • C++ unordered_map和unordered_set的使用,哈希表的实现
  • games101-作业3
  • 【Block总结】高效多尺度注意力EMA,超越SE、CBAM、SA、CA等注意力|即插即用
  • Pwn 入门核心工具和命令大全
  • 探索AI(chatgpt、文心一言、kimi等)提示词的奥秘
  • 利用飞书机器人进行 - ArXiv自动化检索推荐
  • 小白爬虫冒险之反“反爬”:无限debugger、禁用开发者工具、干扰控制台...(持续更新)
  • Ubuntu中MySQL安装-02
  • 大数据相关职位介绍之一(数据分析,数据开发,数据产品经理,数据运营)
  • 使用DeepSeek API生成Markdown文件
  • java多线程学习笔记
  • Manticore Search,新一代搜索引擎之王
  • 【MySQL】数据类型与表约束
  • CAG技术:提升LLM响应速度与质量
  • 上位机知识篇---Linux源码编译安装链接命令
  • 科研绘图系列:R语言绘制线性回归连线图(line chart)
  • 将ollama迁移到其他盘(eg:F盘)
  • Oracle 创建用户和表空间
  • cursor ide配置远程ssh qt c++开发环境过程记录
  • yolov5错误更改与相关参数详解(train.py)
  • Python设计模式 - 组合模式
  • css粘性定位超出指定宽度失效问题
  • Windows 程序设计6:错误码的查看
  • doris: CSV导入数据
  • FastStone Image Viewer图像处理软件安装步骤(百度网盘链接)
  • Kafka 深入服务端 — 时间轮