gpt4 book ai didi

diff - 在快照和数据库之间生成变更日志

转载 作者:行者123 更新时间:2023-12-02 20:02:53 25 4
gpt4 key购买 nike

为了跟踪数据库的更改,我认为最好的解决方案是生成数据库的快照,进行更改并获取将快照与数据库进行比较的更改日志。

对于快照,我使用以下命令:

 $ liquibase --url=jdbc:postgresql://localhost:5432/test 
outputFile=sdk/workspace//output.json --snapShotFormat=json

现在我有了快照,我在数据库中做了一些更改(将 2 列添加到 2 个不同的表)。我尝试运行以下命令以将快照与数据库进行比较:

 $ liquibase --url=jdbc:postgresql://localhost:5432/test - 
username=postgres --password=new_password --
referenceUrl=offline:postgresql?snapshot=sdk/testsnapshot.json
diffchangelog

但我收到以下错误:

 $ Unexpected error running Liquibase: Cannot parse snapshot 
offline:postgresql?snapshot=sdk/testsnapshot.json

知道如何解决这个问题吗?

最佳答案

我设法解决了这个问题,以防将来有人遇到同样的问题,这是正确的方法。

生成快照:

liquibase 
--driver=org.postgresql.Driver \
--classpath=lib/postgresql42.2.5.jre6.jar \
--url=jdbc:postgresql://localhost:5432/test \
--outputFile=sdk/snaptest.json \
--username=postgres \
--password=new_password \
snapshot

生成快照和数据库之间的diffChangeLog

liquibase 
--driver=org.postgresql.Driver \
--changeLogFile=sdk/workspace/difference_log.xml \
--url=jdbc:postgresql://localhost:5432/test \
--username=postgres \
--password=new_password \
--referenceUrl=offline:postgresql=sdk/snaptest.json \
diffchangelog

干杯

关于diff - 在快照和数据库之间生成变更日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55444888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com