概述
1.MySQL提供的存储引擎
InnoDB
MyISAM
MEMORY
ARCHIVE
FEDERATED
EXAMPLE
BLACKHOLE
MERGE
NDBCLUSTER
CSV
除了以上一些存储引擎,MySQL还可以使用第三方存储引擎:
- MySQL当中插件式的存储引擎类型
- MySQL的2个分支
- perconaDB
- MariaDB
2.查看MySQL的存储引擎
查看当前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';
3.InnoDB和MyISAM物理上的区别
InnoDB存储引擎物理文件
[root@db01 ~]# cd /usr/local/mysql/data/world/
[root@db01 world]# ll city.*
-rw-rw---- 1 mysql mysql 8710 Jun 15 21:37 city.frm #表结构文件
-rw-rw---- 1 mysql mysql 835584 Jun 15 21:41 city.ibd #表数据文件
MyISAM存储引擎物理文件
[root@db01 ~]# cd /usr/local/mysql/data/mysql
[root@db01 mysql]# ll user.*
-rw-rw---- 1 mysql mysql 10684 Jun 4 16:17 user.frm #表结构文件
-rw-rw---- 1 mysql mysql 1164 Jun 10 20:18 user.MYD #表数据文件
-rw-rw---- 1 mysql mysql 2048 Jun 11 22:39 user.MYI #表索引文件
4.InnoDB存储引擎
从MySQL5.5版本之后,MySQL的默认内置存储引擎已经是InnoDB。
InnoDB存储引擎特点
事务安全(遵从 ACID)
MVCC(Multi-Versioning Concurrency Control,多版本并发控制)
InnoDB 行级别锁定
Oracle 样式一致非锁定读取
表数据进行整理来优化基于主键的查询
支持外键引用完整性约束
大型数据卷上的最大性能
将对表的查询与不同存储引擎混合
出现故障后快速自动恢复
用于在内存中缓存数据和索引的缓冲区池
InnoDB核心特性
MVCC
事务
行级锁
热备份
自动故障恢复 CSR(Crash Safe Recovery)
5.存储引擎相关命令
5.1 查看默认存储引擎
mysql> SELECT @@default_storage_engine;
mysql> SHOW VARIABLES LIKE "default_storage_engine";
5.2 查看指定表的存储引擎
mysql> SHOW CREATE TABLE city;
mysql> SELECT TABLE_SCHEMA,TABLE_NAME,ENGINE FROM information_schema.tables WHERE TABLE_NAME='city';
5.3 设置存储引擎
临时设置存储引擎
mysql> SET GLOBAL default_storage_engine=InnoDB;
永久设置存储引擎
在配置文件/etc/my.cnf里面设置,可以永久生效
[mysqld]
default_storage_engine=InnoDB
建表时指定存储引擎
mysql> CREATE TABLE tb01(id int) ENGINE=InnoDB;
最后
以上就是要减肥春天为你收集整理的MySQL第三方查询引擎_MySQL 存储引擎的全部内容,希望文章能够帮你解决MySQL第三方查询引擎_MySQL 存储引擎所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复