docker 使用达梦数据库

使用前需要在宿主机上创建uid和gid为1000的dmdba用户,要不然会出现权限不一致问题,容器中的用户文件权限是1000,但是宿主机就会变成其他的

1
docker run -d -p 52362:5236 --restart=always --name=dm8_601 --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 CASE_SENSITIVE=0 -e INSTANCE_NAME=dm8_601 -v /opt/dm601/data:/opt/dmdbms/data dm8_single:dm8_20240715_rev232765_x86_rh6_64 

[图片上传失败…(image-CNr5uyer0IWKtM3l)]

INSTANCE_NAME初始化数据库实例名字,默认值:DAMENG可修改SYSDBA_PWD初始化实例时设置 SYSDBA 的密码,默认值:SYSDBA001可修改

创建数据库

命令行连接命令
{DM_TOP}/bin/disql SYSDBA/SYSDBA001@127.0.0.1:5236

{DM_TOP}/bin/disql APPFORM/pwd123456@hostname:端口号

1
create tablespace "APPFORM" datafile '/opt/dmdbms/data/DAMENG/APPFORM.DBF' size 128 autoextend on next 100 maxsize 20480 CACHE = NORMAL;

这个datafile是容器中的路径,即上面命令中的-v /opt/data:/opt/dmdbms/data

创建用户

1
create user "APPFORM" identified by "jhDataPwd123" hash with SHA512 salt default tablespace "APPFORM" default index tablespace "APPFORM";

授权

1
grant "DBA","PUBLIC","RESOURCE","SOI","SVI","VTI" to "APPFORM";

NACOS

1
2
3
4
5
6
7
8

create tablespace "NACOS" datafile '/opt/dmdbms/data/DAMENG/NACOS.DBF' size 128 autoextend on next 100 maxsize 20480 CACHE = NORMAL;

create user "NACOS" identified by "jhDataPwd123" hash with SHA512 salt default tablespace "NACOS" default index tablespace "NACOS";

grant "DBA","PUBLIC","RESOURCE","SOI","SVI","VTI" to "NACOS";


AnyRouter | Claude Code 共享平台

在数据库中执行sql脚本

start /opt/dmdbms/data/create_schema.sql

1
2
3
start /opt/dmdbms/data/create_schema.sql
start /opt/dmdbms/data/jhinsight_create_schema.sql
start /opt/dmdbms/data/nacos-dmdba.sql

输入图片说明