在 Oracle 12.1.0.2.v15 上运行 spring-boot 2.1.3.RELEASE 并使用 liquibase 3.6.3,我在启动时遇到异常:
Did not update change log lock correctly.\n\n 0 rows were updated instead of the expected 1 row using executor oracle there are 0 rows in the table
这个:
经过调查,我怀疑这可能与我的用户的某些缺失权利有关,因为它在使用 AWS RDS 12.1.0.2.v15 创建的数据库上运行良好,但在本地数据库上运行不佳。
唯一明显的区别是本地用户无法访问 v$parameter,所以我得到:
Could not set check compatibility mode on OracleDatabase, assuming not running in any sort of compatibility mode: Cannot read from v$parameter: ..
有人有想法吗?
是否与自动提交默认值有关?
使用 liquibase 时是否有 Oracle 用户要求的链接?
最佳答案
所以问题最终是 DBA 错误配置了 Oracle 用户,他没有表空间的权限。
但是这个问题并没有出现在日志中。
一旦我删除了 liquibase 上下文:
spring.liquibase.contexts
问题很明显:
ORA-01950 : no privileges on tablespace ....
关于java - 由于 StandardLockService 中 Oracle 上的 Liquibase 问题,Spring-Boot 应用程序无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55504251/