与其他数据库软件不同,MYSQL数据库软件提供了一个名为存储引擎的概念。存储引擎是MYSQL数据库管理系统的一个重要特征,在具体开发时,为提高MYSQL数据库管理系统的使用效率和灵活性,可以根据实际需要来选择存储引擎。
存储引擎指定了表的类型,即如何存储和索引数据、是否支持事务等,同时存储引擎也决定了表在计算机中的存储方式。
1、用户在选择存储引擎之前,首先需要确定数据库管理系统支持哪些存储引擎。可通过如下SQL命令查看所支持的存储引擎。
方法一:SQL命令:SHOW ENGINES
其中Engine参数表示存储引擎名称;
Support参数表示MYSQL数据库管理系统是否支持该存储引擎,YES表示支持,NO表示不支持,DEFAULT表示该存储引擎是数据库管理系统默认支持的存储引擎;
Comment参数表示关于存储引擎的评论;
Transactions参数表示存储引擎是否支持事务,值YES表示支持,值NO表示不支持;
XA参数表示存储引擎所支持的分布式是否符合XA规范,值YES表示支持,值NO表示不支持;
Savepoints参数表示存储引擎是否支持事务处理中的保存点,值YES表示支持,值NO表示不支持;
特别说明:在具体执行SQL语句中,可以用";"、"\g"、"\G"符号表示语句结束。前两个符号的作用一样,最后一个符号除了表示语句结束之外,还可以使结果显示的更加美观。
方法二:SQL命令:SHOW VARIABLES LIKE 'have%';
在显示结果中,variable_name 参数表示存储引擎的名字;
Value参数表示MYSQL数据库管理系统是否支持存储引擎,值YES表示支持,值NO表示不支持,值DISABLED表示支持但是还未开启。
2、查询默认存储引擎
SQL命令:SHOW VARIABLES LIKE 'default_storage_engine%';
3、修改默认存储引擎
在MYSQL数据库管理系统中,如果需要修改默认存储引擎,可以通过两种方式来实现。
一种方式为向导方式,另一种方式为手动修改配置文件方式。
下面介绍手动修改配置文件方式:
需要修改MYSQL数据库管理系统的配置文件my.ini,首先打开my.ini文件,可以通过如下方式找到my.ini配置稳健的路径。
①。在计算机上点击右键,选择管理,进入如下界面:
②。选择服务和应用程序,双击,出现如下界面:
③。选择服务,双击,可以在右侧看到所有的服务器列表。
由于我的机子上安装的是MYSQL5.7,所以看到有MYSQL57的服务器正在运行。
④。在服务器上右击,选择属性。
可以看到可执行文件路径中会有本机配置文件my.ini的安装路径信息。
找到配置文件之后,打开配置文件my.ini。
如果需要修改默认存储引擎,只需修改default_storage_engine参数。
可以修改成default-storage-engine=MyISAM即可实现。
如果想使修改后的参数生效,必须重启MYSQL服务器。
重启服务器之后,再次执行SQL语句 SHOW VARIABLES LIKE 'default_storage_engine%';
可以看到修改已经生效了。
4、常用存储引擎介绍
下面主要介绍MyISAM、InnoDB、MEMORY三种存储引擎。
MyISAM存储引擎:不支持事务、也不支持外键、访问速度较快。因此对事务完整性没有要求并以访问为主的应用适合使用该存储引擎。
InnoDB存储引擎:在事务上具有优势,即支持具有提交、回滚和崩溃恢复能力的事务安装,所以比MyISAM存储引擎占用更多的磁盘空间。因此需要频繁的更新、删除操作,同时还对事物的完整性要求比较高,需要实现并发控制,此时适合使用该存储引擎。
MEMORY存储引擎:该存储引擎使用内存来存储数据,因此该存储引擎的数据访问速度快,但是安全上没有保障。如果应用中涉及数据比较小,需要进行快速访问,则适合使用该存储引擎。