当前位置: 首页 > 知识库问答 >
问题:

Liquibase generateChangeLog失败-表已存在

傅阳
2023-03-14

当我运行Jhipster项目时,我从Liquibase获得一个“表已存在”错误:

[ERROR] liquibase - classpath:config/liquibase/master.xml: classpath:config/liquibase/changelog/db-changelog-001.xml::1::jhipster: Change Set classpath:config/liquibase/changelog/db-changelog-001.xml::1::jhipster failed.  Error: Error executing SQL CREATE TABLE fc.T_USER (login VARCHAR(50) NOT NULL, .....: Table 't_user' already exists

我已经生成了Liquibase更改日志文件到配置\liquibase\更改日志目录使用

liquibase --driver=com.mysql.jdbc.Driver ^
      --classpath=C:\Users\Greg\.IntelliJIdea13\config\jdbc-drivers\mysql-connector-java-5.1.31-bin.jar ^
      --changeLogFile=db-changelog-001.xml ^
      --url="jdbc:mysql://localhost/fc" ^
      --username=root ^
      generateChangeLog

所以,我认为,当changelog设置现有数据库的基线时,有什么东西在欺骗Liquibase尝试重新创建数据库。

  • jhipster版本:当我哟jhipster-v是说1.2。当我nmp更新jhipster是说我在最新=17.2
  • Liquibase版本尝试了3.0、3.1和3.2
  • MySQL数据库从XAMP
  • 在MySQL中创建了2个表-数据库交换日志和数据库交换锁
  • 当Jhipster应用程序运行时,数据库交换日志保持为空,数据库交换日志添加了一条记录

这个过程是可行的,但自从搬到新电脑后就没有了。当它工作时,我看到databasechangelog中有两条记录,databasechangeloglock中有一条记录

关于如何调试的提示与答案一样受欢迎。谢谢

共有1个答案

欧阳君浩
2023-03-14

如上所述,运行GenerateChangeLog,然后在原地运行ChangeLogSync,会导致数据库echangelog表中的字段[FILENAME]具有值db-changelog-001.xml

它需要的是运行liquibase的完整地址。当在Jhipster应用程序中,我看到类路径:配置/liquibase/更改日志/db-changelog-001.xml。因此,它似乎不像我预期的那样只使用ID作为行标识符。

 类似资料:
  • 问题内容: 我正在将mysql-5.5 docker容器数据库升级到mysql-5.6 docker容器。我能够解决所有其他问题。最终,我的服务器以5.6运行。但是,当我运行mysql_upgrade时,出现以下错误。 错误: 问题答案: 这是MySQL 5.6中的一个已知错误,在此处记录。 根据对错误报告的答复,您可以手动创建丢失的表。缺少表的结构在此处作为附件提供。 遵循的步骤: 1)从MyS

  • 编辑问题以包括所需的行为、特定问题或错误以及重现问题所需的最短代码。这将帮助其他人回答问题。 我正在尝试将查询的输出写入CSV。字符串在那里(控制台输出显示“公司1、公司2、公司3”等——但创建的CSV是空的。

  • 我在netbeans中运行java Web应用程序时遇到问题。每次按run,我都会收到以下消息: 正在取消部署 ...undeploy?path=/test FAIL - 无法删除 [/var/lib/tomcat8/webapps/test]。此文件的继续存在可能会导致问题。In-place deployment at /var/lib/tomcat8/webapps/test/build/we

  • 我在本地数据库上运行了一个迁移,进行得很顺利。我正在为同一模式的另一个数据库使用另一个。yml文件,但失败并出现错误

  • 我正在使用一个H2数据库来测试我的Grails应用程序。我有一些简单的领域类,比如: 但是,表似乎没有正确创建。 它设置为在模式下使用临时内存中的H2数据库。

  • 想改进这个问题吗 通过编辑此帖子,添加详细信息并澄清问题。 这就是我实际导入firestore依赖项时发生的情况,我认为这一切都与连接有关,但这些错误一直在发生。请帮帮我 问题:任务“:app:mergeExtDexDebug”的执行失败 无法解析配置“:应用:调试运行时类路径”的所有文件。无法转换 firebase-storage-19.2.1.aar (com.google.firebase: