activiti7启动时报错:Table act_ge_property doesn't exist

今天试用activiti7,配置好了spring boot开发环境,数据库连接也没什么问题。第一次启动报如标题那样的错误。我用的是mysql8数据库,理论上第一次是空库,activiti7会自动创建表结构,但是我的环境下并没有创建表结构,并且报错。后来检查,还添加了spring.activiti.database-schema-update=true的参数,也不好使。最后安装如下的方法解决问题。

解决办法:在mysql的连接字符串上加上nullCatalogMeansCurrent=true

全部配置如下:

server:
  port: 8080
  servlet:
    context-path: /
    session:
      timeout: 9000

spring:
  datasource:
    username: root
    password: 123456
    url: jdbc:mysql://localhost:3306/activiti7?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC&nullCatalogMeansCurrent=true
    driver-class-name: com.mysql.cj.jdbc.Driver
  activiti:
    history-level: full
    db-history-used: true
    check-process-definitions: false
    database-schema-update: true

#  database-schema-update的选项如下:
#  flase:       默认值。activiti在启动时,会对比数据库表中保存的版本,如果没有表或者版本不匹配,将抛出异常。(生产环境常用)
#  true:        activiti会对数据库中所有表进行更新操作。如果表不存在,则自动创建。(开发时常用)
#  create_drop: 在activiti启动时创建表,在关闭时删除表(必须手动关闭引擎,才能删除表)。(单元测试常用)
#  drop-create: 在activiti启动时删除原来的旧表,然后在创建新表(不需要手动关闭引擎)。

  #日志的相关配置
logging:
  level:
    root: info



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容