- 浏览: 7937058 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
在mysql 中,如果linux下,使用pager命令将大大提高工作效率,下面重点看几个例子:
1 首先看下基本用法
mysql> pager less
PAGER set to 'less'
mysql> show engine innodb status\G
这个时候就可以开始使用了less模式了,可以使用空格到下一页,quit退出;
甚至可以直接执行linux下的脚本,比如有个脚本在 /tmp/下的lock_waits.sh
则可以:
mysql> pager /tmp/lock_waits
PAGER set to '/tmp/lock_waits'
会执行/tmp/lock_waits的脚本
2 当要处理大量的数据集的时候,如果只想关心结果,可以这样:
mysql> pager cat > /dev/null
PAGER set to 'cat > /dev/null'
#比如执行一系列的冗长的执行计划语句 ,忽略中间过程输出,直接只显示耗时
mysql> SELECT ...
1000 rows in set (0.91 sec)
mysql> SELECT ...
1000 rows in set (1.63 sec)
3 又比如,如果你在进行SQL调优,有大量的结果产生
mysql> SELECT ...
[..]
989 rows in set (0.42 sec)
可以通过checksum去比较每次调整后的SQL语句所产生的结果是否是相同的
mysql> pager md5sum
PAGER set to 'md5sum'
# Original query
mysql> SELECT ...
32a1894d773c9b85172969c659175d2d -
1 row in set (0.40 sec)
# Rewritten query - wrong
mysql> SELECT ...
fdb94521558684afedc8148ca724f578 -
1 row in set (0.16 sec)
这里checksum不同,所以重写的SQL语句有问题
4 如果有大量的连接,用show processlist看会比较不大方便,比如要知道哪些当前的连接是睡眠或者死掉的,就不大方便,可以这样:
mysql> pager grep Sleep | wc -l
PAGER set to 'grep Sleep | wc -l'
mysql> show processlist;
337
346 rows in set (0.00 sec)
马上看到当前有多少连接sleep了;
进一步,要知道每一种状态的连接情况,可以这样:
mysql> pager awk -F '|' '{print $6}' | sort | uniq -c | sort -r
PAGER set to 'awk -F '|' '{print $6}' | sort | uniq -c | sort -r'
mysql> show processlist;
309 Sleep
3
2 Query
2 Binlog Dump
1 Command
当然,也可以用SQL查询的方式实现了:
mysql> SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND='Sleep';
SELECT COMMAND,COUNT(*) TOTAL FROM INFORMATION_SCHEMA.PROCESSLIST GROUP BY COMMAND ORDER BY TOTAL DESC;
1 首先看下基本用法
mysql> pager less
PAGER set to 'less'
mysql> show engine innodb status\G
这个时候就可以开始使用了less模式了,可以使用空格到下一页,quit退出;
甚至可以直接执行linux下的脚本,比如有个脚本在 /tmp/下的lock_waits.sh
则可以:
mysql> pager /tmp/lock_waits
PAGER set to '/tmp/lock_waits'
会执行/tmp/lock_waits的脚本
2 当要处理大量的数据集的时候,如果只想关心结果,可以这样:
mysql> pager cat > /dev/null
PAGER set to 'cat > /dev/null'
#比如执行一系列的冗长的执行计划语句 ,忽略中间过程输出,直接只显示耗时
mysql> SELECT ...
1000 rows in set (0.91 sec)
mysql> SELECT ...
1000 rows in set (1.63 sec)
3 又比如,如果你在进行SQL调优,有大量的结果产生
mysql> SELECT ...
[..]
989 rows in set (0.42 sec)
可以通过checksum去比较每次调整后的SQL语句所产生的结果是否是相同的
mysql> pager md5sum
PAGER set to 'md5sum'
# Original query
mysql> SELECT ...
32a1894d773c9b85172969c659175d2d -
1 row in set (0.40 sec)
# Rewritten query - wrong
mysql> SELECT ...
fdb94521558684afedc8148ca724f578 -
1 row in set (0.16 sec)
这里checksum不同,所以重写的SQL语句有问题
4 如果有大量的连接,用show processlist看会比较不大方便,比如要知道哪些当前的连接是睡眠或者死掉的,就不大方便,可以这样:
mysql> pager grep Sleep | wc -l
PAGER set to 'grep Sleep | wc -l'
mysql> show processlist;
337
346 rows in set (0.00 sec)
马上看到当前有多少连接sleep了;
进一步,要知道每一种状态的连接情况,可以这样:
mysql> pager awk -F '|' '{print $6}' | sort | uniq -c | sort -r
PAGER set to 'awk -F '|' '{print $6}' | sort | uniq -c | sort -r'
mysql> show processlist;
309 Sleep
3
2 Query
2 Binlog Dump
1 Command
当然,也可以用SQL查询的方式实现了:
mysql> SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND='Sleep';
SELECT COMMAND,COUNT(*) TOTAL FROM INFORMATION_SCHEMA.PROCESSLIST GROUP BY COMMAND ORDER BY TOTAL DESC;
发表评论
-
让 InnoDB 多任务运行
2018-09-06 16:06 782今天偶然看到的一招,记录下 如果服务器上的参数 innodb_ ... -
mysql中查询连接工作状态
2018-05-31 15:13 683#!/bin/bash while true do mysql ... -
MYSQL BACKUP的SHELL相关语句
2018-05-25 20:33 546#!/bin/bash ###############Basi ... -
MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法
2018-05-08 11:17 617MySQL开启bin-log后,调用存储过程或者函数以及触发器 ... -
NUMA的选择
2018-04-24 09:52 1403现在的机器上都是有 ... -
关于MYSQL 5.7线程池的好文收集
2018-03-27 10:57 1527来自腾讯工程师的好文: https://www.jianshu ... -
MYSQL 的审计日志插件
2017-11-30 10:19 1281MYSQL 的审计日志插件,可惜目前只是LINUX用: 来自M ... -
(转)MySQL InnoDB缓冲池配置详解
2017-10-09 16:55 4065一、InnoDB缓冲池 InnoDB维护一个称为缓冲池的内存 ... -
(转)MySQL 5.7默认SQL模式带来的问题总结
2017-10-05 18:46 1864http://www.ywnds.com/?p=8865 在 ... -
(转)MySQL 5.7默认ONLY_FULL_GROUP_BY语义介绍
2017-10-05 18:45 1186http://www.ywnds.com/?p=8184 ON ... -
MySQL 5.6 新功能之 Index Condition Pushdown (ICP)
2017-10-05 15:52 789http://www.cnblogs.com/zhoujiny ... -
mysql 5.7中的MBR和BKA算法
2017-10-03 15:11 1719一、什么是MRR MMR全称是Multi-Range Re ... -
(收藏)万字总结:学习MySQL优化原理,这一篇就够了!
2017-09-30 23:37 1188http://dbaplus.cn/news-155-1531 ... -
(转)MySQL中NULL和空值的区别
2017-09-23 15:57 2229MySQL中NULL和空值的区别 http://www.yw ... -
mysql 5.7中关于count(*)的优化
2017-09-20 19:15 2350在mysql 5.7中,对于select count(*) f ... -
MySQL 索引设计概要
2017-09-12 21:12 514<<MySQL 索引设计概要>>,不错 ... -
10分钟学会理解和解决MySQL乱码问题
2017-07-22 18:21 544http://cenalulu.github.io/mysql ... -
MySQL的or/in/union与索引优化
2017-07-22 08:29 952https://mp.weixin.qq.com/s/ZWez ... -
MYSQL中查看某个表或库的大小语句
2017-04-02 09:12 1956在information_schema.tables中有相关记 ... -
(收藏)MYSQL大表方案
2017-01-09 19:58 1435https://segmentfault.com/a/1190 ...
相关推荐
本文将对mysql的常用操作命令进行总结,包括连接mysql、查询版本信息、查询当前日期、查询服务器中的所有数据库、使用指定数据库、查询当前所操作的数据库名称、创建新数据库、删除数据库、创建表、显示数据库中的...
### MySQL数据库命令详解 #### 一、MySQL服务的管理 MySQL作为一款广泛使用的开源关系型数据库...以上是MySQL数据库中常见的命令操作,熟练掌握这些命令能够帮助数据库管理员或开发者更高效地管理和使用MySQL数据库。
- **问题2**:如果MySQL服务正在运行中但无法通过上述命令关闭,可以尝试直接杀死MySQL进程。可以通过命令`ps -ef | grep mysql`查看MySQL的进程ID,然后使用`kill -9 <PID>`强行终止MySQL进程。但是这种方法不推荐...
类似上一条命令,这条命令备份了`mysql`数据库中的`sva_rec`和`date_rec_drv`两个表的结构,不包括数据,备份文件存储在`e:\date_rec_drv.sql`路径下。 #### 二、MySQL数据导入命令:`mysql` `mysql`命令用于将...
Mysql 命令大全是 Mysql 数据库管理系统中的一些常用命令的汇总,涵盖了连接 Mysql、修改密码、增加新用户、操作数据库等多方面的内容。下面是对这些命令的详细说明: 一、连接 Mysql 连接 Mysql 的基本格式为:...
MySQL分页是数据库查询中一个重要的技术,尤其是在处理大量数据时,它可以帮助用户高效地浏览和检索信息。在Web开发中,例如在电子商务网站、论坛或社交媒体平台,分页是必不可少的功能,因为它允许用户逐步加载内容...
下面将详细介绍在MySQL中常用的命令。 1. **连接MySQL** - `mysql -h 主机地址 -u 用户名 -p 用户密码` - 连接到本地MySQL服务器时,只需输入`mysql -u root -p`,如果初始未设置密码,则直接回车即可。 - 连接...
本文将深入探讨MySQL的中文手册以及常用命令,帮助初学者和经验丰富的开发者更好地理解和操作MySQL。 首先,"MySQL中文手册.chm"是MySQL的中文版官方文档,它包含了MySQL的所有特性和功能的详细解释,是学习和查询...
都是基础自学的好的东西,LINUX全套、MYSQL、LINUX命令。 本资料共包含: Linux运维从入门到高级全套案例v3.pdf MySQL整理_王书彬-201508010.pdf 运维常用linux命令1.pdf
MySQL 命令行常用命令是 MySQL 数据库管理员和开发者需要掌握的基本技能,本文将介绍 MySQL 命令行常用命令的六大招数,包括 MySQL 服务的启动和停止、登陆 MySQL、增加新用户、操作数据库、导出和导入数据、乱码...
MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),它以其高效、稳定和易于学习的特点在Web开发领域占据了重要...在实际工作中,熟练运用MySQL命令和存储过程,能有效提升工作效率,确保数据的安全性和一致性。
Linux 服务安装 MySQL 命令详解 在 Linux 操作系统中,安装 MySQL 服务器是一个基本的任务,对新手来说可能有些困难。本文将详细介绍如何安装 MySQL 服务器,包括安装、设置开机启动、启动服务、设置 root 用户密码...
使用 mysql 命令可以导入 MySQL 数据库中的数据。例如,要导入 mydb.sql 文件中的数据到 mydb 数据库,可以使用以下命令:mysql -u root -p 123 mydb ; MySQL 命令大全提供了 MySQL 使用和管理的详细指南,涵盖了 ...
以上为MySQL中常用的命令及相关操作介绍,这些命令能够帮助用户有效地管理数据库和表。对于初学者来说,熟练掌握这些基础命令是十分重要的,它能够帮助他们在实际工作中更加高效地操作MySQL数据库。
下面将详细介绍一些基本的MySQL DOS命令以及SQL语句。 首先,MySQL的安装与配置是使用MySQL的第一步。在DOS环境下,可以通过执行`net start mysql`来启动MySQL服务,而`net stop mysql`则用于停止服务。确保MySQL...
mysql导入导出命令 source、mysql、 mysqldump
MYSQL中了, MYSQL的提示符是: mysql> 。 2、例 2:连接到远程主机上的 MYSQL 。假设远程主机的 IP 为:110.110.110.110 ,用户名为 root, 密码为 abcd123。则键入以下命令: mysql -h110.110.110.110 -uroot -...
MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其强大的功能和易用性使其在各种规模的应用中广泛应用。这里我们聚焦于"MySql经典命令大全",它涵盖了MySQL的基础操作到高级特性的命令,对于数据库管理员和...
使用以下命令可以查看 MySQL 中的数据库: `show databases;` 这将显示当前数据库列表,包括系统自建的数据库 mysql 和 test。 5. 创建和删除一个数据库 创建一个数据库可以使用以下命令: `create database ...