微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

mysql-schema-sync 配置运行自动定时运行参数说明 MySQL表结构同步工具

程序名称:mysql-schema-sync 配置运行自动定时运行参数说明

授权协议: MIT

操作系统: 跨平台

开发语言: Google Go

mysql-schema-sync 配置运行自动定时运行参数说明 介绍

MysqL-schema-sync 是一款使用go开发的、 跨平台的 、绿色 无依赖MysqL 表结构自动同步工具。
用于将线上(其他环境)数据库结构 变化 同步到测试(本地)环境!

可以解决多人开发,每人都使用独立数据库导致结构不一样的问题!

支持功能
1. 同步新表
2. 同步字段 变动:新增、修改
3. 同步索引 变动:新增、修改
4. 同步字段、索引 屏蔽变动更新
5. 支持预览(只对比不同步变动)
6. 邮件通知变动结果

配置

参考 配置文件 config.json 配置同步源、目的地址。
修改邮件接收人 当运行失败或者有表结构变化的时候你可以收到邮件通知

认情况不会对多出的 表、字段、索引 删除。若需要删除 字段、索引 可以使用-drop参数。

配置示例(config.json):

{
      //source:同步源
      "source":"test:test@(127.0.0.1:3306)/test_0",
      //dest:待同步的数据库
      "dest":"test:test@(127.0.0.1:3306)/test_1",
      //alter_ignore: 同步时忽略的字段和索引
      "alter_ignore":{
        "tb1*":{
            "column":["aaa","a*"],
            "index":["aa"]
        }
      },
      //  tables: table to check schema,default is all.eg :["order_*","goods"]
      "tables":[],
      //有变动或者失败时,邮件接收人
      "email":{
          "send_mail":false,
         "smtp_host":"smtp.163.com:25",
         "from":"[email protected]",
         "password":"xxx",
         "to":"[email protected]"
      }
}

source: 数据库同步源
dest: 待同步的数据库
tables: 数组,配置需要同步的表,为空则是不限制,eg: [“goods”,”order_”]
alter_ignore: 忽略修改的配置,表名为tableName,可以配置 column 和 index,支持通配

email : 同步完成后发送邮件通知信息

运行

#运行同步
MysqL-schema-sync -conf mydb_conf.json -sync

#预览并生成变更sql
MysqL-schema-sync -conf mydb_conf.json 2>/dev/null >db_alter.sql

自动定时运行

添加crontab 任务

30 * * cd /your/path/xxx/ && bash check.sh >/dev/null 2>&1

参数说明

MysqL-schema-sync [-conf] [-dest] [-source] [-sync] [-drop]

说明:

#MysqL-schema-sync -help  
  -conf string
        配置文件名称
  -dest string
        MysqL 同步源,eg test@(127.0.0.1:3306)/test_0
  -drop
        是否对本地多出的字段和索引进行删除 认否
  -source string
        待同步的数据库 eg: test@(10.10.0.1:3306)/test_1
        该项不为空时,忽略读入 -conf参数项
  -sync
        是否将修改同步到数据库中去,认否
  -tables string
        待检查同步的数据库表,为空则是全部
        eg : product_base,order_*

mysql-schema-sync 配置运行自动定时运行参数说明 官网

http://git.oschina.net/hidu/mysql-schema-sync

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐