背景:原来官网下的dm8docker镜像有效期只有两个星期,问他们商务申请了新的dm8镜像,准备简单升级一下镜像再引入原来的database
先说结论:jdbc驱动要更新 官网dm8驱动链接地址
原来的tag镜像
dm8_single:v8.1.2.128_ent_x86_64_ctm_pack4
新tag镜像
dm8:dm8_20230804_rev197096_x86_rh6_64
都是出自达梦
# load新dm镜像
docker load -i dm8_20230220_rev176349_x86_rh6_64.tar
# docker启动命令
docker run -d -p 8036:5236 --restart=always --name dm8_05 --privileged=true -e PAGE_SIZE=16 -e CASE_SENSITIVE=0 -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e INSTANCE_NAME=dm8_05 -v /data/docker/dm8_05:/opt/dmdbms/data dm8:dm8_20230804_rev197096_x86_rh6_64
正常启动这里提一句dm这个日志真的离谱了,居然显示shutdown success,其实是已经正常启动了,进容器disql是可以访问数据库,状态也是open,只能说日志太不严谨了
我再照常去用远程工具连接(我用的datagrip),然后不出意外的意外来了,链接不上了
又是排查防火墙,又是看镜像dm.ini的NUM_PORT,完全没有往驱动上面想,因为之前的也是dm8能连,最后一想不是驱动出问题了吧,在他们官网找了半天(吐槽一下官网对开发人员不友好,连文档里面的全文检索都是坏的)替换了一下就好了
另注意,更换镜像前先备份原来的数据,防止出现神奇意外
附上mvn install链接
mvn install:install-file -Dfile=/Users/xxxx/Desktop/jdbc/DmJdbcDriver18.jar -DgroupId=com.dm -DartifactId=DmJdbcDriver18 -Dversion=8.1.1.193 -Dpackaging=jar -DgeneratePom=true -settings=/Users/xxx/develop/maven/settings.xml