开发者社区> 技术小甜> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如何查看mysql中表的存储引擎类型

简介:
+关注继续查看

 mysql支持多种存储引擎,在处理不同类型的应用时,可以通过选择使用不同的存储引擎提高应用的效率,或者提供灵活的存储。

 mysql的存储引擎包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDB Cluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其它存储引擎都是非事务安全表。

 查看mysql中表的存储引擎类型有几个方法,具体如下:


1.show table status from 数据库库名 where name='表名',例:

mysql> SHOW TABLE STATUS from mytest where Name='test';

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)

| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length |(省略部分结果)

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)

| test | MyISAM |      10 | Fixed      |    0 |              0 |           0 |(省略部分结果)

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)

1 row in set (0.02 sec)

mysql>


看到Engine对应的值是MyISAM


2.mysqlshow -u 数据库登录账号用户名 -p'数据库登录账号密码' --status 数据库库名 表名


mysqlshow  -uroot -p'mypassword'   --status mytest test

Database:mytest  Wildcard: test

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)

| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length |(省略部分结果)

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)

| test | MyISAM |      10 | Fixed      |    0 |              0 |           0 |(省略部分结果)

+------------+--------+---------+------------+------+----------------+-------------+(省略部分结果)


可以看到Engine对应的值是MyISAM


3.show create table 表名

这种方法有时候是不准确的,例:

服务器配置没有启用InnoDB存储引擎,在创建表的时候设置的是InnoDB存储引擎,创建表时的命令:

mysql> create database mytest;

Query OK, 1 row affected (0.02 sec)

mysql> use mytest;

Database changed

mysql> CREATE TABLE test (

-> id INT(11) default NULL auto_increment,

-> s char(60) default NULL,

-> PRIMARY KEY (id)

-> ) ENGINE=InnoDB;

Query OK, 0 rows affected, 2 warnings (0.06 sec)

mysql>


此时使用上面的方法1和2查看会看到test表使用的引擎是MyISAM,但是使用3查看会看到如上的结果。而实际上test表使用的存储引擎是MyISAM的。


4.查看mysql服务器是否启用InnoDB存储引擎:

返回结果是:  "InnoDB"   对应的  "Support"等于 “NO”  ,表示未启用  InnoDB  存储引擎。

mysql> SHOW  ENGINES;

+------------+---------+----------------------------------------------------------+(省略部分结果)

| Engine     | Support | Comment                                                  |(省略部分结果)

+------------+---------+----------------------------------------------------------+(省略部分结果)

| InnoDB     | NO      | Supports transactions, row-level locking, and foreign keys|(省略部分结果)

| MRG_MYISAM | YES     | Collection of identical MyISAM tables                  |(省略部分结果)

| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it disa(省略部分结果)

| CSV        | YES     | CSV storage engine                                       |(省略部分结果)

| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables|(省略部分结果)

| FEDERATED  | NO      | Federated MySQL storage engine                           |(省略部分结果)

| ARCHIVE    | YES     | Archive storage engine                                   |(省略部分结果)

| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance|(省略部分结果)

+------------+---------+----------------------------------------------------------+(省略部分结果)

8 rows in set (0.00 sec)

mysql>

















本文转自月魔zhi蕾51CTO博客,原文链接:http://blog.51cto.com/308107405/1349447 ,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
mysql数据库:varchar类型可以存储多少个汉字,多少个数字
mysql数据库:varchar类型可以存储多少个汉字,多少个数字
0 0
mysql索引类型 normal, unique, full text
mysql索引类型 normal, unique, full text
0 0
MySQL的索引类型以及优缺点
MySQL的索引类型以及优缺点
0 0
MySQL事务的四种隔离类型以及PHP框架Yii2中的源码解读和实际应用
MySQL事务的四种隔离类型以及PHP框架Yii2中的源码解读和实际应用
0 0
MySQL date类型数据比较
MySQL date类型数据比较
0 0
Shell变量的作用、类型,及如何利用脚本配合任务计划远程备份mysql数据库
Shell变量的作用、类型,及如何利用脚本配合任务计划远程备份mysql数据库
0 0
mysql更新varchar类型字段长度报错:ERROR 1074 (42000): Column length too big for column ‘value‘ (max = 21845);
mysql更新varchar类型字段长度报错:ERROR 1074 (42000): Column length too big for column ‘value‘ (max = 21845);
0 0
MySQL中整各种int类型的范围和存储大小
MySQL中整各种int类型的范围和存储大小
0 0
sql中datetime日期类型字段比较(mysql&oracle)
sql中datetime日期类型字段比较(mysql&oracle)
0 0
Mysql中锁类型详解
Mysql中锁类型详解
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载