登录
首页 >  Golang >  Go问答

如何使用make文件运行Golang迁移:数据库驱动错误-未知postgresql驱动程序

来源:stackoverflow

时间:2024-03-07 18:57:25 491浏览 收藏

Golang不知道大家是否熟悉?今天我将给大家介绍《如何使用make文件运行Golang迁移:数据库驱动错误-未知postgresql驱动程序》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!

问题内容

我正在尝试使用 golang-migrate 在我的 go-fibre rest api 中运行迁移。

我在 makefile 中添加了用于运行迁移的命令。但是,当我运行 make migrateup 时,出现以下错误:

migrate -path database/postgres/migrations -database "postgresql://postgres:postgres@localhost:5400/property?sslmode=disable" -verbose up
2022/11/10 18:00:17 error: database driver: unknown driver postgresql (forgotten import?)
make: *** [makefile:15: migrateup] error 1

这是我正在使用的 make 文件。

#### IMPORT ENV
include .env
DB_URL=postgresql://$(DB_USER):$(DB_PASSWORD)@$(DB_HOST):$(DB_PORT)/$(DB_NAME)?sslmode=disable

postgres:
    docker run --name postgres -p $(DB_PORT):5432 -e POSTGRES_USER=$(DB_USER) -e POSTGRES_PASSWORD=$(DB_PASSWORD) -d postgres:alpine

createdb:
    docker exec -it postgres createdb --username=$(DB_USER) --owner=$(DB_OWNER) $(DB_NAME)

dropdb:
    docker exec -it postgres dropdb --username=$(DB_USER) $(DB_NAME)

migrateup:
    migrate -path database/postgres/migrations -database "$(DB_URL)" -verbose up

migratedown:
    migrate -path database/postgres/migrations -database $(DB_URL) -verbose down

.PHONY: postgres createdb dropdb

请谁能帮我理解为什么这不起作用?


正确答案


您需要安装带有特殊标签的 golang-migrate 才能支持特定驱动程序。

命令行工具的文档中是这样写的:https://github.com/golang-migrate/migrate/tree/master/cmd/migrate#with-go-toolchain

本篇关于《如何使用make文件运行Golang迁移:数据库驱动错误-未知postgresql驱动程序》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>