使用Docker Compose轻松部署达梦数据库

在国产化技术浪潮中,数据库作为核心基础软件,其自主可控至关重要。达梦数据库作为国产数据库领域的领先者,凭借其成熟稳定的特性,已成为众多企业实现数据技术国产替代的重要选择。我最近在本地需要部署达梦做一些测试,记录下docker快速部署及使用过程。本文将详细介绍如何使用 Docker Compose 快速部署达梦数据库。

ScreenShot_2025-12-03_085219_649.png

达梦数据库简介

达梦数据库(DM Database)是武汉达梦数据库股份有限公司推出的具有完全自主知识产权的高性能数据库管理系统。它兼容多种SQL标准,支持多种编程接口,广泛应用于政府、金融、电信等关键领域。

官网地址: www.dameng.com/product/DM....

docker-compose 部署

达梦官网提供了各操作系统的部署包及部署文档,需要直接部署达梦数据库的家人们可根据官网提供的文档进行部署,官网现在不在提供docker镜像,需要部署最新版本的话要自行构建镜像,构建过程较为复杂,我使用的是之前dockerhub中搜索的镜像,以下是部署过程。

创建docker-compose.yml文件

创建数据库的部署目录dm8,在此目录下创建docker-compose.yml 文件,内容如下:

ini 复制代码
services:
  dm8:
    image: sizx/dm8:1-2-128-22.08.04-166351-20005-CTM
    container_name: dm8
    restart: always
    privileged: true
    ports:
      - "5236:5236"
    environment:
      - PAGE_SIZE=16  # 页大小:设置为16KB,数据库物理存储的基本单位,影响I/O性能和存储效率
      - UNICODE_FLAG=0  # 字符集标识:0表示使用GB18030字符集
      - LENGTH_IN_CHAR=0  长度单位:0表示以字节为单位计算VARCHAR类型长度
      - CASE_SENSITIVE=1   # 大小写敏感:设置为1表示不区分大小写
      - SYSDBA_PWD=123456789  # 设置sysdba密码
      - LD_LIBRARY_PATH=/opt/dmdbms/bin # 动态库搜索路径:指定共享库的查找目录
      - INSTANCE_NAME=dm8_instance  #  实例名称:数据库实例的标识名
    volumes:
      - ./data:/opt/dmdbms/data

启动数据库

在docker-compose.yml 的统计目录下使用以下命令启动

复制代码
docker-compose up -d 

出现以下日志则表明部署成功

连接数据库

我们因为使用的是docker部署的数据库,所以无法使用达梦自带的数据库工具,我们连接的时候可以使用DBeaver或者``SQLark百灵连接, SQLark 连接使用有点与navicat相似,我使用的就是SQLark,以下是官网地址,需要的家人们也可以在官网去下载

SQLark官网:www.sqlark.com/

fc1e959212c1e22d9343008f03504c09.jpg

下载完成之后打开以下连接页面

ca17357453a1e037eda2d950bf254068.png

28aa7e29d8b3070d8328ea2c27d807c2.png

使用sysdba用户登录,密码是我们在docker-compose.yml环境变量中设置的- SYSDBA_PWD=123456789这个密码。

登录之后添加用户,添加完用户在该用户对用的模式下创建数据库表,然后我们就可以使用了。

c8a035534117f3ed6f90cb2a478464f4.png

结语

达梦8作为国产数据库的杰出代表,不仅在技术上具备了替代国外主流数据库的实力,更在安全性与可控性方面展现出独特优势。随着国产化进程的不断深入,掌握达梦数据库将成为我们未来发展的重要支撑力量。

相关推荐
晚霞的不甘5 小时前
揭秘 CANN 内存管理:如何让大模型在小设备上“轻装上阵”?
前端·数据库·经验分享·flutter·3d
市场部需要一个软件开发岗位5 小时前
JAVA开发常见安全问题:纵向越权
java·数据库·安全
海奥华25 小时前
mysql索引
数据库·mysql
2601_949593656 小时前
深入解析CANN-acl应用层接口:构建高效的AI应用开发框架
数据库·人工智能
javachen__6 小时前
mysql新老项目版本选择
数据库·mysql
Dxy12393102166 小时前
MySQL如何高效查询表数据量:从基础到进阶的优化指南
数据库·mysql
Dying.Light6 小时前
MySQL相关问题
数据库·mysql
蜡笔小炘7 小时前
LVS -- 利用防火墙标签(FireWall Mark)解决轮询错误
服务器·数据库·lvs
韩立学长7 小时前
基于Springboot泉州旅游攻略平台d5h5zz02(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·旅游
Re.不晚8 小时前
MySQL进阶之战——索引、事务与锁、高可用架构的三重奏
数据库·mysql·架构