MySQL Utilities

园子看到使用MySQL对比数据库表结构,参考测试发现

[[email protected] uest]# mysqldiff --server1=dba:[email protected] --server2=dba:[email protected] --changes-for=server2 --show-reverse --difftype=sql test.test1:test.test2
bash: mysqldiff: command not found
[[email protected] uest]# 

搜索才知道mysqldiff工具是官方mysql-utilities工具集的一个脚本。mysqldiff用来比较对象的定义是否相同并显示不同的地方,mysqldiff 是通过对象名称来进行比较的。
系统环境紧接上一篇,因此需下载相应的rpm包

[[email protected] tools]# wget https://cdn.mysql.com//Downloads/MySQLGUITools/mysql-utilities-1.6.5-1.el6.noarch.rpm
[[email protected] tools]# rpm -ivh mysql-utilities-1.6.5-1.el6.noarch.rpm
warning: mysql-utilities-1.6.5-1.el6.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
    mysql-connector-python >= 2.0.0 is needed by mysql-utilities-1.6.5-1.el6.noarch
[[email protected] tools]#

需要依赖文件

[[email protected] tools]# wget https://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.5-1.el6.i686.rpm
[[email protected] tools]# rpm -ivh mysql-connector-python-2.1.5-1.el6.i686.rpm
warning: mysql-connector-python-2.1.5-1.el6.i686.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-connector-python ########################################### [100%]
[[email protected] tools]# rpm -ivh mysql-utilities-1.6.5-1.el6.noarch.rpm
warning: mysql-utilities-1.6.5-1.el6.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-utilities        ########################################### [100%]
[[email protected] tools]#

然后就可以执行mysqldiff命令了

[[email protected] tools]# mysqldiff --server1=dba:[email protected] --server2=dba:[email protected] --changes-for=server2 --skip-table-options --show-reverse --difftype=sql test.test1:test.test2
# WARNING: Using a password on the command line interface can be insecure.
# server1 on localhost: ... connected.
# server2 on localhost: ... connected.
# Comparing test.test1 to test.test2                               [FAIL]
# Transformation for --changes-for=server2:
#

ALTER TABLE `test`.`test2`
  DROP COLUMN D,
  ADD PRIMARY KEY(`id`),
  CHANGE COLUMN b b varchar(10) NULL,
  ADD COLUMN d int(11) NULL AFTER c,
  CHANGE COLUMN a a varchar(10) NOT NULL,
  CHANGE COLUMN c c varchar(10) NULL COMMENT ‘c‘;

#
# Transformation for reverse changes (--changes-for=server1):
#
# ALTER TABLE `test`.`test1`
#   DROP PRIMARY KEY,
#   DROP COLUMN d,
#   CHANGE COLUMN b b varchar(5) NULL,
#   ADD COLUMN D int(11) NULL AFTER c,
#   CHANGE COLUMN a a varchar(10) NULL,
#   CHANGE COLUMN c c varchar(10) NULL;
#

# Compare failed. One or more differences found.
[[email protected] tools]# 

MySQL Utilities 提供一组命令行工具用于维护和管理 MySQL 服务器,可参考官方手册,或者查阅MySQL Utilities教程

时间: 2024-10-27 00:22:33

MySQL Utilities的相关文章

MySQL管理工具MySQL Utilities — 介绍与安装(1)

MySQL Utilities介绍 MySQL Utilities 提供一组命令行工具用于维护和管理 MySQL 服务器,包括: 管理工具 (克隆.复制.比较.差异.导出.导入) 复制工具 (安装.配置) 一般工具 (磁盘使用情况.冗余索引.搜索元数据) MySQL Utilities是一系列的命令行工具以及Python库更容易完成管理的任务.库是用Python语言写的,这就意味着不需要安装其他任何工具和库.当前是基于Python2.6版本设计的,不支持Python3.1版本. MySQL Ut

MySQL Utilities管理工具

1.mysqlrplsync工具. 用来检查主从复制的数据一致性的工具. mysqlrplsync --master=check:pass@192.168.152.157:3310--slaves=check:pass@192.168.152.159:3311,check:pass@192.168.152.160:3312 2.mysqlfailover 工具. 用来监控复制状态并实现故障转移的高可用工具. mysqlfailover --master=failover:[email prote

Windows下MySQL多实例安装/主从复制/重置密码

Windows创建MySQL多实例 安装MYSQL和实例1 运行mysql-installer-community-5.7.16.0.msi 选择组件 MySQL Server 5.7.16 – X64 MySQL Utilities 1.6.4 – X64 MySQL Workbench 6.3.7 – X64 执行安装 配置端口3306 Windows Service Name设置为MYSQL 复制实例 将C:\ProgramData\MySQL\MySQL拷贝为MYSQL1和MYSQL2文

mysql & vs2013

一 mysql 版本介绍 在mysql的官网http://dev.mysql.com/上,mysql 大致分为两个版本,即免费的社区版(community)和 付费的商业版(commercial).其中商业版又可以细分,详细看官网介绍http://www.mysql.com/products/ community版下载地址:http://dev.mysql.com/downloads/mysql/ 目前出到5.7.5.7和5.6如果下载都是整套的下载,里面包括了以下两个工具及mysql util

MySQL的Auto-Failover功能

今天来体验一下MySQL的Auto-Failover功能,这里用到一个工具MySQL Utilities,它的功能很强大.此工具提供如下功能:(1)管理工具 (克隆.复制.比较.差异.导出.导入)(2)复制工具 (安装.配置)(3)一般工具 (磁盘使用情况.冗余索引.搜索元数据)而我们用它来实现Master-Slave的自动Failover,下面开始 Master:192.168.13.194Slave:192.168.13.159此Failover需要建立在GTID的基础上所以MySQL版本必

Installing MySQL Connector/Python using pip v1.5

The latest pip versions will fail on you when the packages it needs to install are not hosted on PyPI . When you try to install MySQL Connector/Python the usually way, you get following message is: shell> pip install mysql-connector-python Could not

MySQL Study之--Linux下安装MySQL workbench工具

MySQL Study之--Linux下安装MySQL workbench工具 系统环境:      操作系统: RedHat EL6.4(64)      WorkBench: mysql-workbench-community-6.0.9 MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具.它是著名的数据库设计工具DBDesigner4的继任者.你可以用MySQL Workbench设计和创建新的数据库图示,建立数据库文档,以及进行复杂的MySQL 迁移. MySQ

MySQL简介以及二进制程序方式安装

数据的组织结构 层次型 网状型 关系型 使用DBMS的优点 1,数据管理独立性: 2,有效的完成数据存取: 3,保证数据完整性和安全性: 4,数据的集中管理: 5,并发存储与故障恢复: 6,减少应用程序开发时间: 数据库管理系统(DBMS)设计的目标 为了解决: 1,数据的冗余和不一致: 2,数据访问困难: 3,数据孤立: 4,数据完整性问题: 5,数据原子性问题: 6,并发访问问题: 7,安全性问题: DBMS的组件 1,分析器: 2,计划执行器: 3,优化器: 4,文件的存取方法: 5,缓存

MySQL安装与基本配置

一.简介 SQL语言 DDL:表.视图.索引.触发器操作等.CREATE/ALTER/DROP语句 DML:数据操作.SELECT/INSERT/UPDATE/DELETE DCL:权限设置.GRANT/REVOKE 数据库访问 不同的语言使用不同的数据库访问技术 C#使用ADO.NET,JAVA使用JDBC等 版本 Community Edition:免费.自由下载,无技术支持 Enterprise:收费.不能下载,有技术支持 Alpha:开发阶段 Beta:开发完成,未测试 Gamma:已发