Mysql存储引擎(一)------概述
前言
一、这篇博文主要需要搞懂以下几个问题:
1、什么是存储引擎?
2、为什么有存储引擎的存在?
3、Mysql数据库有哪些存储引擎?
4、其他主流的数据库分别都有哪些存储引擎?
二、 分述:
1、什么是存储引擎?
存储引擎可以这样理解:所谓存储引擎就是数据库如何存储数据,如何为存储的数据建立索引和如何更 新,查询数据等技术的实现方法。因为在关系型数据库中数据的存储是以表的形式存储的,所以存储引擎 也可以称之为表的类型(即存储和操作表的类型)。
在Oracle和SQL Server等数据库中只有一种存储引擎,所有数据库的存储和管理机制都是一样的,然而区别于其 他数据库的Mysql数据库提供了多种不同的存储引擎。用户可以根据不同的需求为数据库表选择不同的存储引擎,用户也 可以根据自己的需求编写自己的存储引擎。
2、数据库为什么需要存储引擎?
存储引擎是数据的存储机制,是关系型数据库存储和使用表的一个引导,因此可以这么理解“存储引擎是任何一中 数据库的灵魂和基础”因此对存储引擎有一个透彻的理解可以为我们使用数据库带来游刃有余的裨益。
3、Mysql数据库有哪些存储引擎?
①、如何查看当前Mysql数据库支持的存储引擎情况:
再命令行登陆mysql数据库之后可以使用命令"show engines"查看当前Mysql支持的存储引擎情况如图1:
图1
从以上的截图中不难看出在第二列"Support"列中标注为“YES”的项都是Mysql所支持的存储引擎格式。并且Mysql默认支持的存储引擎为InnDB格式。
②、如何查看Mysql默认支持的存储引擎格式:
方法一:
在执行命令“show engines”之后会有一列Support,显示为DEFAULT的即为当前数据库默认的存储引擎格式,如图1:
方法二:
在Mysql的配置文件中有一个“default_storage_engine”即为Mysql数据库默认的存储引擎格式。
4、其它主流数据库的存储引擎格式?
除了Mysql数据库存储引擎有多种不同的选择外,其它主流数据库Orqcle,SQL Server等数据库都只有一种默认的 存储引擎。关于Oracle数据库的存储引擎在之后的博文中会陆续介绍。