› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
lcq
V2EX  ›  MySQL

问个数据库管理问题

  •  
  •   lcq · Oct 27, 2020 · 4138 views
    This topic created in 2204 days ago, the information mentioned may be changed or developed.
    当前项目有两个数据库,一个开发数据库,一个线上数据,请问,就是新版本迭代时,开发数据库新增表或者修改了表字段,到时同步到线上数据库的时候,你们是怎么做协同的,方便维护这样
    THESDZ
    THESDZ
    Oct 27, 2020
    1
    1.开发使用的语言是否有 sql 管理的插件
    2.人肉管理,记录号版本号,和要执行的脚本列表,加入打版流程中
    xuanbg
    xuanbg
    Oct 27, 2020
    2
    执行 SQL 脚本啊
    justseemore
    justseemore
    Oct 27, 2020
    3
    新增表没啥问题。 改表要谨慎啊。
    teddy2725
    teddy2725
    Oct 27, 2020
    4
    migration sql
    fly9006
    fly9006
    Oct 27, 2020
    5
    开发数据库同步更改到生产数据库不合理吧,不应该两个环境独立开吗,开发数据库免不了各种不规范的修改
    xiangyuecn
    xiangyuecn
    Oct 27, 2020
    6
    人肉:

    1. 备份线上数据。
    2. 导出线上、测试表结构。
    3. beyond compare 将两个结构转换成人类肉眼可见的差异。
    4. 人类肉眼根据差异一个个把变更手动同步到线上。

    升级完成。如果失败:先删库再说。
    anonydmer
    anonydmer
    Oct 27, 2020
    7
    有不少 database migration 的方案和工具,搜索即可;基本的原理和思想是版本管理的思路,增量式管理数据库变更
    wangyzj
    wangyzj
    Oct 27, 2020
    8
    写成代码
    然后 code review 的时候注意影响程度再决定是否使用人肉执行某些部分
    qa2080639
    qa2080639
    Oct 27, 2020 via Android
    9
    navicat 比较结构
    yungo8
    yungo8
    Oct 27, 2020 via Android
    10
    难道不是 2 楼说的那样?
    wilsonWei
    wilsonWei
    Oct 27, 2020
    11
    将 sql 文件提交到项目中,并在项目中使用 migrate 中间件,项目运行的时候自动执行 sql 文件,这样可以确保两边的数据库环境完全一致
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4615 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 01:42 · PVG 09:42 · LAX 17:42 · JFK 20:42
    ♥ Do have faith in what you're doing.