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

DM8数据库Docker镜像部署最佳实践

DM8数据库Docker镜像部署最佳实践

  • 一、Docker加载DM8镜像
  • 二、Docker创建DM8容器
  • 三、验证目录是否挂载成功

一、Docker加载DM8镜像

1.下载DM8镜像,由于官网暂未提供docker镜像下载,可通过网盘下载:https://pan.quark.cn/s/fe38ba821a2a
在这里插入图片描述
2.打开命令行工具cd进镜像下载目录,运行:docker load -i dm8_20241022_x86_rh6_64_single.tar加载镜像
在这里插入图片描述
3.命令行工具运行:docker images,查看镜像是否加载成功
在这里插入图片描述

二、Docker创建DM8容器

1.命令行工具运行:docker run -d --name dm8 -p 5236:5236 dm8_single:dm8_20241022_rev244896_x86_rh6_64,启动容器(dm8_single:dm8_20241022_rev244896_x86_rh6_64 = 镜像name:镜像tag)
在这里插入图片描述
2.docker查看数据目录、日志目录、配置文件目录路径,其中配置文件在数据目录,由于展开不利于截图,自行查找dm.ini文件
在这里插入图片描述
3.挂载目录避免数据丢失:在宿主机新建DM>data、DM>log文件夹,由于配置文件在数据目录这里就不进行创建
在这里插入图片描述
4.运行docker stop dm8 && docker rm dm8删除原本的临时容器,使用下面命令重启容器

/*****
-p:主机端口:容器端口
-d:启动的镜像名称。
--name:设置容器名称。
--restart=always:设置docker启动时,容器跟随自启。
-e SYSDBA_PWD="SYSDBA123":设置密码为SYSDBA123,镜像默认密码:SYSDBA001,默认账户:SYSDBA
-v /d/WSL/Docker/DM/data:/opt/dmdbms/data:挂载容器存储文件到宿主,避免因不小心卸载容器或者容器损坏导致数据丢失不可找回风险,,如果是linux系统宿主机不需要加盘符,直接使用/就代表宿主机的根目录
-v /d/WSL/Docker/DM/log:/opt/dmdbms/log:挂载日志目录,便于查找日志,如果是linux系统宿主机不需要加盘符,直接使用/就代表宿主机的根目录
*****/docker run -d --name dm8 --restart=always -p 5236:5236 -v /d/WSL/Docker/DM/data:/opt/dmdbms/data -v /d/WSL/Docker/DM/log:/opt/dmdbms/log -e SYSDBA_PWD="SYSDBA123"  dm8_single:dm8_20241022_rev244896_x86_rh6_64

5.测试登录
在这里插入图片描述

6.dminit命令行工具参数,可通过-e设置,如:-e SYSDBA_PWD="SYSDBA123"设置密码

参数名参数描述注意事项
INI_FILE指定初始化配置文件路径需确保文件路径正确且可读写
PATH数据库文件存放路径路径需为空目录或允许覆盖
CTL_PATH控制文件路径建议与数据文件分开存储以提高安全性
LOG_PATH日志文件路径需确保有足够空间存储日志
EXTENT_SIZE数据文件扩展大小(MB)默认16MB,建议根据数据量调整
PAGE_SIZE页大小(KB),可选4/8/16/32一旦设定不可更改,需根据应用场景选择
LOG_SIZE日志文件大小(MB)需满足事务量需求,过小会导致频繁切换
CASE_SENSITIVE标识符大小写敏感(Y/N)默认为Y,与兼容性相关,需谨慎选择
CHARSET/UNICODE_FLAG字符集(0/1),0-GBK,1-UTF8需与应用程序字符集一致
SEC_PRIV_MODE安全权限模式(0/1/2)0-传统模式,1-自主访问控制,2-强制访问控制
SYSDBA_PWDSYSDBA用户密码建议设置复杂密码
SYSAUDITOR_PWDSYSAUDITOR用户密码审计管理员密码,安全场景下必设
DB_NAME数据库名需唯一且符合命名规范
INSTANCE_NAME实例名单机环境下通常与DB_NAME一致
PORT_NUM数据库服务监听端口需确保端口未被占用
BUFFER系统缓冲区大小(MB)影响性能,建议为可用内存的50-70%
TIME_ZONE时区设置(如+08:00)需与服务器时区一致
PAGE_CHECK/PAGE_HASH_NAME页校验算法影响性能与安全性,建议开启
EXTERNAL_CIPHER/HASH/CRYPTO_NAME外部加密/哈希/加密算法名称需确保算法库可用
RLOG_ENCRYPT_NAME日志加密算法安全场景建议启用
RLOG_POSTFIX_NAME日志文件后缀默认.log,无特殊需求不建议修改
USBKEY_PINUSBKEY PIN码使用USBKEY认证时必填
PAGE_ENC_SLICE_SIZE页加密分片大小影响加密性能,默认4096字节
ENCRYPT_NAME数据库加密算法需与安全策略一致,启用后不可更改
BLANK_PAD_MODE空格填充模式(0/1)影响字符串比较,兼容Oracle需设为1
SYSTEM/MAIN/ROLL_MIRROR_PATH系统/主/回滚文件镜像路径提高可靠性,建议配置
MAL/ARCH/MPP_FLAG启用MAL(消息代理)/归档/MPP(大规模并行)标志(Y/N)分布式或高可用场景需开启
CONTROL控制文件副本数建议≥2以提高容错
AUTO_OVERWRITE自动覆盖已有文件(Y/N)谨慎使用,会导致数据丢失
USE_NEW_HASH使用新哈希算法(Y/N)影响兼容性,默认N
ELOG_PATH错误日志路径需定期清理
AP_PORT_NUM辅助端口号集群环境可能需要
HUGE_WITH_DELTA是否使用HUGE表Delta存储(Y/N)列存储表优化选项
RLOG_GEN_FOR_HUGE为HUGE表生成日志(Y/N)影响性能与可恢复性
PSEG_MGR_FLAG管理永久段空间(Y/N)默认Y,不建议修改
CHAR_FIX_STORAGECHAR类型定长存储(Y/N)影响存储效率
SQL_LOG_FORBID禁止SQL日志(Y/N)调试场景临时关闭
DPC_MODE分布式PC模式(0/1/2)集群环境配置
SYSSSSO/SYSDBO_PWDSYSSSSO(安全管理员)/SYSDBO(运维管理员)密码三权分立模式下必设
PRIV_FLAG权限标志位(十六进制)高级安全设置,需参考手册
MAIN/SYSTEM/ROLL/TEMP_DB主/系统/回滚/临时数据文件路径建议分开存储以提高性能
F_PATH
USE_DB_NAME是否使用DB_NAME作为实例名(Y/N)默认N,兼容性选项
ENABLE_MAC启用强制访问控制(Y/N)安全等保场景需开启
RANDOM_CRYPTO使用随机加密(Y/N)增强安全性,但可能影响性能
AUTO_ADJ_PARA/MEM/CPUS自动调整参数/内存/CPU(Y/N)建议首次安装时启用
HELP显示帮助信息无实际参数作用

三、验证目录是否挂载成功

1.验证日志目录是否挂载成功:查看宿主机log目录,包含下面图片log文件。说明挂载成功
在这里插入图片描述
2.验证数据目录是否挂载成功:数据库连接dm成功后,运行下面sql 创建数据
在这里插入图片描述
3.验证数据目录是否挂载成功:运行docker stop dm8 && docker rm dm8删除容器,重新使用之前的命令运行容器
在这里插入图片描述
4.验证数据目录是否挂载成功:连接数据库,重新查询之前创建的表,数据存在说明数据目录挂载成功
在这里插入图片描述

http://www.dtcms.com/a/290876.html

相关文章:

  • 自学鸿蒙测试day01-插件安装推荐
  • Vue 3 响应式原理详细解读【一】—— Proxy 如何突破 defineProperty 的局限
  • 计算机发展史:晶体管时代的技术飞跃
  • Boost库智能指针boost::shared_ptr详解和常用场景使用错误示例以及解决方法
  • 软件测试 —— A / 入门
  • 数据结构 之 【排序】(直接插入排序、希尔排序)
  • 基于 Nginx 搭建 OpenLab 多场景 Web 网站:从基础配置到 HTTPS 加密全流程
  • Nginx IP授权页面实现步骤
  • Grok网站的后端语言是php和Python2.7
  • Python 变量赋值与切片语法(in-place 修改 vs 重新赋值)
  • 《画布角色的双重灵魂:解析Canvas小游戏中动画与碰撞的共生逻辑》
  • 状压DP学习笔记[浅谈]
  • 计算机网络:概述层---计算机网络的性能指标
  • IFN影视官网入口 - 4K影视在线看网站|网页|打不开|下载
  • 算法训练营DAY37 第九章 动态规划 part05
  • Linux开发⊂嵌入式开发
  • 复制docker根目录遇到的权限问题
  • Mac安装Typescript报错
  • macOS 上安装 Kubernetes(k8s)
  • 深度学习-常用环境配置
  • 基于R语言的分位数回归技术应用
  • next.js刷新页面时二级菜单展开状态判断
  • Java 通过 HttpURLConnection发送 http 请求
  • CG-04 翻斗式雨量传感器 分辨率0.1mm,0.2mm可选择 金属材质
  • 数据结构自学Day11-- 排序算法
  • 使用 Longformer-base-4096 进行工单问题分类
  • Redis进阶--缓存
  • Ubuntu 22.04 安装 MySQL 8.0 完整步骤文档
  • 计算机网络中:传输层和网络层之间是如何配合的
  • 7月21日星期一今日早报简报微语报早读