我正在尝试启动两个不同的Spring Boot Camunda应用程序。第一个启动完全正常,并在数据库中创建表和所有内容。但是,当我尝试启动第二个应用程序时,它失败了。明确地说,我希望应用程序将它们的架构作为自己的数据库来体验,如果有道理的话。引导第二个Spring Boot应用程序时出现的错误是:
ENGINE-16004 Exception while closing command context:
### Error querying database. Cause: org.postgresql.util.PSQLException: ERROR: relation "act_ge_property" does not exist
Position: 15
### The error may exist in org/camunda/bpm/engine/impl/mapping/entity/Property.xml
### The error may involve org.camunda.bpm.engine.impl.persistence.entity.PropertyEntity.selectProperty-Inline
### The error occurred while setting parameters
### SQL: select * from ACT_GE_PROPERTY where NAME_ = ?
### Cause: org.postgresql.util.PSQLException: ERROR: relation "act_ge_property" does not exist
Position: 15
我只有一个Postgres数据库,但是应用程序使用不同的用户名/密码连接到该数据库。他们的用户拥有自己的架构,并且无法访问数据库中的其他架构。
为两个应用程序都设置了以下应用程序属性:camunda.bpm.datasource.schema-update=true
。
阅读有关Camunda的文档之后,我可以看到.schema-update=true
应该创建表(如果它们不存在)。
我不明白为什么第二个应用程序不创建表。
对于Postgres模式配置,我使用以下命令创建它们:
CREATE USER applicationName WITH PASSWORD 'r4nd0m';
CREATE SCHEMA AUTHORIZATION applicationName;
我不知道问题出在配置Camunda应用程序还是有关模式的特权/创建。
任何帮助将不胜感激!
答案 0 :(得分:0)
是的,可以。如果我正确理解了您的要求,该项目将向您展示如何: