MySQL 官方工具utilities介绍&出现 No module named utilities

mysql-utilities 是python编写 MySQL官方版的命令行工具集,涵盖主从校验,主从创建,主从切换等等html

安装

rpm安装 注意 尽可能不要经过yum来安装mysql-utilities,mysql-utilities 1.6.5和mysql-connector-python 8.0.12在一块儿有问题!python

mysql5.6
rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

卸载
yum -y remove mysql-community-release

mysql5.7
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
yum install  mysql-utilities.noarch

mysql5.7 yum源 还会安装依赖mysql-connector-python 8.0.12-1.el7 mysql

二进制安装sql

yum install mysql-connector-python
wget https://cdn.mysql.com/archives/mysql-utilities/mysql-utilities-1.6.5.tar.gz
tar -zxf mysql-utilities-1.6.5.tar.gz
cd mysql-utilities-1.6.5

python ./setup.py build
python ./setup.py install

经过tar.gz安装和yum安装mysql-utilities出现错误 数据库

可能模块没有在搜索路径中 服务器

export PYTHONPATH=$PYTHONPATH:/root/mysql-utilities-1.6.5/mysql/utilities/common/tools 试了也不行工具

安装mysql5.6 yum源以rpm形式安装的mysql-utilities不会报module找不到sqlserver

解决ui

卸载原mysql-connector-python8.0版本 
yum  -y remove  mysql-connector-python
并下载安装mysql-connector-python-2.1.7
rpm -Uvh https://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.7-1.el7.x86_64.rpm

mysqldbcompare --version
MySQL Utilities mysqldbcompare version 1.6.5 
License type: GPLv2

当时还在纠结为何安装mysql5.7 yum源在以yum安装mysql-utilities和以tar.gz形式来安装mysql-utilites 两种方式该有的/mysql/utilities/common和tools.py 下的check_python_version都有了,而安装mysql5.6 yum源不报错,查看 mysql-connector-python版本时才发现二者的版本不同,在MySQL中 mysql-co nnector-python 8.0.12-1.el7 高版本的不兼容低版本的,这是个坑-__-spa

mysqlreplicate

主从复制工具

mysqlreplicate --master=admin:admin@10.186.30.73:3307 \
          --slave=admin:admin@10.186.30.58:3307 --rpl-user=rpl:rpl

--pedantic选项来确保主和从复制成功,当且仅当两个服务器具备相同的存储引擎,相同的默认存储引擎和相同的InnoDB存储引擎

mysqlrplcheck

主从复制检测工具

mysqlrplcheck --master=admin:admin@10.186.30.73:3307 \
          --slave=admin:admin@10.186.30.58:3307 \
           --show-slave-status -vv

mysqlrplshow

主从复制拓扑图工具

mysqlrplshow --master=admin:admin@10.186.30.73:3307    \
	    --discover-slaves-login=admin:admin --verbose --recurse

mysqlrpladmin

主从复制管理工具

mysqlrpladmin --master=admin:admin@10.186.30.73:3307 \
          --slave=admin:admin@10.186.30.58:3307 Health

mysqlrpladmin --master=admin:admin@10.186.30.73:3307 \
          --slave=admin:admin@10.186.30.58:3307 gtid
          
mysqlrpladmin --master=admin:admin@10.186.30.73:3307 \
		 --slave=admin:admin@10.186.30.58:3307 reset

mysqlrpladmin -vv --master=admin:admin@10.186.30.73:3307 \
		 --slave=admin:admin@10.186.30.58:3307  \
		 --new-master=admin:admin@10.186.30.58:3307 --demote-master switchover

mysqlrpladmin -vv --slave=admin:admin@10.186.30.58:3307 failover

mysqlrpladmin 1.3.6对mysql5.7 会出现错误
# Checking privileges.
ERROR: Query failed. 1054 (42S22): Unknown column 'password' in 'field list'

mysqlfailover

主从切换工具

mysqlfailover --master=admin:admin@10.186.30.73:3307 --discover-slaves-login=admin --candidates=admin:admin@10.186.30.58:3307

mysqldbcompare

数据库库级别比较工具

mysqldbcompare --server1=admin:admin@10.186.30.73:3307 --server2=admin:admin@10.186.30.58:3307 --changes-for=server2 --difftype=sql --run-all-tests test

详细介绍

Binary Log Operations(二进制日志操做) 
        mysqlbinlogmove   二进制日志移动
        mysqlbinlogpurge  二进制日志清理
        mysqlbinlogrotate 二进制日志老化工具    

Database Operations(数据库操做)
        mysqldbexport     数据导出
        mysqldbimport     数据导入
        mysqldbcopy       库级别数据库复制
        mysqldiff         数据库对象级别比较工具
        mysqldbcompare    数据库库级别比较工具

General Operations(通用用的操做)     
        mysqldiskusage    磁盘空间查看
        mysqlfrm          恢复故障表.frm文件
        mysqluserclone    用户克隆工具
        mysqluc           Utilities帮助工具 
        mysqlindexcheck   索引检测工具
        mysqlmetagrep     元数据过滤器
        mysqlprocgrep     进程搜索及清理工具

High Availability Operations(高可用)
        mysqlreplicate   主从复制工具
        mysqlrpladmin    主从复制管理工具
        mysqlrplcheck    主从复制检测工具
        mysqlrplms       主从多元复制工具
        mysqlrplshow     主从复制拓扑图工具
        mysqlrplsync     主从复制同步工具
        mysqlfailover    主从failover工具
        mysqlslavetrx    从库事务跳过工具 

Server Operations(服务器操做)
        mysqlserverinfo    服务器信息查看工具
        mysqlserverclone   服务器克隆工具    

Specialized Operations(特殊操做)
        mysqlauditadmin    审计管理工具 
        mysqlauditgrep     审计日志过滤工具

参考:

https://dev.mysql.com/doc/workbench/en/wb-mysql-utilities.html

MySQL Utilities工具包概述及安装

Mysql Utilities

相关文章
相关标签/搜索