一.存储引擎介绍

1.我们知道mysql程序构成由连接层,sql层,存储引擎层。存储引擎层和磁盘进行交互,由其去取数据,而我们取得数据是表的形式展现出来,谁做的呢?就是存储引擎结构化成表的形式返回给用户。

2.我们都知道什么是文件系统(操作系统组织和存储数据的一种机制,一种软件),文件系统类型有许多种(xfs,ext2等),而存储引擎则类似于文件系统,不过功能更多,不仅仅用于提供基本的存取功能,还有更多功能事务功能、锁定、备份和恢复、优化、故障恢复以及特殊功能

二.MySQL自带的存储引擎类型

1.MySQL 提供以下存储引擎:
01)InnoDB  (行锁:改表中某一行的时候,不影响别人改其他行)
02)MyISAM (表锁:改表中任一数据时,别人都不能用)

03)MEMORY
04)ARCHIVE
05)FEDERATED
06)EXAMPLE
07)BLACKHOLE
08)MERGE
09)NDBCLUSTER
10)CSV

2.还可以使用第三方存储引擎:
01)MySQL当中插件式的存储引擎类型
02)MySQL的两个分支
03)perconaDB
04)mariaDB

3.查看自己是啥存储引擎

#查看当前MySQL支持的存储引擎类型
mysql> show engines
#查看innodb的表有哪些
mysql> select table_schema,table_name,engine from information_schema.tables where engine='innodb';
#查看myisam的表有哪些
mysql> select table_schema,table_name,engine from information_schema.tables where engine='myisam';

4.innodb和myisam的区别

#进入mysql目录
[root@db01~l]# cd /application/mysql/data/mysql
#查看所有user的文件
[root@db01 mysql]# ll user.*
-rw-rw---- mysql mysql Mar user.frm
-rw-rw---- mysql mysql Aug : user.MYD
-rw-rw---- mysql mysql Aug : user.MYI
#进入word目录
[root@db01 world]# cd /application/mysql/data/world/
#查看所有city的文件
[root@db01 world]# ll city.*
-rw-rw---- mysql mysql Aug : city.frm
-rw-rw---- mysql mysql Aug : city.ibd

5.innodb存储引擎在MySQL5.5版本之后,默认的存储引擎,提供高可靠性和高性能。

innodb的核心特性:MVCC,事务,行级锁,热备份,Crash Safe Recovery(自动故障恢复)

6.查看自身的默认存储引擎

SELECT @@default_storage_engine;

7.查看表的存储引擎

SHOW CREATE TABLE City\G
SHOW TABLE STATUS LIKE 'CountryLanguage'\G

8.使用 INFORMATION_SCHEMA 确认每个表的存储引擎

SELECT TABLE_NAME, ENGINE FROM 
INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'City'
AND TABLE_SCHEMA = 'world'\G

9.存储引擎的设置

在启动配置文件中设置服务器存储引擎
#在配置文件的[mysqld]标签下添加
[mysqld]
default-storage-engine=<Storage Engine>

 

使用 SET 命令为当前客户机会话设置

#在MySQL命令行中临时设置
SET @@storage_engine=<Storage Engine>

在 CREATE TABLE 语句指定

#建表的时候指定存储引擎
CREATE TABLE t (i INT) ENGINE = <Storage Engine>;

最新文章

  1. 利用hexo搭建博客
  2. 查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法
  3. iOS 支付 [支付宝、银联、微信](转载)
  4. 一个页面,多个flash(刚学jq插件)
  5. PROCEDURE_监测系统_告警信息存储过程—产生告警信息插入告警表
  6. Linux日志轮循实现(shell)
  7. Oracle启用scott用户
  8. DDGScreenShot--iOS 图片裁剪,切圆角,加边框,你还用cornerRadius,还有更高级的用法
  9. LCD调试
  10. numpy 性能提升
  11. oracle之存储过程和存储函数的使用和区别
  12. ML平台_PAI参考
  13. 现学现卖——VS2013 C#测试
  14. 10.Mysql索引
  15. java之Collection框架
  16. 【Maven安装】centos安装maven
  17. Ubuntu 14.04 更新gcc版本至4.9.2
  18. CSS中可以和不可以继承的属性【转】
  19. 求 LCA 的三种方法
  20. Json对象与Json字符串的转化

热门文章

  1. Mac下完全删除GarageBand
  2. Hbase集群部署
  3. 打通版微社区(4):微信第三方服务部署——JSP的IIS部署
  4. 同时对view延时执行两个动画时候的现象
  5. Linux入门-9 软件管理基础(CentOS)
  6. 第一课 PPT 所学内容总结
  7. svchost.exe占网速的解决办法
  8. 彻底解密 Spark 的 HashShuffle
  9. Linux下中间人攻击利用框架bettercap测试
  10. ubuntu 13.10 无法播放 mp3