V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Renco
V2EX  ›  程序员

有数据库建模和实际数据库同步的 数据库建模工具吗

  •  
  •   Renco · 2021-04-15 18:50:41 +08:00 · 1566 次点击
    这是一个创建于 1310 天前的主题,其中的信息可能已经有所发展或是发生改变。

    pdm 很好用,但是每次字段改动都要两边同步

    8 条回复    2021-04-16 09:29:31 +08:00
    raaaaaar
        1
    raaaaaar  
       2021-04-15 22:39:57 +08:00 via Android
    什么叫与实际数据库同步?意思是你服务器上的数据和本地建模时是一个数据吗?这个需求我没遇到过,不过感觉不太好呀,服务器上的数据怎么能这样建。。
    levelworm
        2
    levelworm  
       2021-04-16 01:29:18 +08:00 via Android
    同步生产端数据库和开发端数据库?感觉有点危险啊
    jeffwcx
        3
    jeffwcx  
       2021-04-16 02:15:38 +08:00
    你还是老老实实做 migration 吧
    levelworm
        4
    levelworm  
       2021-04-16 02:21:44 +08:00 via Android
    我倒觉得反过来是还可以的,就是生产端的变化实时反应到开发端。不过也就是每个 Sprint 开始做一次同步就够了。目前我们靠一点脚本搞定。
    iseki
        5
    iseki  
       2021-04-16 07:26:20 +08:00 via Android
    mysql workbench 好像可以直接挂接 db,但是感觉这个只适合和开发库同步?没测试过
    saulshao
        6
    saulshao  
       2021-04-16 08:31:32 +08:00
    理论上你也可以用 PDM 连生产库,然后直接把结构同步过去
    但是这么做非常危险,新增字段还好,直接填个缺省值就行,怕的是删除和修改操作,可能会导致复杂的问题。
    其实解决方案也蛮简单的,每次都用 PDM 生成 DDL 文件,把这些文件放到 git 里管理,剩下的步骤就和管理源代码一样了。
    只不过每次都需要人工比较差异,然后手工编写用来修改数据库的脚本。这个脚本还需要在测试环境先测试,再尝试应用到生产。
    参照 django 的 migration 的思路,理论上是可以解决的,问题就是似乎很少有人这么干。
    CallMeReznov
        7
    CallMeReznov  
       2021-04-16 08:46:50 +08:00
    django 有 orm 到库 库到 orm
    Renco
        8
    Renco  
    OP
       2021-04-16 09:29:31 +08:00
    明白了,感谢回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2876 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:56 · PVG 21:56 · LAX 05:56 · JFK 08:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.