MySQL SHOW命令

文章详细介绍了MySQL的SHOW命令,包括用于查看服务器状态、字符集、校对规则、警告和错误信息、线程、用户权限、二进制日志、存储引擎状态等多种用途。此外,还提到了SQL性能分析和数据库对象如表、列、索引的相关信息。
摘要由CSDN通过智能技术生成


SHOW命令介绍

MySQL SHOW命令主要用于显示数据库、表、列、用户、权限等的信息。这些信息被MySQL存储在数据库的表中,MySQL从内部表中提取这些信息。

- SHOW命令用法

  • SHOW命令结合LIKE关键字对结果进行过滤:表示对第一个字段进行过滤
  • SHOW命令结合WHERE关键字对结果进行过滤:用法和正常的SELETE语句等相同

常用SHOW命令汇总

常用命令汇总表

命令                    描述
show status显示服务器运行状态信息(如正在运行的线程数量)
show character set显示服务器支持的所有字符集
show collation显示服务器支持的所有校对规则
show warnings显示最后一个执行的语句的告警信息(包括:错误、警告和注意信息)
show errors显示最后一个执行的语句的错误信息
show processlist显示系统正在运行的所有线程信息
show grants [for user_name]显示用户权限
show privileges显示服务器支持的权限列表
show binary logs显示二进制列表信息
show master logs显示主库的二进制列表信息(单体数据库中与show binary logs相同)
show [global | session] variables显示全局(会话)系统变量信息,默认会话
show master status显示主服务器的状态信息
show slave status显示从服务器的状态信息
show slave hosts显示从服务器列表信息
show profiles显示最近15条SQL性能分析信息
show profile [参数1,参数2] for query [Query_ID]显示指定Query_ID的SQL性能分析详情
show engines显示服务器支持的存储引擎列表
show engine engine_name status显示存储引擎状态
show engine engine_name mutex显示存储引擎互斥参数
show databases显示所有数据库名称
show create database db_name显示数据库的构建语句
show tables [from db_name]显示数据库中所有表名称
show create table table_name显示表的构建语句
show table status [form db_name]显示数据库所有表的状态信息
show columns from table_name显示当前数据库的指定表的所有列信息
show columns from db_name.table_name
show columns from table_name from db_name
显示指定数据库的指定表的所有列信息
show fields from table_name显示当前数据库的指定表的所有列信息
show fields from db_name.table_name
show fields from table_name from db_name
显示指定数据库的指定表的所有列信息
show index from table_name显示当前数据库的指定表的所有索引信息
show index from db_name.table_name
show index from table_name from db_name
显示指定数据库的指定表的所有索引信息
show keys from table_name显示当前数据库的指定表的所有索引信息
show keys from db_name.table_name
show keys from table_name from db_name
显示指定数据库的指定表的所有索引信息
show open tables [from db_name]显示已经在表缓存中打开的非临时表信息
show triggers [from db_name]显示指定数据库中的所有触发器信息
show events [from db_name]显示指定数据库中的所有事件信息
show create trigger trig_name显示创建触发器语句
show create event event_name显示创建事件语句
show create function func_name显示创建函数语句
show create procedure proc_name显示创建存储函数语句
show create user user_name显示创建用户语句
show create view view_name显示创建视图语句

- 服务器运行状态信息

show status

在这里插入图片描述

- 支持的字符集信息

show character set

在这里插入图片描述

- 支持的校对规则信息

show collation

在这里插入图片描述

- 上一个执行语句的告警信息

explain select id from region where id = 9;

show warnings;

在这里插入图片描述
在这里插入图片描述
显示的信息包括:错误、告警、注意。

- 上一个执行语句的错误信息

explain select id from region where id = 9;

show errors;

在这里插入图片描述
在这里插入图片描述
与show warnings不同的是:show errors只显示错误信息。

- 服务器线程信息

  • 用户无process权限,只可以查看自己的线程信息
  • 用户有process权限,就可以查看所有的线程信息(包括密码)
  • full关键字显示所有info列的信息,不带关键字full时只显示前100字符。
show  processlist

在这里插入图片描述

- 用户权限信息

1. 查询所有用户信息

select * from mysql.user

在这里插入图片描述
2. 查询当前用户权限

show grants;show grants for current_user();show grants for current_user;

在这里插入图片描述

3. 查询指定用户权限

show grants for root;

在这里插入图片描述

- 支持的权限列表

show privileges

在这里插入图片描述

- 二进制日志文件列表

show binary logs

在这里插入图片描述

- 主库二进制日志文件列表

show master logs

在这里插入图片描述
show master logs和show binary logs相同。

- 系统变量信息

show variables与show session variables相同,默认查询会话级系统变量信息。

show variables;

show session variables;

show global variables;

在这里插入图片描述

- 主服务器状态信息

show master status

在这里插入图片描述

- 从服务器状态信息

show slave status

在这里插入图片描述

- 从服务器HOST列表

show slave hosts

在这里插入图片描述

- SQL性能分析

使用SQL性能分析需开启性能分析开关。

-- 查询会话性能分析开关是否开启
show variables like 'profiling';

-- 开启会话新能分析开关
set profiling=OFF;

1. 最近15条SQL性能分析信息

show profiles

在这里插入图片描述

  • Duration:耗时

2. 可以修改默认查询条数

set profiling_history_size = 100;

3. 指定Query_ID的SQL性能分析详情

格式:show profile [参数1,参数2] for query [Query_ID]

参数可选值:

  • ALL显示所有信息
  • BLOCK IO显示块输入和输出操作的计数
  • CONTEXT SWITCHES显示自愿和非自愿上下文切换的计数
  • CPU显示用户和系统 CPU 使用时间
  • IPC显示发送和接收的消息计数
  • MEMORY当前未实现
  • PAGE FAULTS显示主要和次要页面错误的计数
  • SOURCE显示源代码中的函数名称,以及发生函数的文件的名称和行号
  • SWAPS显示交换计数
show profile cpu,block io for query 1380;

在这里插入图片描述

- 支持的存储引擎列表

show engines

在这里插入图片描述

- 指定存储引擎状态

show engine InnoDB status

在这里插入图片描述

- 指定存储引擎互斥参数

show engine InnoDB mutex

在这里插入图片描述

- 数据库名称集合

show databases

在这里插入图片描述

- 数据库构建信息

show create database demo

在这里插入图片描述

- 数据库中表名称

-- 显示当前数据库中所有表名称
show tables

-- 显示指定数据库中所有表名称
show tables from demo

- 表的构建语句

show create table timed_task

在这里插入图片描述

- 数据库的所有表的状态信息

-- 当前数据库的所有表状态信息
show table status

-- 指定数据库的所有表状态信息
show table status from demo

在这里插入图片描述

- 表的所有列信息

-- 当前数据库指定表所有列信息
show columns from timed_task;

-- 指定数据库指定表所有列信息
show columns from demo.time_table;

-- 指定数据库指定表所有列信息
show columns from time_table from demo;



-- 当前数据库指定表所有列信息
show fields from timed_task;

-- 指定数据库指定表所有列信息
show fields from demo.time_table;

-- 指定数据库指定表所有列信息
show fields from time_table from demo;

在这里插入图片描述

- 指定表的所有索引信息

-- 当前数据库指定表所有索引信息
show index from article;

-- 指定数据库指定表所有索引信息
show index from demo.article;

-- 指定数据库指定表所有索引信息
show index from article from demo;



-- 当前数据库指定表所有索引信息
show keys from article;

-- 指定数据库指定表所有索引信息
show keys from demo.article;

-- 指定数据库指定表所有索引信息
show keys from article from demo;

在这里插入图片描述

- 已经在表缓存中打开的非临时表信息

-- 所有数据库中已经在表缓存中打开的非临时表信息
show open tables;

-- 指定数据库中已经在表缓存中打开的非临时表信息
show open tables from demo;

在这里插入图片描述

- 指定数据库的所有触发器信息

-- 当前数据库所有触发器信息
show triggers;

-- 指定数据库所有触发器信息
show triggers from demo;

在这里插入图片描述

- 指定数据库中的所有事件信息

-- 当前数据库所有事件信息
show events;

-- 指定数据库所有事件信息
show events from demo;

在这里插入图片描述

- 创建触发器语句

show create trigger trigger1

- 创建事件语句

show create event add_partition_every_month

在这里插入图片描述

- 创建函数语句

show create function currval

在这里插入图片描述

- 创建存储函数语句

show create procedure create_partition_by_month

在这里插入图片描述

- 创建用户语句

show create user root

在这里插入图片描述

- 创建视图语句

show create view article_view

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值