`

MySQL查看和修改表的存储引擎

阅读更多

1 查看系统支持的存储引擎show engines;

如:

mysql> show engines \G

*************************** 1. row ***************************

      Engine: MyISAM

     Support: YES

     Comment: Default engine as of MySQL 3.23 with great performance

Transactions: NO

          XA: NO

  Savepoints: NO

*************************** 2. row ***************************

      Engine: CSV

     Support: YES

     Comment: CSV storage engine

Transactions: NO

          XA: NO

  Savepoints: NO

*************************** 3. row ***************************

      Engine: MRG_MYISAM

     Support: YES

     Comment: Collection of identical MyISAM tables

Transactions: NO

          XA: NO

  Savepoints: NO

*************************** 4. row ***************************

      Engine: BLACKHOLE

     Support: YES

     Comment: /dev/null storage engine (anything you write to it disappears)

Transactions: NO

          XA: NO

  Savepoints: NO

*************************** 5. row ***************************

      Engine: FEDERATED

     Support: NO

     Comment: Federated MySQL storage engine

Transactions: NULL

          XA: NULL

  Savepoints: NULL

*************************** 6. row ***************************

      Engine: InnoDB

     Support: DEFAULT

     Comment: Supports transactions, row-level locking, and foreign keys

Transactions: YES

          XA: YES

  Savepoints: YES

*************************** 7. row ***************************

      Engine: ARCHIVE

     Support: YES

     Comment: Archive storage engine

Transactions: NO

          XA: NO

  Savepoints: NO

*************************** 8. row ***************************

      Engine: MEMORY

     Support: YES

     Comment: Hash based, stored in memory, useful for temporary tables

Transactions: NO

          XA: NO

  Savepoints: NO

8 rows in set (0.00 sec)

 

2 查看表使用的存储引擎

 两种方法:

 a、show table status from db_name where name='table_name';

 如:

mysql> show table status from test where name='user' \G

*************************** 1. row ***************************

           Name: user

         Engine: InnoDB

        Version: 10

     Row_format: Compact

           Rows: 3

 Avg_row_length: 5461

    Data_length: 16384

Max_data_length: 0

   Index_length: 0

      Data_free: 4194304

 Auto_increment: NULL

    Create_time: 2013-11-01 09:24:24

    Update_time: NULL

     Check_time: NULL

      Collation: gb2312_chinese_ci

       Checksum: NULL

 Create_options:

        Comment:

1 row in set (0.00 sec)

 

b、show create table table_name;

如:

mysql> show create table user \G

*************************** 1. row ***************************

       Table: user

Create Table: CREATE TABLE `user` (

  `id` int(11) NOT NULL,

  `name` varchar(50) NOT NULL,

  `age` int(11) NOT NULL,

  `sex` varchar(20) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=gb2312

1 row in set (0.00 sec)

 

如果显示的格式不好看,可以用\G代替行尾分号

 

有人说用第二种方法不准确,我试了下,关闭掉原先默认的Innodb引擎后根本无法执行show create table table_name指令,因为之前建的是Innodb表,关掉后默认用MyISAM引擎,导致Innodb表数据无法被正确读取。

 

3 修改表引擎方法

alter table table_name engine=innodb;

如:

mysql> alter table user engine=InnoDB;

Query OK, 3 rows affected (0.40 sec)

Records: 3  Duplicates: 0  Warnings: 0

 

mysql> show table status from test where name='user' \G

*************************** 1. row ***************************

           Name: user

         Engine: InnoDB

        Version: 10

     Row_format: Compact

           Rows: 3

 Avg_row_length: 5461

    Data_length: 16384

Max_data_length: 0

   Index_length: 0

      Data_free: 4194304

 Auto_increment: NULL

    Create_time: 2013-11-01 09:24:24

    Update_time: NULL

     Check_time: NULL

      Collation: gb2312_chinese_ci

       Checksum: NULL

 Create_options:

        Comment:

1 row in set (0.00 sec)

 

4 关闭Innodb引擎方法

关闭mysql服务: net stop mysql

找到mysql安装目录下的my.ini文件:

找到default-storage-engine=INNODB 改为default-storage-engine=MYISAM

找到#skip-innodb 改为skip-innodb

启动mysql服务:net start mysql

 

来源:http://www.linuxidc.com/Linux/2012-10/72884.htm

分享到:
评论

相关推荐

    mysql-存储引擎-实验四.docx

    1. 查看 MySQL 8.0 支持的存储引擎,指出各个存储引擎相同点和区别。 在实验中,我们使用 MySQL 8.0 查看了支持的存储引擎,包括 InnoDB、MyISAM、MEMORY、CSV、BLACKHOLE、EXAMPLE、FEDERATED、Archive、Merge 等...

    MySQL内核:InnoDB存储引擎 卷1.pdf.zip

    InnoDB存储引擎是MySQL中的默认存储引擎,特别适合需要ACID(原子性、一致性、隔离性和持久性)属性的事务处理应用。其主要特点包括: 1. **事务支持**:InnoDB支持事务的四种隔离级别,包括读未提交(READ ...

    mySql 存储引擎 启用 Innodb

    在MySQL数据库系统中,存储引擎扮演着极其重要的角色,它决定了数据如何被存储、检索和管理。其中,InnoDB作为MySQL中最常用的存储引擎之一,提供了众多高级特性,如事务支持、行级锁定以及外键约束等。本文将详细...

    MySQL课程之MySQL存储引擎入门

    MySQL是世界上最流行的关系型数据库管理系统之一,其强大的功能和灵活性主要得益于它支持多种存储引擎。在MySQL课程中,深入理解存储引擎是至关重要的,因为不同的存储引擎有着不同的特性和适用场景,这直接影响到...

    MySQL存储引擎解析.doc

    MySQL系统由多个组件构成,包括管理工具、连接池、SQL接口、分析器、优化器、缓存、存储引擎和硬盘。其中,存储引擎是专门处理表数据的模块,不同类型的存储引擎决定了数据的存储格式、索引类型以及并发控制策略。 ...

    mysql中的表引擎

    MySQL中的表引擎是数据库管理系统的重要组成部分,它们负责数据的存储、检索和管理。数据库引擎的定义可以理解为数据处理的核心服务,它解析SQL语句,执行数据操作,并控制访问权限,确保数据的安全和高效处理。在...

    第6章MySQL存储引擎与数据库.docx

    MySQL存储引擎是数据库管理系统的核心组件,它决定了数据如何在MySQL中存储、检索和管理。不同的存储引擎具有不同的特性和用途,以适应各种应用场景。在MySQL中,存储引擎主要负责数据的物理存储方式、事务处理、...

    可插式存储引擎MySQL走向企业级保障

    MySQL 的可插拔存储引擎体系结构使得数据库管理员和开发者无需关心底层实现细节,只需关注应用程序的需求。这降低了管理复杂性,提高了数据库系统的适应性。在配置上,通过修改`STORAGE_ENGINE`变量即可更改默认存储...

    关于Mysql数据库还原修改存储引擎为INNODB引起的错误问题分析.pdf

    然而,在尝试将数据库还原并修改存储引擎为InnoDB时,可能会遇到一些问题。 在描述的场景中,用户遇到了一个特定的错误:“Unknown/unsupported storage engine: InnoDB”。这个错误通常意味着MySQL服务器当前不...

    MySQL逻辑架构-存储引擎-用户权限密码详解

    存储引擎层位于最下层,负责MySQL中的数据存储和提取,支持事务处理,不同存储引擎有其特定的功能和特性。 在存储引擎层,常见引擎包括MYISAM和InnoDB。MYISAM引擎不支持事务处理,但执行速度较快,适合用于只读或...

    关于Mysql数据库还原修改存储引擎为INNODB引起的错误问题分析.docx

    MySQL 数据库是一个广泛使用的开源关系型数据库管理系统,其...总之,修改 MySQL 的存储引擎需要仔细的配置和验证步骤。遇到问题时,要耐心地排查错误信息,检查配置文件和系统资源,以及求助于社区资源来解决问题。

    MySQL修改默认存储引擎的实现方法

    MySQL是一种流行的关系型数据库管理系统,它采用了...需要注意的是,修改存储引擎可能会影响数据库的性能和数据的完整性,因此在进行存储引擎更改之前,应当进行充分的测试和备份,以确保操作的安全性和数据的完整性。

    MySQL 技术内幕:InnoDB存储引擎

    InnoDB是MySQL中最常用的一种存储引擎,它支持事务处理、行级锁定、外键约束等功能,能够提供更高的并发性和数据一致性保障。InnoDB存储引擎的设计目的是为了提高大规模联机事务处理(OLTP)应用程序的性能,同时也...

    MySQL数据库存储引擎探析.docx

    MySQL 数据库存储引擎是 MySQL 数据库中的一种重要组件,它提供了多种存储引擎,每种引擎都有其独特的特性和适用场景。了解每种存储引擎的特性和优缺点有助于大家做出更合适的选择,从而提高数据库的性能和可靠性。

    MySql的存储引擎.doc

    查看表的存储引擎类型,可以使用`DESCRIBE tablename;`或`SHOW CREATE TABLE tablename;`命令。 了解并选择合适的存储引擎对于优化MySQL数据库的性能至关重要。比如,如果应用程序需要事务处理和高并发,InnoDB可能...

    深入解析:MySQL存储引擎的奥秘

    通过本文的详细介绍,我们深入了解了MySQL存储引擎的重要性以及不同存储引擎的特点和应用场景。选择合适的存储引擎对于优化MySQL数据库性能和确保数据一致性至关重要。希望本文能够帮助您更好地理解和运用MySQL存储...

    mysql存储与索引技术

    MySQL 数据库是一个广泛使用的开源关系型数据库管理系统,其性能很大程度上取决于存储引擎和索引的选取与使用。本文将深入探讨 MySQL 中的存储引擎和索引技术,帮助优化数据库性能。 首先,MySQL 提供了多种存储...

    MySQL修改数据表存储引擎的3种方法介绍

    本篇文章将详细介绍三种修改MySQL数据表存储引擎的方法。 1. 直接修改 直接修改是一种直接在SQL语句中指定新存储引擎的方式。例如,如果你想将名为`my_table`的数据表的存储引擎更改为InnoDB,可以使用以下ALTER ...

Global site tag (gtag.js) - Google Analytics