Heim > Datenbank > MySQL-Tutorial > Hauptteil

mysqldiff对比主从表结构是否一致

WBOY
Freigeben: 2016-06-07 14:56:01
Original
1167 Leute haben es durchsucht

mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以实现主从服务器表结构是否一致。数据校验需要使用Percona的pt-table-checksum工具。 安装: #tarzxvfmysql-utilities-1.5.4.tar.gz#cdmysql-utilities-1.5.4#pythonsetup.pyinstall 使用方法: m

mysqldiff该工具是官方mysql-utilities工具集的一个脚本,可以实现主从服务器表结构是否一致。数据校验需要使用Percona的pt-table-checksum工具。


安装:

# tar zxvf mysql-utilities-1.5.4.tar.gz
# cd mysql-utilities-1.5.4
# python setup.py install
Nach dem Login kopieren


使用方法:

mysqldiff --server1=admin:123456@192.168.79.10 --server2=admin:123456@192.168.79.11 
--difftype=differ test:test
# WARNING: Using a password on the command line interface can be insecure.
# server1 on 192.168.79.10: ... connected.
# server2 on 192.168.79.11: ... connected.
# Comparing `test` to `test`                                       [PASS]
# Comparing `test`.`t1` to `test`.`t1`                             [FAIL]
# Object definitions differ. (--changes-for=server1)
#
  CREATE TABLE `t1` (
    `id` int(11) DEFAULT NULL,
-   `name` char(4) DEFAULT NULL
?               ^
+   `name` char(16) DEFAULT NULL
?               ^^
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8
Compare failed. One or more differences found.
Nach dem Login kopieren

很直观的找出不一样的地方。


如果你想打印出修改表结构的语句,如下:

# mysqldiff --server1=admin:123456@192.168.79.10 --server2=admin:123456@192.168.79.11 
--difftype=sql test:test
# WARNING: Using a password on the command line interface can be insecure.
# server1 on 192.168.79.10: ... connected.
# server2 on 192.168.79.11: ... connected.
# Comparing `test` to `test`                                       [PASS]
# Comparing `test`.`t1` to `test`.`t1`                             [FAIL]
# Transformation for --changes-for=server1:
#
ALTER TABLE `test`.`t1` 
  CHANGE COLUMN name name char(16) NULL;
Compare failed. One or more differences found.
Nach dem Login kopieren



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage