我在使用liquibase进行升级时遇到问题。我有一个应用程序jbilling-community-4.1.1。
我想将数据从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 :(得分:0)
确保在命令中添加属性-schema = jbilling_test。
答案 1 :(得分:-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等等