指尖上的记忆指尖上的记忆
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub

golang之迁移文件管理:

下载:https://github.com/golang-migrate/migrate  //主要包括cli[单独下载releases下的文件] 模式 和 引入包[go get github.com/golang-migrate/migrate/v4] 模式

安装:https://github.com/golang-migrate/migrate/releases

执行迁移[sslmode=enable 这个参数不要随便加,不然会报错]:
duo@k8s:/usr/local/go-project/src/duoxiaozhan-api$ migrate create -ext sql -dir ./migrations -seq create_users_table
duo@k8s:/usr/local/go-project/src/duoxiaozhan-api$ migrate create -ext sql -dir ./migrations -seq add_role_id_users
duo@k8s:/usr/local/go-project/src/duoxiaozhan-api$ migrate -database 'mysql://root:123456@tcp(127.0.0.1:3306)/duo?charset=utf8mb4&parseTime=true&loc=Local' -path ./migrations up [N]
1/u create_users_table (15.020662ms)
duo@k8s:/usr/local/go-project/src/duoxiaozhan-api$ migrate -database 'mysql://root:123456@tcp(127.0.0.1:3306)/duo?charset=utf8mb4&parseTime=true&loc=Local' -path ./migrations down [N]
2/d add_role_id_to_users (32.834926ms)

N: 是指定到的版本号,不指定就是全部

duo@k8s:/usr/local$ sudo dpkg -i ./migrate.linux-amd64.deb

duo@k8s:/usr/local$ migrate --help
Usage: migrate OPTIONS COMMAND [arg...]
       migrate [ -version | -help ]

Options:
  -source          Location of the migrations (driver://url)
  -path            Shorthand for -source=file://path
  -database        Run migrations against this database (driver://url)
  -prefetch N      Number of migrations to load in advance before executing (default 10)
  -lock-timeout N  Allow N seconds to acquire database lock (default 15)
  -verbose         Print verbose logging
  -version         Print version
  -help            Print usage
...
...