我是靠谱客的博主 舒心灰狼,最近开发中收集的这篇文章主要介绍mysql查看现在使用的引擎_查看mysql当前表使用的存储引擎(转),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

说明:

当我们创建表 “test”表时

CREATE TABLE test (

id INT(11) default NULL auto_increment,

s char(60) default NULL,

PRIMARY KEY(id)

ENGINE=InnoDB;

一般情况这样没任何问题。但是,如果MySQL服务器配置中未启用InnoDB存储引擎。则在创建表 test 时,MySQL还是会自动选择默认的存储引擎MyISAM来创建test表。因为通过SHOW CREATE TABLE 表名 来查看表使用的mysql存储引擎是不准确的。

实例:

mysql服务器未启用InnoDB存储引擎;

库名:mytest;

表名:test(mytest.test);

帐号:root;

密码:mypassword;

列 “Engine” 下显示的值表示表正在使用的 MySQL 存储引擎。

1.确认 MySQL 服务器 是否启用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)

返回结果是:InnoDB对应的Support为NO,表示未启用InnoDB存储引擎。

2.创建表 “test”

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>

3.使用“SHOW CREATE TABLE 表名” 来查看,这种方式是不准确的

mysql> SHOW CREATE TABLE test;

+-------+----------------------------------------------------------------------------+

| Table | Create Table|

+-------+----------------------------------------------------------------------------+

| test | CREATE TABLE `test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`s` char(60) DEFAULT NULL,

PRIMARY KEY (`id`)

ENGINE=InnoDB DEFAULT CHARSET=latin1 |

+-------+----------------------------------------------------------------------------+

1 row in set (0.00 sec)

可以看到test表还是InnoDB引擎!!

4.使用SHOW TABLE STATUS from 数据库库名 where Name=’表名’;这是正确的方式

# mysql -uroot -p'mypassword'

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 221

Server version: 5.1.41-3ubuntu12.7 (Ubuntu)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

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>

5.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 |

+------------+--------+---------+------------+------+----------------+-------------+

最后:

可以看出,在未启用InnoDB存储引擎的情况下,我们发现4,5步返回的结果是正确的,列Engine为MyISAM而不是InnoDB存储引擎。而第3步使用 “SHOW CREATE TABLE 表名” 来查看表使用的mysql存储引擎是不准确的。

http://coolnull.com/2759.html

数据库 MySQL 之 表操作、存储引擎

数据库 MySQL 之 表操作.存储引擎 浏览目录 创建(复制) 删除 修改 查询 存储引擎介绍 一.创建(复制) 1.语法: 1 2 3 4 5 CREATE TABLE 表名(     字段名1 ...

如何查看mysql数据库表所使用的引擎(转载)

我们怎么样才能准确的查看mysql的存储引擎呢,下面我给大家介绍两种正确的方式. 1)正确方式一: SHOW TABLE STATUS from 数据库库名 where Name='表名' 2)mys ...

MySQL表类型和存储引擎版本不一致解决方法

使用的是老版本的mysql客户端Navicate 8 ,mysql 服务端用的是mysql5.6的版本,在修改版本引擎的时候出现版本不对; mysql error ‘TYPE=MyISAM’ 解决办法 ...

MySQL数据分析-(15)表补充:存储引擎

大家好,我是jacky,很高兴继续跟大家分享,今天跟大家分享的主题是表补充之存储引擎: 我们之前学了跟表结构相关的一些操作,那我们看一下创建表的SQL模型: 在我 ...

mysql————表类型(存储引擎)的选择

表类型(存储引擎)的选择 7.1 mysql存储引擎概述 插件式存储引擎是mysql数据库最重要的特性之一,用户可以根据应用的需要选择ruhr存储和索引数据,是否使用事务等. InnoDB和BDB提供 ...

[MySQL Reference Manual]15. 其他存储引擎

15. 其他存储引擎 15. 其他存储引擎 15.1 设置存储引擎 15.2 MyISAM存储引擎 15.2.1 MyISAM启动选项 15.2.2 Key的空间要求 15.2.3 MyISAM表存储 ...

MySQL 远程连接(federated存储引擎)

标签:federated存储引擎 概述 本文主要介绍通过federated存储引擎建立远程连接表 测试环境:mysql 5.6.21 步骤 开启federated存储引擎 先查看federated存储 ...

MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)

简单来说,存储引擎就是指表的类型以及表在计算机上的存储方式. 存储引擎的概念是MySQL的特点,Oracle中没有专门的存储引擎的概念,Oracle有OLTP和OLAP模式的区分.不同的存储引擎决定了 ...

mysql 开发基础系列10 存储引擎 InnoDB 介绍

一. 概述: InnoDB存储引擎提供了具有提交,回滚,和崩溃恢复能力的事务安全,对比MYISAM 的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引.它的特点有如下: ...

随机推荐

C# windows服务制作(包括安装及卸载)

开篇语 因工作内容需要做一个windows服务,此前并没有相关经验,所以做了一个demo来跑跑这个梗(高手跳过,需要的来踩)- 效果如下:打开服务,可以找到我们新增的一个windows服务,这个dem ...

修改目的端trail文件的最大大小--转载

本文为原创,转载请注明出处: http://blog.csdn.net/msdnchina/article/details/38346435 修改目的端trail文件的最大大小. 本文产生的背景: 在 ...

jQuery的 delegate问题

习惯了bind,用惯了live,就不习惯delegate了呀有木有... 支持为动态生成的标签元素绑定事件也许就live和delegate了吧,不过新版本已经不支持live了,只有delegate d ...

jquery------.resizable()的使用

index.jsp //加上这两行代码,右下角会有样式效果

最后

以上就是舒心灰狼为你收集整理的mysql查看现在使用的引擎_查看mysql当前表使用的存储引擎(转)的全部内容,希望文章能够帮你解决mysql查看现在使用的引擎_查看mysql当前表使用的存储引擎(转)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部