zoukankan      html  css  js  c++  java
  • MySQL查看和修改表的存储引擎(转载+加点东西)

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

       show engines;

    2 查看表使用的存储引擎

     两种方法:
     a、show table status from YOUR_DB_NAME where name='YOUR_TABLE_NAME';
     b、show create table YOUR_TABLE_NAME;
     如果显示的格式不好看,可以用g代替行尾分号
     
     有人说用第二种方法不准确,我试了下,关闭掉原先默认的Innodb引擎后根本无法执行show create table table_name指令,因为之前建的是Innodb表,关掉后默认用MyISAM引擎,导致Innodb表数据无法被正确读取。

    正确的方法:

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

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

    | Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length |

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

    |  t    | InnoDB |      10 | Compact    |    3 |           5461 |       16384 |               0 | 

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

    不正确的方法:

    show create table table_name;

    +-------+-----------------------------------------------------------------------------------------+
    | Table | Create Table                                                                                          |
    +-------+-----------------------------------------------------------------------------------------+
    | t     | CREATE TABLE `t` (
      `vc` varchar(1) DEFAULT NULL,
      `c` char(1) DEFAULT NULL,
      KEY `c` (`c`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
    +-------+------------------------------------------------------------------------------------------+

    如果mysqld没有启动对应的引擎如这里InnoDB,那么会使用默认的MYISAM引擎,所以不准确。

    3 修改表引擎方法
     alter table table_name engine=innodb;

    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

  • 相关阅读:
    大型网站核心架构因素
    大型网站架构模式
    博客中的文章归档是如何实现的
    Caused by: java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp
    git分支开发的好处
    layui之日期和时间组件
    vue-electron脚手架
    springboot1.5.4 配置druid1.1.0(使用druid-spring-boot-starter)
    Node.js读取文件内容并返回值(非异步)
    C# ftp ListFilesOnServer
  • 原文地址:https://www.cnblogs.com/sunshine-H/p/8022283.html
Copyright © 2011-2022 走看看