2017-06-29 64 views
0

我正在爲具有現有Sybase db的項目設置Liquibase。我試着運行下面的命令:Liquibase - 爲現有Sybase db生成更改日誌

lb --driver=net.sourceforge.jtds.jdbc.Driver \ 
    --classpath=C:\<home>\.m2\repository\net\sourceforge\jtds\jtds\1.2.8\jtds-1.2.8.jar \ 
    --changeLogFile=testInitialChangelog.xml \ 
    --url="jdbc:jtds:sybase://<host>:<port>/<dbname>" \ 
    --username="<dbuser>" \ 
    --password="<dbpwd>" \ 
    --defaultSchemaName=<dbname> \ 
    --logLevel=debug \ 
generateChangeLog 

這不起作用 - 嗯,它產生了一個空的更新日誌。輸出是:

Picked up JAVA_TOOL_OPTIONS: -Duser.home=C:\<home> 
DEBUG 29/06/17 17:07: liquibase: Connected to <dbuser>@jdbc:jtds:sybase://<host>:<port>/<dbname> 
DEBUG 29/06/17 17:07: liquibase: Not adjusting the auto commit mode; it is already true 
DEBUG 29/06/17 17:07: liquibase: Computed checksum for 1498752444338 as a8b042e5c46068977523e7071dff7a0f 
WARNING 29/06/17 17:07: liquibase: Did not find schema '<dbname>' to snapshot 
INFO 29/06/17 17:07: liquibase: Can not use class liquibase.serializer.core.yaml.YamlChangeLogSerializer as a Liquibase service because org.yaml.snakeyaml.representer.Representer is not in the classpath 
INFO 29/06/17 17:07: liquibase: Can not use class liquibase.serializer.core.json.JsonChangeLogSerializer as a Liquibase service because org.yaml.snakeyaml.representer.Representer is not in the classpath 
INFO 29/06/17 17:07: liquibase: testInitialChangelog.xml does not exist, creating 
DEBUG 29/06/17 17:07: liquibase: MissingObjectChangeGenerator type order:  liquibase.structure.core.Catalog liquibase.structure.core.Schema liquibase.structure.core.Sequence liquibase.structure.core.StoredProcedure liquibase. 
structure.core.Table liquibase.structure.core.Column liquibase.structure.core.PrimaryKey liquibase.structure.core.UniqueConstraint liquibase.structure.core.Index liquibase.structure.core.ForeignKey liquibase.structure.core 
.View 
DEBUG 29/06/17 17:07: liquibase: UnexpectedObjectChangeGenerator type order:  liquibase.structure.core.Catalog liquibase.structure.core.ForeignKey liquibase.structure.core.Schema liquibase.structure.core.StoredProcedure liqui 
base.structure.core.UniqueConstraint liquibase.structure.core.View liquibase.structure.core.Table liquibase.structure.core.PrimaryKey liquibase.structure.core.Column liquibase.structure.core.Index liquibase.structure.core. 
Sequence 
DEBUG 29/06/17 17:07: liquibase: ChangedObjectChangeGenerator type order:  liquibase.structure.core.Catalog liquibase.structure.core.ForeignKey liquibase.structure.core.Schema liquibase.structure.core.Sequence liquibase.struc 
ture.core.StoredProcedure liquibase.structure.core.Table liquibase.structure.core.Column liquibase.structure.core.PrimaryKey liquibase.structure.core.UniqueConstraint liquibase.structure.core.Index liquibase.structure.core 
.View 
Liquibase 'generateChangeLog' Successful 
+0

我認爲輸出中顯示「WARNING 29/06/17 17:07:liquibase:未找到架構''快照」的行是問題所在。 – SteveDonie

回答

2

在這種情況下,它非常簡單 - --defaultSchemaName=參數。設置爲defaultSchemaName=dbo,它工作。

相關問題