【MySQL 流浪之旅】第三讲 MySQL 基本工具

系列文章目录

【MySQL 流浪之旅】 第一讲 MySQL 安装
【MySQL 流浪之旅】 第二讲 MySQL 基础操作


目录

系列文章目录

前言

一、MySQL Utilities 功能及组件

二、mysqldbexport 数据导出

2.1. 参数选项 

三、mysqldbimport 数据导入

3.1. 参数选项

四、mysqldbcompare 数据库库级别比较


 

前言

今天主要介绍 MySQL Utilities 工具集。 

MySQL Utilities是一系列使用Python2.6实现的命令行工具,便于维护和管理MySQL服务器。该工具集提供了MySQL数据库运维工程中常用的一些工具,诸如克隆、复制、比较、导出、导入、安装、配置、索引、磁盘查看等功能。

 

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

下面我就对于我常用的几个组件与大家分享一下,其他不常用的也不熟悉,就不班门弄斧误导大家了。 

二、mysqldbexport 数据导出

mysqldbexport是一个能以特定的格式进行导出的备份工具,能从一个或多个数据库导出对象定义的元数据和数据。

导出格式:

  • sql(默认):以sql语句的方式输出。
  • Grid:网格化输出,类似于mysql命令行客户端输出。
  • Csv:逗号分隔符输出。
  • Tab:制表符格式输出。
  • Vertical:类似于mysql命令行客户端\G执行的输出。

--no-headers 关闭CSV或tab显示对象的格式头部
--quiet  关闭所有反馈信息
--file-per-table 每个表数据单独保存。每个文件的名称以数据库和表名称组成

---带表结构导出
mysqldbexport --server=user:user@192.168.0.11:3306:/tmp/sock/mysql.sock --format=sql test --display=full --export=definitions --skip-gtid -vv --locking=snapshot  --skip-fkey-checks  >  /tmp/output.sql
---导出数据,insert形式sql导出
mysqldbexport --server=user:user@192.168.0.11:3306:/tmp/sock/mysql.sock --format=sql test --display=full --export=data -vv --locking=snapshot  --skip-fkey-checks  >  /tmp/output.sql

2.1. 参数选项 

bd4c10b4bd744ea38e6e786b20fb008c.png5b54c1e38d2c44239a9ef8df2247073a.png

三、mysqldbimport 数据导入

mysqldbimport的功能是将通过mysqldbexport导出的数据导入到数据库中。

导入格式:

  • sql(默认):以sql语句的方式输出。
  • Grid:网格化输出,类似于mysql命令行客户端输出
  • Csv:逗号分隔符输出
  • Tab:制表符格式输出
  • Vertical:类似于mysql命令行客户端\G执行的输出

--no-headers  关闭CSV或tab显示对象的格式头部
--quiet  关闭所有的反馈信息
--new-storage-engine 指定新的存储引擎 

mysqldbimport导入:

---mysqldbimport导入
mysqldbimport --server=root:root@192.168.0.11:3306:/tmp/sock/mysql.sock --format=sql --skip-gtid -vv --import=both --drop-first /tmp/test.sql
---mysqldbimport批量导入
mysqldbimport --server=root:root@192.168.0.11:3306:/tmp/sock/mysql.sock --format=sql --skip-gtid -vv --import=both --bulk-insert --drop-first /tmp/test.sql

3.1. 参数选项

25218d0a9bfb4bbbbfd73bb90b103999.png1cfa0618254f4428a49210760880455c.png

四、mysqldbcompare 数据库库级别比较

mysqldbcompare工具可以用于比较两个数据库对象以及数据的不同。
检测内容:数据库定义、表、视图、触发器、存储过程、函数、时间、表的数据行数和表数据的一致性。

参数说明:

  • Grid 网格化输出,类似于MySQL命令行客户端输出
  • CSV  逗号分隔格式输出
  • Tab  制表符格式输出
  • Vertical 类似于MySQL客户端\G执行的输出

--changes-for={server_name} 输出差异修复内容
--format  控制差异修复内容输出格式

mysqldbcompare --server1=user:user@localhost:3306 --server2=user:user@localhost:3307 test1:test2 --changes-for=server1 --difftype=sql > test.sql

19646ed6f4e24260899143da9b0d7b7e.png

  • PASS 测试成功
  • FAIL 测试失败
  • SKIP 缺少或跳过测试
  • WARN 测试时出现不寻常的但不是错误
  • 测试不适用与该对象

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流浪字节π

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值