–add-drop-database 每个数据库创建之前添加drop数据库语句。mysqldump -uroot -p –all-databases –add-drop-database

–add-drop-table       每个数据表创建之前添加drop数据表语句。(默认为打开状态,使用--skip-add-drop-table取消选项)

--no-create-info       导出sql文件时使用该参数会跳过 create table 语句

--compact  优化输出内容的大小,让容量更少,适合调试。默认开启以下几个标红的参数,配合--no-create-info,则导出的只有INERT语句了。

  --compact           Give less verbose output (useful for debugging). Disables
structure comments and header/footer constructs. Enables
options --skip-add-drop-table --skip-add-locks
--skip-comments --skip-disable-keys --skip-set-charset.

mysqladmin  -uroot  -r -i 1   status/processlist/debug 

1. 使用-r/-i参数

使用mysqladmin extended-status命令可以获得所有MySQL性能指标,即show global status的输出,不过,因为多数这些指标都是累计值,如果想了解当前的状态,则需要进行一次差值计算,这就是mysqladmin extended-status的一个额外功能,非常实用。默认的,使用extended-status,看到也是累计值,但是,加上参数-r(--relative),就可以看到各个指标的差值,配合参数-i(--sleep)就可以指定刷新的频率,那么就有如下命令:

mysqladmin -uroot -r -i  -pxxx extended-status
+------------------------------------------+----------------------+
| Variable_name | Value |
+------------------------------------------+----------------------+
| Aborted_clients | |
| Com_select | |
| Com_insert | |
......
| Threads_created | |
+------------------------------------------+----------------------+

2. 配合grep使用

配合grep使用,我们就有:

mysqladmin -uroot -r -i  -pxxx extended-status \
|grep "Questions\|Queries\|Innodb_rows\|Com_select \|Com_insert \|Com_update \|Com_delete "
| Com_delete | |
| Com_delete_multi | |
| Com_insert | |
| Com_select | |
| Com_update | |
| Innodb_rows_deleted | |
| Innodb_rows_inserted | |
| Innodb_rows_read | |
| Innodb_rows_updated | |
| Queries | |
| Questions | |

3. 配合简单的awk使用

使用awk,同时输出时间信息:

mysqladmin -uroot -p -h127.0.0. -P3306 -r -i  ext |\
awk -F"|" '{\
if($ ~ /Variable_name/){\
print " <------------- " strftime("%H:%M:%S") " ------------->";\
}\
if($ ~ /Questions|Queries|Innodb_rows|Com_select |Com_insert |Com_update |Com_delete |Innodb_buffer_pool_read_requests/)\
print $ $;\
}'
<------------- :: ------------->
Com_delete
Com_insert
Com_select
Com_update
Innodb_buffer_pool_read_requests
Innodb_rows_deleted
Innodb_rows_inserted
Innodb_rows_read
Innodb_rows_updated
Queries
Questions
<------------- :: ------------->
Com_delete
Com_insert
Com_select
Com_update
Innodb_buffer_pool_read_requests
Innodb_rows_deleted
Innodb_rows_inserted
Innodb_rows_read
Innodb_rows_updated
Queries
Questions

4. 配合复杂一点的awk

反正也不简单了,那就更复杂一点,这样让输出结果更友好点,因为awk不支持动态变量,所以代码看起来比较复杂:

mysqladmin -P3306 -uroot -p -h127.0.0. -r -i  ext |\
awk -F"|" \
"BEGIN{ count=0; }"\
'{ if($2 ~ /Variable_name/ && ((++count)%20 == 1)){\
print "----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --";\
print "---Time---|---QPS---|select insert update delete| read inserted updated deleted| logical physical";\
}\
else if ($ ~ /Queries/){queries=$;}\
else if ($ ~ /Com_select /){com_select=$;}\
else if ($ ~ /Com_insert /){com_insert=$;}\
else if ($ ~ /Com_update /){com_update=$;}\
else if ($ ~ /Com_delete /){com_delete=$;}\
else if ($ ~ /Innodb_rows_read/){innodb_rows_read=$;}\
else if ($ ~ /Innodb_rows_deleted/){innodb_rows_deleted=$;}\
else if ($ ~ /Innodb_rows_inserted/){innodb_rows_inserted=$;}\
else if ($ ~ /Innodb_rows_updated/){innodb_rows_updated=$;}\
else if ($ ~ /Innodb_buffer_pool_read_requests/){innodb_lor=$;}\
else if ($ ~ /Innodb_buffer_pool_reads/){innodb_phr=$;}\
else if ($ ~ /Uptime / && count >= ){\
printf(" %s |%9d",strftime("%H:%M:%S"),queries);\
printf("|%6d %6d %6d %6d",com_select,com_insert,com_update,com_delete);\
printf("|%6d %8d %7d %7d",innodb_rows_read,innodb_rows_inserted,innodb_rows_updated,innodb_rows_deleted);\
printf("|%10d %11d\n",innodb_lor,innodb_phr);\
}}'
----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --
---Time---|---QPS---|select insert update delete| read inserted updated deleted| logical physical
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |
:: | | | |

mysqldump之不老将的更多相关文章

  1. MySQL自动化运维之用mysqldump和mysqlbinlog实现某一数据库的每周全备和每天差异备份,并添加到执行计划【热备】

    案例: 线上有一数据库,需要每周全备一次,每天差备一次[安全起见还是差备吧,不要增备,不要吝啬磁盘哦,而且差备恢复还很快] 1.每周对数据库hellodb做完全备份 crontab任务计划: * * ...

  2. mysqldump数据库同步遇到的问题

    1.同步数据是遇到 没有 lock database权限,报 " mysqldump: Got error: 1044: Access denied for user 'spider_dat ...

  3. mysqldump和xtrabackup备份原理实现说明

    背景: MySQL数据库备份分为逻辑备份和物理备份两大类,犹豫到底用那种备份方式的时候先了解下它们的差异: 逻辑备份的特点是:直接生成SQL语句,在恢复的时候执行备份的SQL语句实现数据库数据的重现. ...

  4. MySQL mysqldump数据导出详解

    介绍 在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具:它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有的参数详细说明 ...

  5. mysqldump的实现原理

    对于MySQL的备份,可分为以下两种: 1. 冷备 2. 热备 其中,冷备,顾名思义,就是将数据库关掉,利用操作系统命令拷贝数据库相关文件.而热备指的是在线热备,即在不关闭数据库的情况下,对数据库进行 ...

  6. MySQL备份命令mysqldump参数说明与示例

    1. 语法选项说明 -h, --host=name主机名 -P[ port_num], --port=port_num用于连接MySQL服务器的的TCP/IP端口号 --master-data这个选项 ...

  7. MySQL备份还原——mysqldump工具介绍

    mysqldump是一款MySQL逻辑备份的工具,他将数据库里面的对象(表)导出成SQL脚本文件.有点类似于SQL SEVER的"任务-生成脚本"的逻辑备份功能.mysqldump ...

  8. mysqldump: Error: Binlogging on server not active

    在学习使用mysqldump时,使用mysqldump备份时,遇到了下面两个错误: [root@DB-Server backup]# ./mysql_dump_back.sh Warning: Usi ...

  9. mysqldump:Couldn't execute 'show create table `tablename`': Table tablename' doesn't exist (1146)

    遇到了一个错误mysqldump: Couldn't execute 'show create table `CONCURRENCY_ERRORS`': Table INVOICE_OLD.CONCU ...

随机推荐

  1. <script>标签里的defer和async属性 区别(待补充)

    defer与async的区别(表格显示): table th:first-of-type { width: 150px; } table th:nth-of-type(2) { } 区别 defer ...

  2. PHP安全相关的配置(1)

    PHP作为一门强大的脚本语言被越来越多的web应用程序采用,不规范的php安全配置可能会带来敏感信息泄漏.SQL注射.远程包含等问题,规范的安全配置可保障最基本的安全环境.下面我们分析几个会引发安全问 ...

  3. 字符设备之register_chrdev与register_chrdev_region(转)

    之前写字符设备驱动,都是使用register_chrdev向内核注册驱动程序中构建的file_operations结构体,之后创建的设备文件,只要是主设备号相同(次设备号不同),则绑定的都是同一个fi ...

  4. VS2015 C#项目工程配置emgucv依赖的方法

    1.VS2015新建一个C# console工程 2.Tools->NuGet package management->manage NuGet package for solution- ...

  5. linux 信号处理 一 (基本概念)

    信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念.Linux对信号机制的大致实现方法.如何使用信号,以及有关信号的几个系统调用. 信号机制是进程之间相互传递消息的一种方法,信号全 ...

  6. WPF Demo9外部资源文件

    <Window x:Class="Demos.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/ ...

  7. Eclipse引入jar包的三种方式

    引用自 http://chenxu.wo.blog.163.com/blog/static/50239687201162310620634/ 使用Eclipse开发应用程序,少不了使用第三方jar包, ...

  8. 【比特币】SPV是如何工作的

    SPV是如何工作的 SPV, Bloom 过滤器和检查点 这是一篇技术文章,获取比特币的工作知识. 一个完整的节点,比如比特币核心,知道以下几点: 每一个当前正在围绕网络广播事务处理 每一个曾经被送到 ...

  9. ROS-RouterOS 的license注册级别

    原文: https://wiki.mikrotik.com/wiki/Manual:CHR#CHR_Licensing https://wiki.mikrotik.com/wiki/Manual:Li ...

  10. javascript的冻结对象之freeze(),isFrozen()方法

    最严格的对象保护措施就是冻结对象了.冻结过后的对象,即不可以扩展,原有对象也不可以删除,因为[Writable]=false,所以对象的属性不可修改. 示例一: var person={name:&q ...