有没有什么可以在生产环境用的 mysql 表结构同步工具

2019 年 8 月 28 日
 rizon

开发期间表结构总会发生很多变化,导致和生成环境上的表结构不一致,手动维护表结构变化太麻烦了。 因此有什么工具可以查找出变化并生成修改 sql 吗?

8943 次点击
所在节点    MySQL
30 条回复
Posdelan
2019 年 8 月 28 日
novicat 表结构同步
glaucus
2019 年 8 月 28 日
同需求,蹲一个方案
qce7
2019 年 8 月 28 日
引入一个 sql migrate 组件
cydleadingx
2019 年 8 月 28 日
rizon
2019 年 8 月 28 日
@Posdelan #1 生产环境是隔离,本地的工具肯定不行
rizon
2019 年 8 月 28 日
@cydleadingx #4 这个似乎可以。我研究下

@glaucus #2
另外我还找到了一个: https://yq.aliyun.com/articles/626851?utm_content=m_1000013851
chendy
2019 年 8 月 28 日
liquibase,flayway …
嫌麻烦自己简单实现一个也行
rizon
2019 年 8 月 28 日
@cydleadingx #4 go 的怎么安装?生产环境没有 go,有什么好的办法安装吗?
rizon
2019 年 8 月 28 日
@chendy #7 嗯 这种成熟的方案似乎可以,liquibase,flayway 这两个哪个比较好用?
Maboroshii
2019 年 8 月 28 日
我也因为这个问题搞出过 bug,脑瓜疼
Fishdrowned
2019 年 8 月 28 日
把所有结构变化写入代码,让代码自己去维护数据库结构,不要人工操作。就是 3 楼说的 migrate
thet
2019 年 8 月 28 日
你需要 migration,表结构更改都走 migration。不想弄的话可以用 navicat 的表结构同步功能。
w292614191
2019 年 8 月 28 日
novicat 有数据同步、数据传输、结构同步
但是一点都不好用,各种错乱,主键约束等等。
几张表玩玩还是可以的。
ben1024
2019 年 8 月 28 日
用数据迁移 migration
Joyboo
2019 年 8 月 28 日
migrate 简单好用
340244120w
2019 年 8 月 28 日
把线上的结构导出来,然后在本地用 navicat 同步好,最后把 alert 语句复制出来 导到线上

至于说 navicat 不好使,那是因为自己偷懒用的默认选项呀 去掉几个编码啥的就好了
rizon
2019 年 8 月 28 日
@qce7 #3
@Joyboo #15
@ben1024 #14
@thet #12
sql migrate、migration 叫哪个名字啊?这名字太笼统不好搜啊,有个具体点的吗?
blodside
2019 年 8 月 28 日
我只知道 django 自带的 migration 挺好用的
msg7086
2019 年 8 月 28 日
SQL migration 是一类技术的统称。
netnr
2019 年 8 月 28 日

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/595811

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX