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

Docker 安装达梦 DM8 数据库实战指南

Docker 安装达梦 DM8 数据库实战指南

文章目录

  • Docker 安装达梦 DM8 数据库实战指南
      • 一 安装环境
      • 二 下载 DM8 安装包
      • 三 导入镜像
      • 四 启动容器
        • 1)docker run 启动
        • 2)docker compose 启动
        • 3)名词解释
      • 五 连接数据库

本文详细介绍了如何在 CentOS 7.9 环境下,通过 Docker 部署达梦 DM8 数据库的完整流程。首先,用户需要从官方渠道下载 DM8 Docker 镜像并导入容器镜像。接着,文章提供了使用 docker rundocker compose 启动容器的两种方式,并详细解释了容器启动相关参数及数据库初始化参数设置的含义。最后,通过连接容器并进入数据库执行 SQL 语句,验证数据库是否成功部署。该指南适合需要快速部署达梦数据库的开发者和运维人员。

预备课

Docker 安装与配置:从入门到部署

一 安装环境

操作系统架构
CentOS 7.9X86-64

二 下载 DM8 安装包

DM8 Docker 镜像下载地址 提供了最新的安装包,仅供学习、测试和开发用途,并享有1年免费试用期。请注意,下载的文件名为 dm8_20240715_x86_rh6_rq_single.tar,大小约为1.1GB,未来版本的文件名可能会有所不同。

三 导入镜像

$ docker load < dm8_20240715_x86_rh6_rq_single.tar
# 或者
$ docker load -i dm8_20240715_x86_rh6_rq_single.tar

四 启动容器

1)docker run 启动
$ docker run -d -p 30236:5236 --restart=always --name=dm8_test --privileged=true -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e PAGE_SIZE=16 -e EXTENT_SIZE=32 -e LOG_SIZE=1024 -e UNICODE_FLAG=1  -e INSTANCE_NAME=dm8_test -v /dm8/data:/opt/dmdbms/data dm8_single:dm8_dm8_20240715_rev232765_x86_rh6_64
2)docker compose 启动
version: '3'
services:
  dm8_test:
    image: dm8_single:dm8_dm8_20240715_rev232765_x86_rh6_64
    container_name: dm8_test
    restart: always
    privileged: true
    ports:
      - 30236:5236
    environment:
      - TZ=Asia/Shanghai
      - LD_LIBRARY_PATH=/opt/dmdbms/bin
      - PAGE_SIZE=16
      - EXTENT_SIZE=32
      - LOG_SIZE=1024
      - UNICODE_FLAG=1
      - INSTANCE_NAME=dm8_test
    volumes:
      - ./dm8/data:/opt/dmdbms/data
3)名词解释

容器运行相关参数说明:

参数名参数描述
-d-detach 的简写,在后台运行容器,并且打印容器 id。
-p指定容器端口映射,比如 -p 30236:5236 是将容器里数据库的 5236 端口映射到宿主机 30236 端口,外部就可以通过宿主机 ip 和 30236 端口访问容器里的数据库服务。
–restart指定容器的重启策略,默认为 always,表示在容器退出时总是重启容器。
–name指定容器的名称。
–privileged指定容器是否在特权模式下运行。
-v指定在容器创建的时候将宿主机目录挂载到容器内目录,默认为/home/mnt/disks

使用 -e 命令指定数据库初始化参数时,需要注意的是目前只支持预设以下九个 DM 参数。

参数名参数描述备注
PAGE_SIZE页大小,可选值 4/8/16/32,默认值:8设置后不可修改
EXTENT_SIZE簇大小,可选值 16/32/64,默认值:16设置后不可修改
CASE_SENSITIVE1:大小写敏感;0:大小写不敏感,默认值:1设置后不可修改
UNICODE_FLAG字符集选项;0:GB18030;1:UTF-8;2:EUC-KR,默认值:0设置后不可修改
INSTANCE_NAME初始化数据库实例名字,默认值:DAMENG可修改
SYSDBA_PWD初始化实例时设置 SYSDBA 的密码,默认值:SYSDBA001可修改
BLANK_PAD_MODE空格填充模式,默认值:0设置后不可修改
LOG_SIZE日志文件大小,单位为:M,默认值:256可修改
BUFFER系统缓存大小,单位为:M,默认值:1000可修改

注意

1 SYSDBA_PWD 预设的时候,密码长度为 9~48 个字符,docker 版本使用暂不支持特殊字符为密码。

2 -e 设置的时候 初始化参数必须使用大写,不可使用小写。

3 新版本 Docker 镜像中数据库默认用户名/密码为 SYSDBA/SYSDBA001

五 连接数据库

进入 DM8 容器连接数据库,通过以下命令进入容器

$ sudo docker exec -it your容器 /bin/bash

进入数据库脚本目录

$ cd /opt/dmdbms/bin

连接数据库

$ ./disql SYSDBA/SYSDBA001

运行 SQL 测试

select ID_CODE();

注意

1 如果使用 docker 容器里面的 disql,进入容器后,先执行 source /etc/profile 防止中文乱码。


http://www.kler.cn/news/357674.html

相关文章:

  • 使用 Dijkstra 算法优化物流配送路径
  • 文献分享: 高维ANN算法的综述
  • 【Flutter】Dart:变量和内置类型
  • Java 直接获取 pom.xml 配置的属性值
  • 【0day】ChatGPT个人专用版 pictureproxy SSRF漏洞【附poc下载】
  • 15.java面向对象:多态
  • 可达性分析法
  • 2024-10-15 Nuxt3打包部署到Nginx流程
  • [LeetCode] 210. 课程表II
  • 对Android的Binder机制的了解
  • 汽车建模用什么软件最好?汽车建模渲染建议!
  • 【力扣 | SQL题 | 每日4题】力扣2308,2324,2346,2372
  • 特斯联|日常|Java|后端开发
  • LeetCode LRU 缓存
  • MySQL创建和管理表
  • 第15篇:网络架构优化与综合案例分析
  • C/C++程序员为什么要了解汇编?汇编语言的好处与学习路径详解
  • 《环境感知:开启智能生活新视角》
  • 怎么快速定位bug?怎么编写测试用例?
  • 基于SSM发改局电子OA办公平台JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解