赞
踩
最近在整集成环境,环境是搭建好了,但是新环境的数据库表结构和测试环境的差异太大,导致服务各种报错,前几天都是哪个报错,就同步那张表,后面发现太多了;今天发现了一个工具mysql-schema-sync,真的太好用了。下面将介绍mysql-schema-sync+python+jenkins结合起来,定时同步表结构,再也不用担心因为表结构的问题了
1.服务器上安装工具mysql-schema-sync
1.安装go语言环境
- 下载安装包
- wget -c https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz
- 解压到/usr/local
- tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz
- 配置环境变量
- vi /etc/profile
- 在文件末尾添加
- export GOROOT=/usr/local/go
- export PATH=$PATH:$GOROOT/bin
- 生效环境变量
- source /etc/profile
- 验证
- go version
- go version go1.10.3 linux/amd64
- 安装成功
2.安装git
yum -y install git
3.安装mysql-schema-sync
go get -u github.com/hidu/mysql-schema-sync
执行命令会在当前目录生成一个go/文件夹
以我的安装目录为例 我下载在了/root 目录下 ,
mysql-schema-sync的命令在/root/go/bin/下
配置文件config.json 和 自动运行脚本check.sh 在目录/root/go/src/github.com/hidu/mysql-schema-sync下
配置文件
一定要注意新添加的参数 -tables_ignore string 如果默认值的话工具会跳过所有表的检测
解决办法可以写一个没有的表名 例如 -tables_ignore "x"
- {
- "source":"root:密码@(10.238.160.1:3306)/xiaodai",
- "dest":"root:密码@(10.238.16
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。