为了跟踪数据库的更改,我认为最好的解决方案是生成数据库的快照,进行更改并获取将快照与数据库进行比较的更改日志。
对于快照,我使用以下命令:
$ liquibase --url=jdbc:postgresql://localhost:5432/test
outputFile=sdk/workspace//output.json --snapShotFormat=json
Run Code Online (Sandbox Code Playgroud)
现在我有了快照,我在数据库中进行了一些更改(向 2 个不同的表添加 2 列)。我尝试运行以下命令来将快照与数据库进行比较:
$ liquibase --url=jdbc:postgresql://localhost:5432/test -
username=postgres --password=new_password --
referenceUrl=offline:postgresql?snapshot=sdk/testsnapshot.json
diffchangelog
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
$ Unexpected error running Liquibase: Cannot parse snapshot
offline:postgresql?snapshot=sdk/testsnapshot.json
Run Code Online (Sandbox Code Playgroud)
知道如何解决这个问题吗?