MySQL目前是主流的关系型数据库,大部分的线上业务使用的都是MySQL存储,相对比较成熟和稳定。
我们平时在连接库进行查询时,会用到一些工具,比如Navicat等,不过在大多数的线上环境,是不支持外网直连的,这个时候就需要用到命令行的方式了,这里介绍下用命令行怎么查看表的信息。
一、查看表信息
比如我们想查看test表的表信息,可以通过以下命令。
show table status like '表名'\G;
\G的意思是让信息案列打印,便于直观的显示。
打印出的信息含义分别为:
Name:表名;
Engine:表的存储引擎类型,在旧版本中,该列的名字叫Type;
Row_format:行的格式,对于MyISAM表,可选的值为Dynamic、Fixed或者Compressed。Dynamic的行长度是可变的,一般包含可变长度的字段,如VARCHAR或BLOB,Fixed的行长度则是固定的,只包含固定长度的列,如CHAR何INTEGER,Compressed的行则只在压缩表中存在;
Rows:表中的行数,对于MyISAM和其他一些存储引擎,该值是精确的,但对于InnoDB,该值是估计值;
Avg_row_length:平均每行包含的字节数;
Data_length:表数据的大小(以字节为单位);
Max_data_length:表数据的最大容量,该值和存储引擎有关;
Index_length:索引的大小(以字节为单位);
Data_free:对于MyISAM表,标识已分配但目前没有使用的空间,这部分空间包括了之前删除的行,以及后续可以被INSERT利用到的空间;
Auto_increment:下一个AUTO_INCREMENT的值;
Create_time:表的创建时间;
Update_time:表数据的最后修改时间;
Check_time:使用CHECK TABLE命令或者myisamchk工具最后一次检查表的时间;
Collation:表的默认字符集和字符列排序规则;
Checksum:如果启用,保存的是整个表的实时校验和;
Create_options:创建表时指定的其他选项;
Comment:该列包含了一些其他的额外信息,对于MyISAM表,保存的是表在创建时带的注释,对于InnoDB表,则保存的是InnoDB表空间的剩余空间信息,如果是一个视图,则该列包含“VIEW”的文本字样。
二、查看表结构
查看简单表结构、字段类型。
以下命令均可:
desc 表名;
describe 表名;
show columns from 表名;
查看详细表结构、字段类型。
show full fields from 表名;
三、查看建表语句
show create table 表名;
好了,以上就是关于命令行查看MySQL表信息的方法了。