2016-06-28 124 views
0

我在使用liquibase升级时遇到问题。我有一个应用程序jbilling-community-4.1.1。与MySQL的Liquibase升级问题

我想从jbilling-community3.1.0数据迁移到jbilling-community4.1.1但是当我运行此命令

grails upgrade-db -user=root -pass=root -db=jbilling_test -dbVersion=3.2 -url="jdbc:mysql://localhost:3306/jbilling_test" 

它给这个错误

Error executing script UpgradeDb: : liquibase.exception.LockException: liquibase.exception.DatabaseException: Error executing SQL 
CREATE TABLE public.DATABASECHANGELOGLOCK (ID INT NOT NULL, LOCKED BIT(1) NOT NULL, LOCKGRANTED datetime NULL, LOCKEDBY VARCHAR(255) NULL, CONSTRAINT PK_DATABASECHANGELOGLOCK PRIMARY KEY (ID)): 
Unknown database 'public' (Use --stacktrace to see the full trace) 

upgrade-db是一个脚本,升级数据库。我已经使用postGres(它是jbilling的默认数据库)升级它,但他们说它可以使用mysql运行。但我得到这个例外,它与liquibase有关,所以发布在这里。

+0

我没有任何的Grails的线索,但是你确定你使用了正确的命令行选项? grails liquibase插件的文档有不同的选项:http://grails-plugins.github.io/grails-database-migration/docs/manual/ref/Update%20Scripts/dbm-update.html – Jens

回答

-1

试试这个

grails upgrade-db -user=root -pass=root -db=jbilling_test -dbVersion=3.2 -url="jdbc:mysql://localhost:3306/jbilling_test" -schema=jbilling

确保你3.0升级到3.1,然后3.2等