And*_*ndy 9

一个经常未使用但更冗长的

显示完整的进程列表

很方便,但不如出色的非企业查询分析器- 像这样启用

    mysql> 设置分析=1;
    查询正常,0 行受影响(0.00 秒)

这两个是填充配置文件表的垃圾查询,

        
    mysql> select * from _test.customers;
    错误 1146 (42S02):表 '_test.customers' 不存在

    mysql> select * from test.customers limit 0;
    空集(0.00 秒)
    

获取所分析的所有查询及其持续时间的列表

        
    mysql> 显示配置文件;
    +------------+------------+------------------------ ------+
    | 查询_ID | 持续时间 | 查询 |
    +------------+------------+------------------------ ------+
    | 1 | 0.00013400 | select * from _test.customers |
    | 2 | 0.01546500 | select * from test.customers |
    +------------+------------+------------------------ ------+

上次查询的显示信息只是“显示个人资料” - 或者您可以指定查询

  
    mysql> 显示查询 2 的配置文件;
    +--------------+--------------+
    | 状态 | 持续时间 |
    +--------------+--------------+
    | 开始| 0.000053 |
    | 检查权限 | 0.000007 |
    | 开桌 | 0.000014 |
    | 系统锁 | 0.000006 |
    | 表锁| 0.000008 |
    | 初始化 | 0.000065 |
    | 优化 | 0.000003 |
    | 执行 | 0.000201 |
    | 结束 | 0.000003 |
    | 查询结束 | 0.000002 |
    | 释放物品| 0.000020 |
    | 日志慢查询| 0.000002 |
    | 清理 | 0.000004 |
    +--------------+--------------+
    13 行(0.00 秒)

您还可以请求特定信息,例如 CPU、BLOCK IO 和 SWAPS 等(均在手册页中

  
    mysql> 显示查询 2 的配置文件 CPU;
    +--------------+---------+---------+---- --------+
    | 状态 | 持续时间 | CPU_user | CPU_system |
    +--------------+---------+---------+---- --------+
    | 开始| 0.000056 | 0.001000 | 0.000000 |
    | 检查权限 | 0.000007 | 0.000000 | 0.000000 |
    | 开桌 | 0.000010 | 0.000000 | 0.000000 |
    | 系统锁 | 0.000005 | 0.000000 | 0.000000 |
    | 表锁| 0.000007 | 0.000000 | 0.000000 |
    | 初始化 | 0.000059 | 0.000000 | 0.000000 |
    | 优化 | 0.000003 | 0.000000 | 0.000000 |
    | 统计| 0.015022 | 0.000000 | 0.000000 |
    | 准备| 0.000014 | 0.001000 | 0.000000 |
    | 执行 | 0.000004 | 0.000000 | 0.000000 |
    | 发送数据 | 0.000245 | 0.000000 | 0.000000 |
    | 结束 | 0.000004 | 0.000000 | 0.000000 |
    | 查询结束 | 0.000002 | 0.000000 | 0.000000 |
    | 释放物品| 0.000021 | 0.000000 | 0.000000 |
    | 日志慢查询| 0.000002 | 0.000000 | 0.000000 |
    | 清理 | 0.000004 | 0.000000 | 0.000000 |
    +--------------+---------+---------+---- --------+
    16 行(0.00 秒)

之后不要忘记禁用它,因为日志记录会增加开销。

  
    mysql> 设置分析=0;
    查询正常,0 行受影响(0.00 秒)


Dan*_*ley 8

一些并不总是众所周知或记住的MySQL 命令

将结果集方向更改为垂直,以便于阅读和粘贴。

mysql> SELECT CURDATE(), CURTIME()\G
*************************** 1. row ***************************
CURDATE(): 2009-06-26
CURTIME(): 12:10:37
Run Code Online (Sandbox Code Playgroud)

取消您当前输入的查询,同时将其保留在历史记录中。

mysql> SELECT CURDATE(), CURTIME()\c
mysql>
Run Code Online (Sandbox Code Playgroud)

使用您最喜欢的 $EDITOR 编辑查询或上一个查询(分别)。

mysql> SELECT CURDATE(), CURTIME()\e
mysql> \e
Run Code Online (Sandbox Code Playgroud)

清除控制台的输出。

mysql> \! clear
Run Code Online (Sandbox Code Playgroud)

通过 MD5 哈希比较结果集。

mysql> pager md5sum -
PAGER set to 'md5sum -'
mysql> SELECT CURDATE(), CURTIME();
d24e22e4e2d33dfda9f01ba934b7676a  -
mysql> nopager
PAGER set to stdout
Run Code Online (Sandbox Code Playgroud)

改变你的提示。

mysql> prompt (\u@\h) [\d]>\_
PROMPT set to '(\u@\h) [\d]>\_'
(dan@localhost) [test]>
Run Code Online (Sandbox Code Playgroud)

搜索给定字符串的命令历史记录(如 Bash)。
开始输入搜索词并重复 ^R 以循环查看结果。

^R
(reverse-i-search)`DATE': SELECT CURDATE(), CURTIME();
Run Code Online (Sandbox Code Playgroud)


Bin*_*ony 3

我个人喜欢这个SHOW命令

您可以执行
SHOW PROCESSLIST- 查看所有正在运行的 mysql 连接
SHOW CREATE TABLE TableName- 查看用于创建表的 sql
SHOW CREATE PROCEDURE ProcedureName- 查看用于创建 SP 的 sql
SHOW VARIABLES- 查看所有系统变量

在这里获取完整列表