我正在尝试将Sonarqube从3.7.4升级到4.5.4
我已经更新了所有插件,新应用程序按预期启动。
然后我转到/ setup URL,系统会提示我启动数据库迁移。这失败并出现以下错误:
ActiveRecord::JDBCError: Table 'rule_tags' already exists:
我已经备份了我的v3.7.4数据库,当我恢复它时,我可以看到它已经包含一个名为rule_tags的表,它没有记录。使用恢复的备份和较旧的插件,v3.7.4再次启动就好了。
迁移代码正在尝试创建此表而不检查它是否已存在。
任何人都知道为什么会发生这种情况?我怀疑它与早期失败的迁移有关。
答案 0 :(得分:2)
表rule_tags在4.2版中创建。因此,如果在恢复mysql备份时它仍然存在,则意味着您只恢复了数据而不是结构。仔细检查您的命令行以恢复mysql架构。