SHOW INDEX
返回表索引信息
SHOW INDEX FROM tbl_name [FROM db_name]
![](https://img.haomeiwen.com/i6212571/3294073705feb9ea.png)
Table | 表的名称 |
---|---|
Non_unique | 如果索引不能报货重复词,则为0,可以则为1 |
Key_name | 索引的名称 |
Seq_in_index | 索引中的列序列号,从1开始 |
Column_name | 列名称 |
Collation | 列以什么方式存储在索引中。在Mysql中,有值‘A’(升序) 或Null (无分类) |
Cardinality | 索引中唯一值的数目的估计值。通过运行ANALYZE TABLE或myisamchk -a可以更新。基数根据被存储为整数的统计数据来计数,所以即使对于小型表,该值也没有必要是精确的。基数越大,当进行联合时,MySQL使用该索引的机会就越大。 |
Sub_part | 如果列只是被部分地编入索引,则为被编入索引的字符的数目。如果整列被编入索引,则为NULL。 |
Packed | 指示关键字如何被压缩。如果没有被压缩,则为NULL。 |
Null | 如果列含有NULL,则含有YES。如果没有,则该列含有NO |
Index_type | 用过的索引方法(BTREE,FULLTEXT,HASH,REREE) |
Comment | 多种评注 |
show create table
查看建表信息
![](https://img.haomeiwen.com/i6212571/9f62e35bd3d9ee4b.png)
show table status
查看表结构信息
![](https://img.haomeiwen.com/i6212571/6ca7b336ebc52058.png)
1.Name
表名称
2.Engine:
表的存储引擎
3.Version:
版本
4.Row_format
行格式。对于MyISAM引擎,这可能是Dynamic,Fixed或Compressed。动态行的行长度可变,例如Varchar或Blob类型字段。固定行是指行长度不变,例如Char和Integer类型字段。
5.Rows
表中的行数。对于非事务性表,这个值是精确的,对于事务性引擎,这个值通常是估算的。
6.Avg_row_length
平均每行包括的字节数
7.Data_length
整个表的数据量(单位:字节)
8.Max_data_length
表可以容纳的最大数据量
9.Index_length
索引占用磁盘的空间大小
10.Data_free
对于MyISAM引擎,标识已分配,但现在未使用的空间,并且包含了已被删除行的空间。
11.Auto_increment
下一个Auto_increment的值
12.Create_time
表的创建时间
13.Update_time
表的最近更新时间
14.Check_time
使用 check table 或myisamchk工具检查表的最近时间
15.Collation
表的默认字符集和字符排序规则
16.Checksum
如果启用,则对整个表的内容计算时的校验和
17.Create_options
指表创建时的其他所有选项
18.Comment
包含了其他额外信息,对于MyISAM引擎,包含了注释徐标新,如果表使用的是innodb引擎 ,将现实表的剩余空间。如果是一个视图,注释里面包含了VIEW字样。
show status
查看MySQL服务器当前内存信息。
show [global | session] status [like 'xxx'];
- global选项,查看mysql所有连接状态
- session选项,查看当前连接状态,默认session选项
1)QPS每秒query量
show global status like 'Question%';
+---------------+----------+
| Variable_name | Value |
+---------------+----------+
| Questions | 39661402 |
+---------------+----------+
2)TPS每秒事务量
show global status like 'Com_commit';
+---------------+---------+
| Variable_name | Value |
+---------------+---------+
| Com_commit | 8495153 |
+---------------+---------+
show global status like 'Com_rollback';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_rollback | 0 |
+---------------+-------+
(3)key Buffer 命中率
mysql>show global status like 'key%';
key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%
key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%
(4)InnoDB Buffer命中率
mysql> show status like 'innodb_buffer_pool_read%';
innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%
(5)Query Cache命中率
mysql> show status like 'Qcache%';
Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%;
(6)Table Cache状态量
mysql> show global status like 'open%';
比较 open_tables 与 opend_tables 值
(7)Thread Cache 命中率
mysql> show global status like 'Thread%';
mysql> show global status like 'Connections';
Thread_cache_hits = (1 - Threads_created / connections ) * 100%
(8)锁定状态
mysql> show global status like '%lock%';
Table_locks_waited/Table_locks_immediate=0.3% 如果这个比值比较大的话,说明表锁造成的阻塞比较严重
Innodb_row_lock_waits innodb行锁,太大可能是间隙锁造成的
(9)复制延时量
mysql > show slave status
查看延时时间
(10) Tmp Table 状况(临时表状况)
mysql > show status like 'Create_tmp%';
Created_tmp_disk_tables/Created_tmp_tables比值最好不要超过10%,如果Created_tmp_tables值比较大,
可能是排序句子过多或者是连接句子不够优化
(11) Binlog Cache 使用状况
mysql > show status like 'Binlog_cache%';
如果Binlog_cache_disk_use值不为0 ,可能需要调大 binlog_cache_size大小
(12) Innodb_log_waits 量
mysql > show status like 'innodb_log_waits';
Innodb_log_waits值不等于0的话,表明 innodb log buffer 因为空间不足而等待
13)show variables like '%timeout%';查看连接超时配置
show variables
可以查看系统变量
系统变量实际上用于控制数据库的一些行为和方式的参数。比如我们启动数据库的时候设定多大的内存,使用什么样的隔离级别,日志文件的大小,存放位置等等一系列的东东。当然我们数据库系统启动后,有些系统变量(参数)也可以通过动态修改来及时调整数据库
网友评论