docker 安装达梦8

背景

X86-64架构使用Docker安装dm8_20240422_x86_rh6_64_rq_std_8.1.3.100_pack2.tar

1.下载Docker安装包

达梦官网下载dm8_20240422_x86_rh6_64_rq_std_8.1.3.100_pack2.tar安装包

快速下载通道: 达梦镜像包

2.将安装包上传至服务器,并加载镜像

拷贝安装包到 /opt 目录下,执行以下命令导入安装包:

复制代码
docker load -i dm8_20240422_x86_rh6_64_rq_std_8.1.3.100_pack2.tar

检验是否导入成功

复制代码
docker images

3.启动数据库容器

bash 复制代码
docker run -d -p 5236: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 LENGTH_IN_CHAR=1 -e INSTANCE_NAME=dm8_test -v /opt/data:/opt/dmdbms/data dm8:dm8_20240613_rev229704_x86_rh6_64 

容器运行相关参数说明:

参数名 参数描述
-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_SENSITIVE 1:大小写敏感;0:大小写不敏感,默认值:1 设置后不可修改
LENGTH_IN_CHAR 是否以字符为单位。1:以字符为单位,0:以字节为单位,默认值:0 设置后不可修改
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 设置的时候 初始化参数必须使用大写,不可使用小写。

4.进入 dm8_test 容器连接数据库

通过以下命令进入容器:

bash 复制代码
docker exec -it dm8_test bash

进入指定目录

bash 复制代码
cd /opt/dmdbms/bin

使用账号密码连接(默认账号密码:SYSDBA/SYSDBA001)

bash 复制代码
./disql SYSDBA/SYSDBA001

5.修改密码

在上一步的基础上进行修改密码

bash 复制代码
ALTER USER SYSDBA IDENTIFIED BY 'pwdpwdpwd';

6.扩展命令

查看 Docker 镜像中数据库初始化的参数

bash 复制代码
docker inspect dm8_test

停止数据库命令

bash 复制代码
docker stop  dm8_test

启动数据库命令

bash 复制代码
docker start  dm8_test

重启命令

bash 复制代码
docker restart  dm8_test

查看数据库日志

bash 复制代码
docker logs -f  dm8_test
相关推荐
老华带你飞1 小时前
医药垃圾分类管理系统|基于SSM+vue医药垃圾分类管理系统的系统设计与实现(源码+数据库+文档)
java·数据库·vue·毕业设计·论文·ssm·医药垃圾分类管理系统
rider1892 小时前
【9】搭建k8s集群系列(二进制部署)之安装work-node节点组件(kube-proxy)和网络组件calico
java·容器·kubernetes
运维李哥不背锅2 小时前
K8S集群节点负载无故飙升:CPU软死锁解决方案
linux·运维
坊钰4 小时前
【MySQL 数据库】数据类型
java·开发语言·前端·数据库·学习·mysql·html
糖醋_诗酒4 小时前
SQL122 删除索引
数据库
在下千玦4 小时前
#MongoDB 快速上手
数据库·mongodb
hxung4 小时前
springboot项目中常用的工具类和api
数据库·spring boot·后端
2401_874275174 小时前
微服务。1 微服务
java·数据库·微服务
geek_super4 小时前
Docker学习--网络相关命令
docker
网安小陈5 小时前
【网安】处理项目中的一些常见漏洞bug(java相关)
java·开发语言·数据库·安全·web安全·网络安全·bug