MySQL引擎详解(一)——引擎基本原理和操作
今天继续给大家介绍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引擎详解(一)——引擎基本原理和操作相关推荐
- mysql 规则引擎_Drools规则引擎详解-常用的drl实例
package droolsDemo //说明:每个 drl 都必须声明一个包名,这个包名与 Java 里面的不同,它不需要与文件夹的层次结构一致, //主要用于可以根据kmodule.xml中不同的 ...
- 十六、MySQL 视图详解
文章目录 一.常见的数据库对象 二.视图概述 2.1 为什么要使用视图? 2.2 视图的理解 2.3 视图的作用 三.视图常用操作 3.1 查看创建视图的权限 3.2 创建视图 3.3 查看视图 3. ...
- MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测) 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过 ...
- Mysql存储引擎详解(MyISAM与InnoDB的区别)
Mysql存储引擎详解(MyISAM与InnoDB的区别) 存储引擎 MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平 ...
- mysql 社区版 innodb_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测) / -------------------- 写在最前面 ------------------ ...
- 史上最简单MySQL教程详解(进阶篇)之存储引擎介绍及默认引擎设置
什么是存储引擎? MySQL存储引擎种类 MyISAM 引擎 InnoDB引擎 存储引擎操作 查看存储引擎 存储引擎的变更 修改默认引擎 什么是存储引擎? 与其他数据库例如Oracle 和SQL Se ...
- 如何查看mysql数据库的引擎/MySQL数据库引擎详解
一般情况下,mysql会默认提供多种存储引擎,你可以通过下面的查看: 看你的mysql现在已提供什么存储引擎: mysql> show engines; 看你的mysql当前默认的存储引擎: m ...
- MySQL常用存储引擎详解
MySQL常用存储引擎详解 一.什么是存储引擎 二.掌握存储引擎的重要性 三.MySQL常用的存储引擎有哪些 四.存储引擎的特性 1.InnoDB 2.MyISAM 3.MEMORY 4.ARCHIV ...
- python 规则引擎 drools_Drools规则引擎详解-常用的drl实例
关于Drools规则引擎,之前已经写了几篇相关文章,如果大家不熟悉的可以移步了解下: 本篇博客主要为大家列举一些常用,简单的drl文件,帮助大家更加深入地了解其drl文件地编写格式及常用的操作符 说明 ...
- CRY ENGINE 3 引擎详解
转载的. CRY ENGINE 3 引擎详解 "在今年,2009 年CRYTEK 宣布 CRY ENGINE 成功的移植到了家用机的 PS3 以及 Xbox360 平台,在 GDC2009 ...
最新文章
- 简单多边形与圆交面积模板
- 高并发下Java多线程编程基础
- AVAudioSession
- iptables time 时间匹配规则
- stl变易算法(一)
- java session 使用_浅谈Session的使用(原创)
- STM32F407 硬件IIC驱动MCP4017 数字电位器
- dropbox访问_使用PHP访问Dropbox
- 基本数据类型的默认值
- MFC—显示NX图标或透明背景图标
- 十天干、十二地支的发音及含义
- 使用uniapp做海报的坑
- 25 岁,毕业写前端的这三年,多益网络java面试
- 关于电气工程及其自动化学科,国家电网的这些事你都知道吗?
- 图像分类,一文入魂(上)
- oracle中sum求和
- PTA 数据结构课程设计 7-10 旅游规划
- 无纸化会议软件| 轻会议,简化会议周期
- MTK隐藏导航栏,去掉下拉,永不锁屏,永不灭屏
- 【综合】发帖顶你--汉字点阵字库操作