我正在向现有项目添加 Liquibase 支持。当我运行
changelog-sync-sql
操作时,所有 SQL 查询都正确生成。我检查了它们并想执行。所以,我尝试运行changelog-sync
,但是由于权限不足而失败,即:
Unexpected error running Liquibase: ORA-01031: insufficient privileges
[Failed SQL: (1031) CREATE TABLE <schema>.DATABASECHANGELOGLOCK ...
我复制了整个创建表查询并使用完全相同的 jdbc 连接字符串、用户名、密码和架构登录到数据库,并且我设法手动执行它,没有任何错误。所以,看起来用户拥有所有必需的权限。
Liquibase 版本:4.23.0。数据库供应商:Oracle。
这是某种错误吗?我该如何调查?
我尝试使用 FINE 级别对其进行调试,发现 Liquibase 对该查询进行了 10 次重试,最终失败。
您使用 JDBC 驱动程序吗?如果是的话哪个版本?这是一个独立的 Java 程序还是 Spring Boot(如果您可以分享代码片段那就太好了)。