欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL Utilities工具包概述及安装

程序员文章站 2022-03-05 13:04:57
...

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://www.php.cn/

三、安装示例

###本次安装使用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 ~]# mysqlucLaunching console ...

Welcome to the MySQL Utilities Client (mysqluc) version 1.6.4Copyright (c) 2010, 2016 Oracle and/or its affiliates. All rights reserved.
This is a release of dual licensed MySQL Utilities. For the avoidance ofdoubt, 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://www.php.cn/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|headMySQL 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 mysqlfailoverMYSQLFAILOVER(1)                MySQL Utilities               MYSQLFAILOVER(1)
NAME
       mysqlfailover - Automatic replication master failover
SYNOPSIS
       mysqlfailover [options]