今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL引擎相关知识。

一、MySQL引擎简介

MySQL的每个数据表都会有一个引擎,不同类型的引擎决定了该数据表的数据存储格式,不同的数据引擎对数据表的存储空间、查询速度、并发量以及对索引等的支持程度是不同的。
MySQL常见的引擎是MyISAM和InnoDB两种,这两种引擎是以插件的形式在MySQL中存在的。在之后的文章中,我们将介绍MyISAM和InnoDB引擎的区别,今天,我们先来学习MySQL引擎的一些基本操作命令。

二、MySQL引擎基本操作

下面,我们来介绍MySQL引擎的一些常用基本操作。

(一)查看MySQL表使用的引擎

执行命令:

show create table 【表名】;

可以查看该数据表所使用的引擎,MyISAM和InnoDB引擎的表在执行该命令时现象如下所示:

(二)创建表时指定引擎

我们在创建数据表前,最好先根据业务场景,确定数据表所要使用的引擎,尽量避免在创建数据表后再对引擎进行修改。MySQL5.1及之前的版本中,MySQL数据表默认引擎是MyISAM,在MySQL5.5及之后的版本中,MySQL数据表默认的引擎是InnoDB。如果我们在创建表时指定引擎,可以执行命令:

create table 【表名】 【字段信心】 ENGINE=MyISAM;

或者是

create table 【表名】 【字段信心】 ENGINE=InnoDB;

这样,就可以在创建数据表时指定数据表的引擎了。

(三)创建表后修改引擎

有时,由于一些业务场景的变迁,或者其他的因素,我们会遇上需要批量修改数据表的情景,这时就要非常注意,因为事务、索引、外键约束等内容与数据表引擎息息相关。MySQL数据库支持使用alter命令修改数据表的引擎,修改数据表引擎的SQL命令如下:

alter table 【表名】 set ENGINE=MyISAM;

或者是:

alter table 【表名】 set ENGINE=InnoDB;

(四)使用数据导入导出的方式批量修改引擎

如果要修改引擎的数据表过多,我们可以采用数据库导入导出的方式对数据表引擎进行批量修改。
我们可以通过mysqldump命令将数据库文件导出到一个.sql文件中,然后使用sed命令批量将该文件中的所有MyISAM引擎更换为InnoDB引擎,或者相反的操作。
然后,再把引擎导入会数据库,这样,就可以批量对数据库引擎进行修改了。

(五)使用mysql_convert_table_fromat命令批量修改引擎

除了使用数据导入和导出的方式批量修改引擎外,还可以使用MySQL自带的mysql_convert_table_format命令进行批量修改引擎,mysql_convert_table_format是MySQL自带的可以实现数据库批量修改引擎的插件,利用该插件可以快速的批量修改数据表的引擎。该命令执行示例如下:

mysql_convert_table_fromat --user=root --password=root --engine=MyISAM exp

在上述命令中,利用–user、–password和–engine参数分别指定了数据库的用户名、密码和要修改的引擎,最后的exp为数据库名,该命令执行后,就可以将该数据库内所有数据表修改为MyISAM引擎了。
上述命令执行结果如下:



原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

MySQL引擎详解(一)——引擎基本原理和操作相关推荐

  1. mysql 规则引擎_Drools规则引擎详解-常用的drl实例

    package droolsDemo //说明:每个 drl 都必须声明一个包名,这个包名与 Java 里面的不同,它不需要与文件夹的层次结构一致, //主要用于可以根据kmodule.xml中不同的 ...

  2. 十六、MySQL 视图详解

    文章目录 一.常见的数据库对象 二.视图概述 2.1 为什么要使用视图? 2.2 视图的理解 2.3 视图的作用 三.视图常用操作 3.1 查看创建视图的权限 3.2 创建视图 3.3 查看视图 3. ...

  3. MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)

    MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测) 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过 ...

  4. Mysql存储引擎详解(MyISAM与InnoDB的区别)

    Mysql存储引擎详解(MyISAM与InnoDB的区别) 存储引擎     MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平 ...

  5. mysql 社区版 innodb_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)

    MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测) / --------------------         写在最前面            ------------------ ...

  6. 史上最简单MySQL教程详解(进阶篇)之存储引擎介绍及默认引擎设置

    什么是存储引擎? MySQL存储引擎种类 MyISAM 引擎 InnoDB引擎 存储引擎操作 查看存储引擎 存储引擎的变更 修改默认引擎 什么是存储引擎? 与其他数据库例如Oracle 和SQL Se ...

  7. 如何查看mysql数据库的引擎/MySQL数据库引擎详解

    一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看: 看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你的mysql当前默认的存储引擎: m ...

  8. MySQL常用存储引擎详解

    MySQL常用存储引擎详解 一.什么是存储引擎 二.掌握存储引擎的重要性 三.MySQL常用的存储引擎有哪些 四.存储引擎的特性 1.InnoDB 2.MyISAM 3.MEMORY 4.ARCHIV ...

  9. python 规则引擎 drools_Drools规则引擎详解-常用的drl实例

    关于Drools规则引擎,之前已经写了几篇相关文章,如果大家不熟悉的可以移步了解下: 本篇博客主要为大家列举一些常用,简单的drl文件,帮助大家更加深入地了解其drl文件地编写格式及常用的操作符 说明 ...

  10. CRY ENGINE 3 引擎详解

    转载的. CRY ENGINE 3 引擎详解 "在今年,2009 年CRYTEK 宣布 CRY ENGINE 成功的移植到了家用机的 PS3 以及 Xbox360 平台,在 GDC2009 ...

最新文章

  1. 简单多边形与圆交面积模板
  2. 高并发下Java多线程编程基础
  3. AVAudioSession
  4. iptables time 时间匹配规则
  5. stl变易算法(一)
  6. java session 使用_浅谈Session的使用(原创)
  7. STM32F407 硬件IIC驱动MCP4017 数字电位器
  8. dropbox访问_使用PHP访问Dropbox
  9. 基本数据类型的默认值
  10. MFC—显示NX图标或透明背景图标
  11. 十天干、十二地支的发音及含义
  12. 使用uniapp做海报的坑
  13. 25 岁,毕业写前端的这三年,多益网络java面试
  14. 关于电气工程及其自动化学科,国家电网的这些事你都知道吗?
  15. 图像分类,一文入魂(上)
  16. oracle中sum求和
  17. PTA 数据结构课程设计 7-10 旅游规划
  18. 无纸化会议软件| 轻会议,简化会议周期
  19. MTK隐藏导航栏,去掉下拉,永不锁屏,永不灭屏
  20. 【综合】发帖顶你--汉字点阵字库操作

热门文章

  1. NLP—1.自然语言处理的基础任务与应用
  2. 梯度消失与梯度爆炸---解决方案(二)--杀手锏
  3. 无意中最大的收获:《构建高性能Web站点》
  4. IT技术中的言情小说
  5. 快速排序 Vs. 归并排序 Vs. 堆排序——谁才是最强的排序算法
  6. 用通俗易懂的方式告诉你什么是EM算法
  7. eclipse导入github项目(踩多个坑后发现这个最实用)
  8. 反向传播算法(BP)学习笔记
  9. 下滑加载更多js_jquery实现移动端下拉加载更多
  10. C++ char,int 之间的相互转换