我有一个 Spring Boot 应用程序,它使用 Quartz 调度程序和 PostGreSQL 数据库作为存储。我正在将它从使用它自己的数据库运行迁移到public
schema 来针对每个应用程序使用一个 schema 的共享数据库运行。该架构是通过以下方式管理的flyway /questions/tagged/flyway.
测试期间(与测试容器 /questions/tagged/testcontainers)应用程序启动失败
Caused by: org.postgresql.util.PSQLException: ERROR: relation "qrtz_locks" does not exist
Position: 15
尽管 Flyway 之前已在架构中创建了该表app_test_hub_scheduler_v0
.
配置是
spring:
jpa.properties:
hibernate.default_schema: app_test_hub_scheduler_v0
flyway:
enabled: true
schemas: app_test_hub_scheduler_v0
jpa:
properties:
hibernate:
default_schema: app_test_hub_scheduler_v0
quartz:
jdbc:
schema: app_test_hub_scheduler_v0
jdbcUrlParams: ?currentSchema=app_test_hub_scheduler_v0
石英的性质是
org.quartz.scheduler.instanceName=test-hub-scheduler
org.quartz.scheduler.instanceId=AUTO
org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount=50
org.quartz.jobStore.misfireThreshold=60000
org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
org.quartz.jobStore.useProperties=true
org.quartz.jobStore.dataSource=myDS
org.quartz.jobStore.tablePrefix=qrtz_
org.quartz.jobStore.isClustered=false
石英似乎没有获得模式名称。我该如何设置?
如果在quartz.properties中声明了以下属性,Quartz调度程序可以考虑schema_name。例如
org.quartz.jobStore.tablePrefix=app_test_hub_scheduler_v0.qrtz_
Here
app_test_hub_scheduler_v0 = is schema name and
qrtz_= is quartz table prefix
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)