在 MySQL 中,SHOW 命令是一个非常实用的工具,用于查询数据库元数据(如数据库、表、列、索引等信息)。以下是常见的 SHOW 命令及其用法:
1. 显示所有数据库
SHOW DATABASES;
- 列出服务器上的所有数据库。
2. 显示当前数据库中的所有表
SHOW TABLES;
- 列出当前选中数据库中的所有表。
3. 显示表的字段信息
SHOW COLUMNS FROM table_name;
-- 或者使用更简洁的方式:
SHOW FIELDS FROM table_name;
- 列出指定表的所有字段及其属性(字段名、类型、是否为空、键、默认值等)。
4. 显示表的创建语句
SHOW CREATE TABLE table_name;
- 返回创建表的完整 SQL 语句。
5. 显示视图的创建语句
SHOW CREATE VIEW view_name;
- 返回创建视图的完整 SQL 语句。
6. 显示当前数据库中的存储过程或函数
SHOW PROCEDURE STATUS;
SHOW FUNCTION STATUS;
- 列出所有的存储过程或函数。
7. 显示存储过程或函数的定义
SHOW CREATE PROCEDURE procedure_name;
SHOW CREATE FUNCTION function_name;
- 返回存储过程或函数的定义语句。
8. 显示当前用户权限
SHOW GRANTS FOR 'username'@'host';
- 显示指定用户的权限信息。
9. 显示当前数据库的状态
SHOW STATUS;
- 显示数据库运行状态的各种统计信息。
10. 显示当前会话的变量
SHOW VARIABLES;
- 显示系统配置变量的值。
11. 显示索引信息
SHOW INDEX FROM table_name;
- 显示指定表的所有索引信息。
12. 显示字符集和排序规则
SHOW CHARACTER SET;
SHOW COLLATION;
- 分别列出支持的字符集和排序规则。
13. 显示正在运行的线程
SHOW PROCESSLIST;
- 显示当前服务器上正在运行的所有线程(进程)。
14. 显示日志状态
SHOW BINLOG EVENTS;
SHOW MASTER STATUS;
SHOW SLAVE STATUS;
- 查看二进制日志事件、主从复制状态等。
15. 显示触发器信息
SHOW TRIGGERS;
- 列出当前数据库中的所有触发器。
注意事项
- 使用 SHOW 命令时,需要确保有相应的权限。
- 对于复杂的元数据查询,也可以使用 INFORMATION_SCHEMA 系统数据库。