当使用Golang-migration工具时遇到“数据库版本2处于错误状态,修复并强制更新版本”的问题时,可以尝试以下解决方法

本文所要说明的内容

使用golang-migrate库进行数据库迁移时

error: Dirty database version 1. Fix and force version.

当遇到该错误时的处理方法

环境

    • golang 1.15

 

    MySQL

应对措施

使用迁移命令迁移数据

$ migrate -database 'mysql://root:golang@tcp(mysql:3306)/golang_db?charset=utf8&parseTime=true&loc=Asia%2FTokyo' -path migrations/ ${VERSION}

请将以下内容以中文为母语进行改述,只需提供一个选项:
– 指定数据库的URL,如下所示:database以降はDBのURLを指定。
– 通过指定路径来定位迁移文件的位置:pathでマイグレーションファイルの場所指定。
– 请使用数字指定出现错误的VERSION部分。

导致错误发生的原因

想要编辑表的结构,使用migrate down命令后,尝试编辑迁移文件并重新进行迁移,但发生了错误。

广告
将在 10 秒后关闭
bannerAds