MySQL Utilities工具包概述及安装

MySQL Utilities 是一组基于python语言编写的python库的命令行实用工具集,依赖于python 2.6。该工具提供了MySQL数据库运维工程中常用的一些工具,诸如克隆、复制、比较、差异、导出、导入、安装、配置、索引、磁盘查看等等。有了这个工具包,就好比那些个神医大夫,不管大病小病,先去搞个化验,搞个CT,你也可以当华佗。MySQL Utilities提供了各种平台的软件包,如果没有找到对应自己平台的包,可以通过源码进行编译安装。本文主要描述MySQL Utilities安装以及各个工作功能初步描述。

一、MySQL Utilities功能及组件

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     审计日志过滤工具

二、安装需求及下载地址

    需求
            Python 2.6
            MySQL Connector/Python 连接器
    下载地址:
            http://dev.mysql.com/downloads/utilities/

三、安装示例

###本次安装使用1.6.4版本,安装前,需要先安装mysql到python连接器
# cat /etc/redhat-release 
CentOS release 6.7 (Final)
# rpm -Uvh mysql-connector-python-2.1.4-1.el6.x86_64.rpm 
# rpm -Uvh mysql-utilities-1.6.4-1.el6.noarch.rpm 

###如果没有安装连接器,则收到如下错误提示
# rpm -Uvh mysql-utilities-1.6.4-1.el6.noarch.rpm 
warning: mysql-utilities-1.6.4-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.4-1.el6.noarch

###查看安装后生成的文件        
# rpm -ql mysql-utilities-1.6.4-1.el6|grep "/usr/bin"
/usr/bin/mysqlauditadmin
/usr/bin/mysqlauditgrep
/usr/bin/mysqlbinlogmove
/usr/bin/mysqlbinlogpurge
/usr/bin/mysqlbinlogrotate
/usr/bin/mysqldbcompare
/usr/bin/mysqldbcopy
/usr/bin/mysqldbexport
/usr/bin/mysqldbimport
/usr/bin/mysqldiff
/usr/bin/mysqldiskusage
/usr/bin/mysqlfailover
/usr/bin/mysqlfrm
/usr/bin/mysqlgrants
/usr/bin/mysqlindexcheck
/usr/bin/mysqlmetagrep
/usr/bin/mysqlprocgrep
/usr/bin/mysqlreplicate
/usr/bin/mysqlrpladmin
/usr/bin/mysqlrplcheck
/usr/bin/mysqlrplms
/usr/bin/mysqlrplshow
/usr/bin/mysqlrplsync
/usr/bin/mysqlserverclone
/usr/bin/mysqlserverinfo
/usr/bin/mysqlslavetrx
/usr/bin/mysqluc
/usr/bin/mysqluserclone    

四、获取帮助

1、通过mysqluc获取帮助
###可以通过调用mysqluc命令行工具来获取这些工具的帮助信息
### mysqluc提供一个自带的命令行提示符窗口,在这个窗口下也可以完成相应的命令操作

[root@node1 ~]# mysqluc
Launching console ...

Welcome to the MySQL Utilities Client (mysqluc) version 1.6.4
Copyright (c) 2010, 2016 Oracle and/or its affiliates. All rights reserved.
This is a release of dual licensed MySQL Utilities. For the avoidance of
doubt, this particular copy of the software is released
under the version 2 of the GNU General Public License.
MySQL Utilities is brought to you by Oracle.

Type 'help' for a list of commands or press TAB twice for list of utilities.

mysqluc> help
Command                 Description                                        
----------------------  ---------------------------------------------------
help utilities          Display list of all utilities supported.           
help <utility>          Display help for a specific utility.               
show errors             Display errors captured during the execution of the
                        utilities.                                         
clear errors            clear captured errors.                             
show last error         Display the last error captured during the         
                        execution of the utilities                         
help | help commands    Show this list.                                    
exit | quit             Exit the console.                                  
set <variable>=<value>  Store a variable for recall in commands.           
show options            Display list of options specified by the user on   
                        launch.                                            
show variables          Display list of variables.                         
<ENTER>                 Press ENTER to execute command.                    
<ESCAPE>                Press ESCAPE to clear the command entry.           
<DOWN>                  Press DOWN to retrieve the previous command.       
<UP>                    Press UP to retrieve the next command in history.  
<TAB>                   Press TAB for type completion of utility, option,  
                        or variable names.                                 
<TAB><TAB>              Press TAB twice for list of matching type          
                        completion (context sensitive).                    

###查看utilities包中所有的命令行工具
mysqluc> help utilities 

Utility            Description                                             
-----------------  --------------------------------------------------------
mysqlauditadmin    audit log maintenance utility                           
mysqlauditgrep     audit log search utility                                
mysqlbinlogmove    binary log relocate utility                             
mysqlbinlogpurge   purges unnecessary binary log files                     
mysqlbinlogrotate  rotates the active binary log file                      
mysqldbcompare     compare databases for consistency                       
mysqldbcopy        copy databases from one server to another               
mysqldbexport      export metadata and data from databases                 
mysqldbimport      import metadata and data from files                     
mysqldiff          compare object definitions among objects where the      
                   difference is how db1.obj1 differs from db2.obj2        
mysqldiskusage     show disk usage for databases                           
mysqlfailover      automatic replication health monitoring and failover    
mysqlfrm           show CREATE TABLE from .frm files                       
mysqlgrants        display grants per object                               
mysqlindexcheck    check for duplicate or redundant indexes                
mysqlmetagrep      search metadata                                         
mysqlprocgrep      search process information                              
mysqlreplicate     establish replication with a master                     
mysqlrpladmin      administration utility for MySQL replication            
mysqlrplcheck      check replication                                       
mysqlrplms         establish multi-source replication                      
mysqlrplshow       show slaves attached to a master                        
mysqlrplsync       replication synchronization checker utility             
mysqlserverclone   start another instance of a running server              
mysqlserverinfo    show server information                                 
mysqlslavetrx      skip transactions on slaves                             
mysqluserclone     clone a MySQL user account to one or more new users     

###也可直接在mysqluc提示符下输入 help command 来获取对应命令的帮助信息,如下
mysqluc> help mysqlauditadmin 
Usage: mysqlauditadmin --server=user:pass@host:port --show-options 
# Author : Leshami
# Blog   : http://blog.csdn.net/leshami
mysqlauditadmin - audit log maintenance utility 

Options:
Option                     Description                                     
-------------------------  ------------------------------------------------
--version                  show program's version number and exit          
--help                     display this help message and exit              
--license                  display program's license and exit              
--server=SERVER            connection information for the server in the    
                           form:                                           
                           <user>[:<password>]@<host>[:<port>][:<socket>]  
                           or <login-path>[:<port>][:<socket>] or <config- 
                           path>[<[group]>].                               
--audit-log-name=LOG_NAME  full path and file name for the audit log file. 
                           Used for stats and copy options.                
--show-options             display the audit log system variables.         
--remote-login=RLOGIN      user name and host to be used for remote login  
                           for copying log files. Format:                  
                           <user>:<host_or_ip> Password will be prompted.  
--file-stats               display the audit log file statistics.          
--copy-to=COPY_LOCATION    the location to copy the audit log file         
                           specified. The path must be locally accessible  
                           for the current user.                           
--value=VALUE              value used to set variables based on the command
                           specified. See --help for list per command.     
--ssl-ca=SSL_CA            path to a file that contains a list of trusted  
                           SSL CAs.                                        
--ssl-cert=SSL_CERT        name of the SSL certificate file to use for     
                           establishing a secure connection.               
--ssl-key=SSL_KEY          name of the SSL key file to use for establishing
                           a secure connection.                            
--ssl=SSL                  specifies if the server connection requires use 
                           of SSL. If an encrypted connection cannot be    
                           established, the connection attempt fails. By   
                           default 0 (SSL not required).                   
-v, --verbose              control how much information is displayed. e.g.,
                           -v = verbose, -vv = more verbose, -vvv = debug  
                           Available Commands: copy - copy the audit log to
                           a locally accessible path policy - set the audit
                           log policy Values = ALL, NONE, LOGINS, QUERIES, 
                           DEFAULT rotate - perform audit log rotation     
                           rotate_on_size - set the rotate log size limit  
                           for auto rotation Values = 0, 4294967295    

2、直接在shell提示符下获取命令帮助
###如下示例
[root@node1 ~]# mysqlfailover --help|head
MySQL Utilities mysqlfailover version 1.6.4 
License type: GPLv2
Usage: mysqlfailover --master=root@localhost --discover-slaves-login=root 
                --candidates=root@host123:3306,root@host456:3306 

mysqlfailover - automatic replication health monitoring and failover

Options:
  --version             show program's version number and exit
  --help                display this help message and exit
  --license             display program's license and exit 

3、基于Linux man获取命令帮助
###如下示例
root@node1 ~]# man mysqlfailover
MYSQLFAILOVER(1)                MySQL Utilities               MYSQLFAILOVER(1)

NAME
       mysqlfailover - Automatic replication master failover

SYNOPSIS
       mysqlfailover [options]

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏邹立巍的专栏

Linux 的进程间通信:文件和文件锁

我们首先引入文件进行 IPC ,试图先使用文件进行通信引入一个竞争条件的概念,然后使用文件锁解决这个问题,从而先从文件的角度来管中窥豹的看一下后续相关 IPC ...

9540
来自专栏漏斗社区

少年,这是我特意为你酿制的Oracle 注入,干了吧!

最近遇到Oracle注入的测试越来越多,而且互联网上oracle注入的总结较为少见,为了能够快速的进行漏洞测试和挖掘,诞生了想要把之前学习的Oracle注入方式...

40110
来自专栏Java帮帮-微信公众号-技术文章全总结

solr使用教程【面试+工作】

solr使用教程一【面试+工作】 Solr调研总结 开发类型全文检索相关开发 Solr版本4.2文件内容本文介绍solr的功能使用及相关注意事项;主要包括以下内...

4.8K6
来自专栏Python中文社区

进击的爬虫:用Python搭建匿名代理池

專 欄 ❈ 苍冥,Python中文社区专栏作者,澳洲华裔,目前在墨尔本某国际咨询公司任职Splunk Developer,擅长网络安全及攻防,热爱Python...

3605
来自专栏FreeBuf

看你是否够老 – ipman的vxd程序介绍的翻译

不知到现在hack小将们还有多少知道ipman这个东西,当时2000年左右在学校的内网大家玩的不亦乐乎。 年龄大了就开始怀旧,在我尝试了n种搜索方法之后,终于找...

24110
来自专栏程序员的SOD蜜

EF+MySQL乐观锁控制电商并发下单扣减库存,在高并发下的问题

下订单减库存的方式 现在,连农村的大姐都会用手机上淘宝购物了,相信电商对大家已经非常熟悉了,如果熟悉电商开发的同学,就知道在买家下单购买商品的时候,是需要扣减库...

6838
来自专栏钱曙光的专栏

MySQL 8 新特性介绍

广受欢迎的开源数据库MySQL 8中,包括了众多新特性,其中包括对Unicode更好的支持、对JSON格式和文档的处理,以及一直以来呼吁增加的象window函数...

5450
来自专栏我叫刘半仙

原分布式系统架构实战demo:SSM+Dubbo

        对于传统的单一构架,也就是打成的war或者ear包部署在同一个Web容器里的构架,它虽然开发、测试、部署简单,但随着业务的不断发展,维护成本增加...

1.4K7
来自专栏晨星先生的自留地

面试中遇到的坑之mysql注入入门

2374
来自专栏乐沙弥的世界

MongoDB执行计划获取(db.collection.explain())

1373

扫码关注云+社区

领取腾讯云代金券