mysql show 命令
- 格式:doc
- 大小:68.50 KB
- 文档页数:11
mysql show create table原理
SHOW CREATE TABLE 是MySQL 中的一个SQL 语句,它用于显示一个表的创建语句。
这个命令可以让你看到如何使用CREATE TABLE 语句来重新创建该表。
当你执行SHOW CREATE TABLE table_name; 时,MySQL 会做以下几件事情:
1. 查找表结构信息:MySQL 会从系统表或信息模式表中检索与指定表相关的元数据信息,如列定义、约束、索引等。
2. **构建CREATE TABLE 语句**:基于从系统表中检索到的信息,MySQL 会构建一个完整的CREATE TABLE 语句,该语句可以用来重新创建该表。
3. 返回结果:然后,它将该CREATE TABLE 语句作为查询结果返回。
值得注意的是,使用SHOW CREATE TABLE 可以提供对表的精确描述,包括列的数据类型、默认值、键和其他属性。
这对于备份、迁移或比较两个表的结构非常有用。
需要注意的是,SHOW CREATE TABLE 返回的SQL 语句不包括表的行数据,只包含表的结构定义。
mysql:showprocesslist详解最近排查⼀些MySQL的问题,会经常⽤到 show processlist,所以在这⾥把这个命令总结⼀下,做个备忘,以备不时只需。
⾸先是⼏条常⽤的SQL。
1、按客户端 IP 分组,看哪个客户端的链接数最多select client_ip,count(client_ip) as client_num from (select substring_index(host,':' ,1) as client_ip from information_schema.processlist ) as connect_info group by client_ip order by client_num desc;2、查看正在执⾏的线程,并按 Time 倒排序,看看有没有执⾏时间特别长的线程select * from information_schema.processlist where Command != 'Sleep' order by Time desc; 3、找出所有执⾏时间超过 5 分钟的线程,拼凑出 kill 语句,⽅便后⾯查杀(此处 5分钟可根据⾃⼰的需要调整SQL标红处)可复制查询结果到控制台,直接执⾏,杀死堵塞进程select concat('kill ', id, ';') from information_schema.processlist where Command != 'Sleep' and Time > 300 order by Time desc;4、查询线程及相关信息show full processlistID 为此线程ID,Time为线程运⾏时间,Info为此线程SQL5、⼀堆不怎么看得解释show processlist 是显⽰⽤户正在运⾏的线程,需要注意的是,除了 root ⽤户能看到所有正在运⾏的线程外,其他⽤户都只能看到⾃⼰正在运⾏的线程,看不到其它⽤户正在运⾏的线程。
MySQL 查看服务器状态、数据库、表的命令show databases;上⾯这条命令的作⽤是查看所有的数据库。
效果等同于下⾯这条命令:use information_schema;select schema_name from schemata;以纵向报表的形式输出结果,有利于阅读。
图中的四个数据库是 MySQL 安装成功以后⾃带的。
通常使⽤以下这条命令,来查看当前 MySQL 服务器的运⾏状态:show status;加上 LIKE 关键字可以模糊筛选出你需要的属性值。
★ 例如,查看 MySQL 服务器的正常运⾏时间:show status like '%uptime%'如上图所⽰,表⽰⾃ MySQL 服务器启动以来,已正常运⾏ 56779735 秒,共计 657 多天了。
★ 再例如,查看 MySQL 慢 SQL 的数量:show status like '%slow%'如上图所⽰,Sql_queries 表⽰慢 SQL 查询的数量。
即使没有开启慢 SQL ⽇志功能,该属性值也会照常计数。
★ 再⽐如,查看 MySQL 的表锁/⾏锁信息:show status like '%lock%';1.查看数据库2.查看MySQL 服务器状态如图所⽰,前缀为 Innodb_row_lock 的表⽰⾏锁,前缀为 Table_locks_ 表⽰表锁。
更多状态值,请移步 MySQL 5.7 官⽅⽂档之服务器状态变量 ,进⾏查看。
use 数据库名称;使⽤这条语句之后,相当于声明了接下来的 SQL 语句的默认缺省数据库。
就不需要每条语句都带上表所在的数据库名称了。
例如 use information_schema ,当使⽤此命令后select schema_name from information_schema.schemata;可以简写为select schema_name from schemata;show tables from 数据库名称;例如,查看数据库 information_schema 中所有的表:show tables from information_schema;也可以写作use information_schema;show tables;如上图所⽰,这仅仅截取展⽰了⼀部分的表。
show databases; 显示数据库create database name; 创建数据库use databasename; 选择数据库drop database name 直接删除数据库,不提醒show tables; 显示表describe tablename; 显示具体的表结构select 中加上distinct去除重复字段mysqladmin drop databasename 删除数据库前,有提示。
显示当前mysql版本和当前日期select version(),current_date;修改mysql中root的密码:shell>mysql -h localhost -u root -p //登录mysql> update user set password=password("xueok654123") where user='root';mysql> flush privileges //刷新数据库mysql>use dbname; 打开数据库:mysql>show databases; 显示所有数据库mysql>show tables; 显示数据库mysql中所有的表:先use mysql;然后mysql>describe user; 显示表mysql数据库中user表的列信息);grant创建用户firstdb(密码firstdb)和数据库,并赋予权限于firstdb数据库mysql> create database firstdb;mysql> grant all on firstdb.* to firstdb identified by 'firstdb'会自动创建用户firstdbmysql默认的是本地主机是localhost,对应的IP地址就是127.0.0.1,所以你用你的IP 地址登录会出错,如果你想用你的IP地址登录就要先进行授权用grant命令。
查询mysql 表结构的方法【查询MySQL表结构的方法】在MySQL数据库中,表是数据存储的主要方式。
为了了解表的结构,可以通过多种方法进行查询。
以下是几种常用的查询MySQL表结构的方法。
方法一:使用DESC命令查询表结构DESC命令是MySQL自带的一个用于查询表结构的命令。
在MySQL客户端或者命令行中,输入以下命令:DESC table_name;请将"table_name"替换为要查询结构的表名。
执行后,DESC命令会列出该表的各个字段的详细信息,包括字段名、数据类型、键类型、是否为空、默认值以及其他属性。
方法二:使用SHOW命令查询表结构SHOW命令同样可以用于查询表结构。
在MySQL客户端或者命令行中,输入以下命令:SHOW COLUMNS FROM table_name;同样,请将"table_name"替换为要查询结构的表名。
执行后,SHOW命令会显示出该表的各个字段的详细信息,包括字段名、数据类型、键类型、是否为空、默认值以及其他属性。
方法三:使用INFORMATION_SCHEMA查询表结构MySQL的INFORMATION_SCHEMA是一个包含数据库元数据的系统数据库。
可以通过查询该数据库来获取表结构信息。
以下是一个示例查询:SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULTFROM INFORMATION_SCHEMA.COLUMNSWHERE table_schema = 'your_database' AND table_name ='your_table';请将"your_database"和"your_table"替换为要查询结构的数据库名和表名。
执行该查询语句后,将会返回表的各个字段的信息,包括字段名、数据类型、是否为空以及默认值。
mysql查看数据库、表的基本命令1:show databases;查看所有的数据库,等同于select schema_name from information_schema.schemata\G。
\G 替换;,以纵向报表的形式输出结果,有利于阅读。
2. status 查看mysql数据库的运⾏状态3. use 命令选择数据库例如 use information_schema,当使⽤此命令后select schema_name from information_schema.schemata\G,可以为select schema_name from schemata\G4. 查看数据库中的表show tables同样也可以在information_schema中查看,show命令是⽅便使⽤的简短模式。
select table_name from tables where table_schema='jblog';5. 查看表结构desc table_name;6.查看表状态 show table status from db like 条件可以查看engine数据库引擎,version,row、index等信息7.⼩技巧,当多⾏命令输⼊,发现错误后,⽤\c结束。
赋予⽤户某表所有权限grant all on clyg_tmc_hotel_thd_qiantao to 'root'@'%';-------------------------------------------------------------另,查询数据库运⾏状态的基本命令:#查询数据库连接show full processlist;show status like'%Max_used_connections%';show status like'%Threads_connected%';#当前连接数show status like'%table_lock%';#表锁定show status like'innodb_row_lock%';#⾏锁定show status like'%qcache%'; #查询缓存情况show variables like"%query_cache%";SHOW STATUS LIKE'Qcache%';show variables like"%binlog%";show status like'Aborted_clients';#由于客户没有正确关闭连接已经死掉,已经放弃的连接数量show variables like'%max_connections%';//查看最⼤连接数量show variables like'%timeout%';#查看超时时间show variables like'log_%'; #查看⽇志是否启动。
MySQL中show语法使⽤总结在 mysql 中执⾏系统命令如何在mysql的命令⾏界⾯操作底层系统呢?只需要在mysql命令⾏界⾯使⽤system + linux命令即可。
命令,如:mysql> system pwd/root/softmysql> system ls;ip-3.1.2MySQL中 show 语法的使⽤:先查看MySQL版本信息:mysql> select version();+------------+| version() |+------------+| 5.6.16-log |+------------+1 row in set (0.00 sec)帮助查看:mysql> help showmysql> help SHOW TABLE;mysql> help SHOW WARNINGS1.显⽰mysql中所有数据库的名称.mysql>show databases;2.显⽰当前数据库中所有表的名称mysql>show tables;或mysql>show tables from database_name;3.显⽰表中列名称mysql>show columns from database_name.table_name;4.查看某MySQL⽤户的使⽤权限mysql>show grants for user_name;5.显⽰create database 语句是否能够创建指定的数据库,并可以查看到创建库语句的SQL信息。
mysql>show create database database_name;6.显⽰create table 语句是否能够创建指定的数据表,并可以查看到表创建语句的SQL信息。
mysql>show create table table_name;7.显⽰安装以后可⽤的存储引擎和默认引擎。
(笔记)Mysql命令showdatabases:显⽰所有数据库
show databases命令⽤于显⽰所有数据库。
show databases命令格式:show databases; (注意:最后有个s)
例如:mysql> show databases;
注意:为了不在显⽰的时候乱码,要修改数据库默认编码。
以下以GBK编码页⾯为例进⾏说明。
1) 修改MYSQL的配置⽂件:my.ini⾥⾯修改default-character-set=gbk
2) 代码运⾏时修改:
Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
PHP代码:header("Content-Type:text/html;charset=gb2312");
C语⾔代码:int mysql_set_character_set( MYSQL * mysql, char * csname);
该函数⽤于为当前连接设置默认的字符集。
字符串csname指定了1个有效的字符集名称。
连接校对成为字符集的默认校对。
该函数的⼯作⽅式与SET NAMES语句类似,但它还能设置mysql- > charset的值,从⽽影响了由mysql_real_escape_string() 设置的字符集。
mysql导出表结构说明MySQL是一种广泛使用的关系型数据库管理系统,可以用于存储和管理大量的数据。
在使用MySQL时,我们经常需要导出表的结构说明,方便对表的结构进行分析和理解。
本文将介绍如何使用MySQL导出表结构说明。
一、使用SHOW语句导出表结构MySQL提供了SHOW语句来查看数据库中的表结构。
通过使用SHOW语句,我们可以获取表的字段名、数据类型、约束条件等信息。
以下是使用SHOW语句导出表结构的步骤:1. 连接到MySQL数据库:首先需要使用MySQL的客户端工具(如MySQL命令行、Navicat等)连接到数据库。
2. 选择数据库:在连接成功后,使用USE语句选择要导出表结构的数据库。
3. 使用SHOW语句:使用SHOW语句来查看表结构。
例如,要查看名为“users”的表的结构,可以执行以下命令:SHOW CREATE TABLE users;执行该命令后,MySQL将返回一个包含表结构的结果集。
其中,第一列为字段名,第二列为数据类型,第三列为约束条件。
4. 导出表结构:将SHOW语句返回的结果保存到文件中,即可实现导出表结构的功能。
在MySQL命令行中,可以使用“\G”命令将结果以竖向显示的格式输出。
例如,执行以下命令将结果保存到文件中:SHOW CREATE TABLE users\G > users.sql;执行完该命令后,MySQL将把SHOW语句的结果输出到名为“users.sql”的文件中。
二、使用mysqldump命令导出表结构除了使用SHOW语句,我们还可以使用mysqldump命令来导出表结构。
mysqldump是MySQL提供的一个命令行工具,可以用于备份和恢复MySQL数据库。
以下是使用mysqldump命令导出表结构的步骤:1. 连接到MySQL数据库:首先需要使用MySQL的客户端工具(如MySQL命令行、Navicat等)连接到数据库。
2. 导出表结构:使用mysqldump命令导出表结构。
mysqlshow过滤_MySQL如何使用showprocesslist进行过滤MySQL show processlist可以被用来查看当前数据库服务器上正在进行的MySQL进程,其中包括等待和正在执行的任务。
它可以用来查看僵死连接,显示挂起的查询,分析慢查询,并帮助进行服务器监控和性能优化。
本文将讨论如何使用show processlist过滤MySQL中的进程。
通常来说,MySQL show processlist的输出包括一些列的字段,如下所示:Id:进程的IDUser:用户名Host:主机名db:进程正在使用的数据库Time:进程正在运行的时间State:进程当前的状态(如等待、运行、挂起等)Info:进程所执行的命令的附加信息此外,MySQL show processlist还可以根据进程以及其他一些参数进行过滤,以显示您感兴趣的特定进程。
要过滤show processlist,首先要打开MySQL控制台或命令行,然后使用show processlist语句:SHOW[FULL]PROCESSLISTFULL子句通常用于显示挂起的查询等更详细的信息,但是它不能用于过滤。
为了显示特定的进程,可以使用 where 子句来添加过滤条件SHOW [FULL] PROCESSLIST WHERE condition例如,要显示id为123的进程,可以使用以下语句:SHOW [FULL] PROCESSLIST WHERE id=123此外,可以使用AND子句添加多个过滤条件:SHOW [FULL] PROCESSLIST WHERE condition1 AND condition2例如,要查看User为root,Host为localhost的进程:SHOW [FULL] PROCESSLIST WHERE User='root' ANDHost='localhost'除过滤条件外。
mysql 查询表创建语句如果你想查询MySQL 数据库中某个表的创建语句,可以使用SHOW CREATE TABLE命令。
以下是如何使用这个命令的步骤:1.首先,登录到MySQL 数据库:2.bash复制代码mysql -u your_username-p3.选择你要查询的数据库:4.sql复制代码USEyour_database_name;5.查询表的创建语句:6.sql复制代码SHOW CREATE TABLEyour_table_name;将your_table_name替换为你想要查询的表名。
执行这条命令后,MySQL 会返回一个结果集,其中包含表的创建语句。
注意:如果你要查询的表在数据库中不存在,MySQL 会返回一个错误。
除了使用SHOW CREATE TABLE命令,还有其他方法可以查询MySQL 表的创建语句。
以下是几种常用的方法:7.使用INFORMATION_SCHEMA数据库:INFORMATION_SCHEMA是MySQL 中的一个特殊数据库,其中包含了关于其他数据库的元数据信息。
你可以查询INFORMATION_SCHEMA.TABLES和INFORMATION_SCHEMA.VIEWS来获取表的创建语句。
例如,要查询名为your_table_name的表的创建语句,可以执行以下SQL 语句:sql复制代码SELECT TABLE_NAME, ENGINE, CREATE_TIME, CREATE_OPTIONS, TABLE_ROWS, DATA_KEY_LENGTH, INDEX_KEY_LENGTH, ROW_FORMAT, TABLE_COLLATION, CHECKSUM,CREATE_SQL_FILE, INSERT_METHODFROM INFORMATION_SCHEMA.TABLESWHERE TABLE_SCHEMA = 'your_database_name' AND TABLE_NAME = 'your_table_name';8.使用mysqldump工具:mysqldump是MySQL 的一个实用程序,用于导出数据库的结构和数据。
mysqlshowprocesslist显⽰mysql查询进程1.进⼊mysql/bin⽬录下输⼊mysqladmin processlist;2.启动mysql,输⼊show processlist;如果有 SUPER 权限,则可以看到全部的线程,否则,只能看到⾃⼰发起的线程(这是指,当前对应的MySQL帐户运⾏的线程)。
得到数据形式如下(只截取了三条):mysql> show processlist;+-----+-------------+--------------------+-------+---------+-------+----------------------------------+----------| Id | User | Host | db | Command | Time| State | Info+-----+-------------+--------------------+-------+---------+-------+----------------------------------+----------|207|root |192.168.0.20:51718 |mytest | Sleep | 5 | | NULL|208|root |192.168.0.20:51719 |mytest | Sleep | 5 | | NULL|220|root |192.168.0.20:51731 |mytest |Query | 84 | Locked |select bookname,culture,value,type from book where id=001先简单说⼀下各列的含义和⽤途,第⼀列,id,不⽤说了吧,⼀个标识,你要kill⼀个语句的时候很有⽤。
user列,显⽰单前⽤户,如果不是root,这个命令就只显⽰你权限范围内的sql语句。
MySQL数据库showprocesslist指令使⽤解析 在实际项⽬开发中,如果我们对数据库的压⼒⽐较⼤,⽐如有⼤批量的查询或者插⼊等sql,尤其是多线程插⼊等情况,针对部分执⾏⽐较慢的sql,我们可以将其kill掉,常⽤的⼀个命令就是show processlist 1. show processlist是什么show processlist:通过查看mysql的官⽹,可以发现,其主要是查询数据库中哪些线程正在执⾏,针对⽐较慢的线程(time的数值⽐较⼤的线程)我们可以将其kill掉。
此外,show full processlist 返回的结果是实时变化的。
2. show processlist怎么⽤ 有三种⽅式可以执⾏show processlist,可以通过命令⾏、SQL语句、Navicat客户端等。
1)命令⾏:SHOW FULL PROCESSLIST\G 执⾏结果如下:mysql> SHOW FULL PROCESSLIST\G*************************** 1. row ***************************Id: 1User: system userHost:db: NULLCommand: ConnectTime: 1030455State: Waiting for master to send eventInfo: NULL*************************** 2. row ***************************Id: 2User: system userHost:db: NULLCommand: ConnectTime: 1004State: Has read all relay log; waiting for the slaveI/O thread to update itInfo: NULL*************************** 3. row ***************************Id: 3112User: replikatorHost: artemis:2204db: NULLCommand: Binlog DumpTime: 2144State: Has sent all binlog to slave; waiting for binlog to be updatedInfo: NULL*************************** 4. row ***************************Id: 3113User: replikatorHost: iconnect2:45781db: NULLCommand: Binlog DumpTime: 2086State: Has sent all binlog to slave; waiting for binlog to be updatedInfo: NULL*************************** 5. row ***************************Id: 3123User: stefanHost: localhostdb: apollonCommand: QueryTime: 0State: NULLInfo: SHOW FULL PROCESSLISTrows in set (0.00 sec) 2)可以通过sql语句查询数据库中相关信息的表 select id, db, user, host, command, time, state, info from information_schema.processlist order by time desc 3)可以通过Navicat⼯具查看,如下图是使⽤Navicat查询到的截图。
`SHOW` 是一个 SQL 命令,用于在 MySQL 数据库中显示各种信息。
下面是一些常用的 `SHOW` 命令及其用法:1. SHOW DATABASES;* 显示所有数据库的列表。
2. SHOW TABLES;* 显示当前数据库中的所有表。
3. SHOW COLUMNS FROM table_name;* 显示表中的列信息。
4. SHOW INDEX FROM table_name;* 显示表中的索引信息。
5. SHOW GRANTS FOR 'username'@'hostname';* 显示特定用户的权限。
6. SHOW PROCESSLIST;* 显示当前正在运行的所有进程。
7. SHOW STATUS;* 显示服务器的状态变量。
8. SHOW VARIABLES;* 显示系统变量及其值。
9. SHOW WARNINGS;* 显示最近的警告信息。
10. SHOW ERRORS;* 显示最近的错误信息。
11. SHOW PLUGINS;* 显示已加载的插件信息。
12. SHOW CREATE TABLE table_name;* 显示创建表的 SQL 语句。
13. SHOW TABLE STATUS LIKE 'table_name';* 显示特定表的详细状态信息。
14. SHOW FULL PROCESSLIST;* 显示当前正在运行的所有进程,包括完整的查询信息。
15. SHOW FUNCTION STATUS WHERE Db = 'your_database_name'; or SHOW PROCEDURE STATUS WHERE Db ='your_database_name'; or SHOW TRIGGERS 'your_database_name' 'your_table_name'; or SHOW VIEW STATUS WHERE Db = 'your_database_name';* 根据数据库名显示函数、存储过程、触发器或视图的详细信息。
MySQL Show命令的用法大全MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show 命令的使用还容易产生混淆,本文汇集了show命令的众多用法。
1. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称。
2. show databases; -- 显示mysql中所有数据库的名称。
3. show columns from table_name from database_name; 或show columns from database_name.table_name; -- 显示表中列名称。
4. show grants for user_name; -- 显示一个用户的权限,显示结果类似于grant 命令。
5. show index from table_name; -- 显示表的索引。
6. show status; -- 显示一些系统特定资源的信息,例如,正在运行的线程数量。
7. show variables; -- 显示系统变量的名称和值。
8. show processlist; -- 显示系统中正在运行的所有进程,也就是当前正在执行的查询。
大多数用户可以查看他们自己的进程,但是如果他们拥有process 权限,就可以查看所有人的进程,包括密码。
9. show table status; -- 显示当前使用或者指定的database中的每个表的信息。
信息包括表类型和表的最新更新时间。
10. show privileges; -- 显示服务器所支持的不同权限。
11. show create database database_name; -- 显示create database 语句是否能够创建指定的数据库。
12. show create table table_name; -- 显示create database 语句是否能够创建指定的数据库。
MySQL查看或显⽰数据库(SHOWDATABASES语句)在 MySQL中,可使⽤ SHOW DATABASES 语句来查看或显⽰当前⽤户权限范围以内的数据库。
查看数据库的语法格式为:SHOW DATABASES [LIKE '数据库名'];语法说明如下:LIKE 从句是可选项,⽤于匹配指定的数据库名称。
LIKE 从句可以部分匹配,也可以完全匹配。
数据库名由单引号' '包围。
实例1:查看所有数据库列出当前⽤户可查看的所有数据库:mysql> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sakila || sys || world |+--------------------+6 row in set (0.22 sec)实例2:创建并查看数据库先创建⼀个名为 test_db 的数据库:mysql> CREATE DATABASE test_db;Query OK, 1 row affected (0.12 sec)再使⽤ SHOW DATABASES 语句显⽰权限范围内的所有数据库名,如下所⽰:mysql> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sakila || sys || test_db || world |+--------------------+7 row in set (0.22 sec)你看,刚才创建的数据库已经被显⽰出来了。
MySQL的SHOW TABLE STATUS命令用于显示关于数据库中表的信息。
这个命令返回的信息包括表类型、记录数、数据长度、索引长度以及一些其他有用的统计信息。
当您使用LIKE参数时,您可以过滤出符合特定模式的表。
LIKE参数在MySQL的SHOW TABLE STATUS命令中的用法与在SELECT语句中的用法相同。
下面是一些关于如何使用LIKE参数的示例和解释:基础用法:sqlSHOW TABLE STATUS LIKE 'table_name';这将返回名为"table_name"的表的状态信息。
2. 使用通配符:* `%`:匹配任何数量的字符,包括零个字符。
* `_`:匹配单个字符。
例如,如果您想查找所有以"prefix_"开头的表,您可以使用:sqlSHOW TABLE STATUS LIKE 'prefix_%';这将返回所有以"prefix_"开头的表的状态信息。
3. 结合多个模式:如果您想查找与多个模式匹配的表,您可以使用多个LIKE参数:sqlSHOW TABLE STATUS LIKE 'table_name' OR LIKE 'another_pattern%';这将返回名为"table_name"或以"another_pattern"开头的表的状态信息。
4. 与其他命令结合使用:您还可以将SHOW TABLE STATUS LIKE与其他命令(如WHERE)结合使用来过滤结果。
例如,如果您想查找在特定数据库中的表:sqlSHOW TABLE STATUS LIKE 'table_name' FROM database_name;或者如果您想结合多个条件:sqlSHOW TABLE STATUSFROM database_nameWHERE Name LIKE 'table_prefix%' AND Engine = 'InnoDB';这将从"database_name"数据库中返回所有以"table_prefix"开头且引擎为InnoDB的表的状态信息。
1. SHOW CHARACTER SET语法2. SHOW COLLATION语法3. SHOW COLUMNS语法4. SHOW CREATE DATAB ASE语法5. SHOW CREATE TABLE语法6. SHOW DATABASES语法7. SHOW ENGINE语法8. SHOW ENGINES语法9. SHOW ERRORS语法10. SHOW GRANTS语法11. SHOW INDEX语法12. SHOW INNODB STATUS语法13. SHOW LOGS语法14. SHOW OPEN TABLES语法15. SHOW PRIVILEGES语法16. SHOW PROCESSLIST语法17. SHOW STATUS语法18. SHOW TABLE STATUS语法19. SHOW TABLES语法20. SHOW TRIGGERS语法21. SHOW VARIABLES语法22. SHOW WARNINGS语法SHOW CHARACTER SET语法SHOW CHARACTER SET [LIKE 'pattern']SHOW CHARACTER SET语句用于显示所有可用的字符集。
该语句取一个自选的LIKE 子句。
该子句指示哪些字符集名称可以匹配。
举例说明:mysql> show character set like 'utf%';+---------+---------------+-------------------+--------+| Charset | Description | Default collation | Maxlen |+---------+---------------+-------------------+--------+| utf8 | UTF-8 Unicode | utf8_general_ci | 3 |+---------+---------------+-------------------+--------+Maxlen列显示用于存储一个字符的最大的字节数目。
SHOW COLLATION语法SHOW COLLATION [LIKE 'pattern']来自SHOW COLLATION的输出包括所有可用的字符集。
该语句取一个自选的LIKE 子句。
该子句的pattern指示哪些整序名称可以匹配。
举例说明:mysql> show collation like 'utf8%';+--------------------+---------+-----+---------+----------+---------+ | Collation | Charset | Id | Default | Compiled | Sortlen |+--------------------+---------+-----+---------+----------+---------+ | utf8_general_ci | utf8 | 33 | Yes | Yes | 1 | | utf8_bin | utf8 | 83 | | Yes | 1 | | utf8_unicode_ci | utf8 | 192 | | Yes | 8 | | utf8_icelandic_ci | utf8 | 193 | | Yes | 8 | | utf8_latvian_ci | utf8 | 194 | | Yes | 8 | | utf8_romanian_ci | utf8 | 195 | | Yes | 8 | | utf8_slovenian_ci | utf8 | 196 | | Yes | 8 | | utf8_polish_ci | utf8 | 197 | | Yes | 8 | | utf8_estonian_ci | utf8 | 198 | | Yes | 8 | | utf8_spanish_ci | utf8 | 199 | | Yes | 8 | | utf8_swedish_ci | utf8 | 200 | | Yes | 8 | | utf8_turkish_ci | utf8 | 201 | | Yes | 8 | | utf8_czech_ci | utf8 | 202 | | Yes | 8 | | utf8_danish_ci | utf8 | 203 | | Yes | 8 | | utf8_lithuanian_ci | utf8 | 204 | | Yes | 8 | | utf8_slovak_ci | utf8 | 205 | | Yes | 8 | | utf8_spanish2_ci | utf8 | 206 | | Yes | 8 | | utf8_roman_ci | utf8 | 207 | | Yes | 8 | | utf8_persian_ci | utf8 | 208 | | Yes | 8 | | utf8_esperanto_ci | utf8 | 209 | | Yes | 8 | | utf8_hungarian_ci | utf8 | 210 | | Yes | 8 | +--------------------+---------+-----+---------+----------+---------+ Default列指示对于其字符集,整序值是否是默认值。
Compiled指示字符集是否被编辑到服务器中。
Sortlen与对字符串(在字符集中表达)分类所需的存储器的数量有关。
SHOW COLUMNS语法SHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE'pattern']SHOW COLUMNS显示在一个给定表中的各列的信息。
对于试图,本语句也起作用。
mysql> show full columns from test_lan;| Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment |+---------+-------------+-----------------+------+-----+---------+----------------+---------------------------------+---------+| id | int(10) | NULL | NO | PRI | NULL | auto_increment | select,insert,update,references | || name | varchar(40) | utf8_general_ci |NO | | | |select,insert,update,references | ??? || value | text | utf8_general_ci | NO | |NULL | | select,insert,update,references| ???? || package | varchar(50) | utf8_general_ci | YES | MUL |NULL | | select,insert,update,references| |full 参数的作用是列出权限列和备注列SHOW CREATE DATABASE语法SHOW CREATE {DATABASE | SCHEMA} db_name显示用于创建给定数据库CREATE DATABASE语句。
也可以使用SHOW CREATE SCHEMA。
mysql> show create database 5j;+----------+-------------------------------------------------------------+| Database | CreateDatabase |+----------+-------------------------------------------------------------+| 5j | CREATE DATABASE `5j` |+----------+-------------------------------------------------------------+mysql> show create schema 5j;+----------+-------------------------------------------------------------+| Database | CreateDatabase |+----------+-------------------------------------------------------------+| 5j | CREATE DATABASE `5j` |+----------+-------------------------------------------------------------+SHOW CREATE TABLE语法SHOW CREATE TABLE tbl_name显示用于创建给定表的CREATE TABLE语句。
本语句对视图也起作用。
mysql> show create table last_ids;CREATE TABLE `last_ids` (`role_id` int(11) unsigned NOT NULL default '0' COMMENT '????ID',`combat_id` bigint(20) unsigned NOT NULL default '0' COMMENT '????ID' ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=REDUNDANTCOMMENT='??ID?'根据SQL_QUOTE_SHOW_CREATE选项,SHOW CREATE TABLE会对表名称和列名称加引号。
SHOW DATABASES语法SHOW {DATABASES | SCHEMAS} [LIKE 'pattern'];mysql> show schemas;+--------------------+| Database |+--------------------+| information_schema || 5j || mysql || test || uniondb |+--------------------+mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || 5j || mysql || test || uniondb |+--------------------+mysql> show databases like '5j';+---------------+| Database (5j) |+---------------+| 5j |+---------------+SHOW DATABASES可以在MySQL服务器主机上列举数据库。