网站面包屑如何做,关键词推广排名,wordpress友情链接,基于h5的网站开发文章目录 1、问题描述2、原因分析3、解决方案3.1、方案一#xff1a;降低mysql版本3.2、方案二#xff1a;增加nullCatalogMeansCurrent参数#xff08;推荐#xff09; 4、总结 1、问题描述
需要在docker中#xff0c;部署Camunda流程引擎。通过启动脚本camunda-platfor… 文章目录 1、问题描述2、原因分析3、解决方案3.1、方案一降低mysql版本3.2、方案二增加nullCatalogMeansCurrent参数推荐 4、总结 1、问题描述
需要在docker中部署Camunda流程引擎。通过启动脚本camunda-platform-dockerstart.sh 连接引擎。 本文使用的数据库为mysql8.0.21版本camunda-platform-dockerstart.sh 脚本内容如下
#!bin/bash
docker run -d --name camunda -p 8080:8080 \-e DB_DRIVERcom.mysql.cj.jdbc.Driver \-e DB_URLjdbc:mysql://192.168.188.135:3306/camunda \-e DB_USERNAMEroot \-e DB_PASSWORD123456 \-e WAIT_FOR192.168.188.135:3306 \camunda/camunda-bpm-platform:7.18.0执行上述脚本时出现如下错误提示
Cause: java.sql.SQLSyntaxErrorException: Table camunda_platform_docker.ACT_GE_PROPERTY doesnt exist2、原因分析
mysql连接从6.x版本开始将nullCatalogMeansCurrent属性由原来的默认true改为了false。
true使用指定的数据库进行查询。优先取当前传入的数据库名其次取当前链接的数据库名。false代表遍历当前链接下的所有数据库即从information_schema, mysql 和 performance_schema 这三个系统DB中进行查询。
所以如果提前在虚拟机的mysql中创建过其他Camunda的数据库非第一次创建Camunda流程引擎则会存在activiti表。此时使用同一个虚拟机ip下的mysql再次创建Camunda时就算两张activiti表不在同一个数据库中也会产生该错误。 3、解决方案
3.1、方案一降低mysql版本
降低mysql版本至5.x同时也应该使用mysql 5.x的数据库驱动进行连接
DB_DRIVERcom.mysql.jdbc.Driver3.2、方案二增加nullCatalogMeansCurrent参数推荐
在连接语句后增加nullCatalogMeansCurrenttrue
DB_URLjdbc:mysql://自己的虚拟机ip地址:3306/camunda?nullCatalogMeansCurrenttrue只要出现了以下49张表说明Camunda流程引擎创建成功。 4、总结 将mysql版本降为5.x。 在数据库连接的url后面加上nullCatalogMeansCurrenttrue。
既然选择了mysql8.0的版本更推荐使用第二种方案。