goose – golang database migration tool

goose是一个golang的数据库迁移工具

安装

go get bitbucket.org/liamstask/goose/cmd/goose

创建目录

mkdir db

初始化dbconf

# vim db/dbconf.yml
development:
    driver: mymysql
    open: dbname/username/password
    import: github.com/ziutek/mymysql/godrv
    dialect: mysql

新增迁移脚本

goose create init sql

升级

goose up

降级

goose down

重做

goose redo

状态

goose status

SQL迁移

-- +goose Up
CREATE TABLE post (
    id int NOT NULL,
    title text,
    body text,
    PRIMARY KEY(id)
);

-- +goose Down
DROP TABLE post;

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

*

code