MySQL 存储引擎

环境:
 5.6.17 MySQL Community Server (GPL)

MySql中的数据信息通过不同的技术存储在文件或者内存中,这些不同的技术被称之为存储引擎。
选择不同的存储引擎可以达到不同的服务效果。
查询MySql支持的存储引擎:
mysql> show variables like 'have%';
+----------------------+----------+
| Variable_name        | Value    |
+----------------------+----------+
| have_compress        | YES      |
| have_crypt           | NO       |
| have_csv             | YES      |
| have_dynamic_loading | YES      |
| have_geometry        | YES      |
| have_innodb          | YES      |
| have_ndbcluster      | NO       |
| have_openssl         | DISABLED |
| have_partitioning    | YES      |
| have_profiling       | YES      |
| have_query_cache     | YES      |
| have_rtree_keys      | YES      |
| have_ssl             | DISABLED |
| have_symlink         | YES      |
+----------------------+----------+
14 rows in set (0.05 sec)

mysql> show Engines\g
+--------------------+---------+----------------------------------------------------------------+--------
------+------+------------+
| Engine             | Support | Comment                                                        | Transac
tions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------
------+------+------------+
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL
      | NULL | NULL       |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO
      | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO
      | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO
      | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO
      | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO
      | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO
      | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES
      | YES  | YES        |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO
      | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------
------+------+------------+
9 rows in set (0.00 sec)

我们得到这样的信息: InnoDB 是默认的存储引擎
 
InnoDB 存储引擎在这些方面能体现优势:更新密集的表;事务管理;崩溃修复
缺点:读写效率稍差。

MyIsam 存储引擎曾经是MySql默认的存储引擎。有三种存储格式:静态型,动态型,压缩型。
静态:表的列的大小都是静态的。不用varchar等数据类型
动态:节省空间,但是性能下降。可使用optimize table语句整理碎片
它的优点:占用空间小,速度快。
它的缺点:不支持事务的完整性和并发性

Memory存储引擎:
默认为hash索引,数据存储在内存中,使用它的表的生命周期短,几乎都是一次性的。
也正因为在内存中,速度快,性能提高了,但是不适于长期存储的数据。

使用InnoDB 存储引擎创建表:inno_db
查看文件后缀名。


使用Memory存储引擎创建表:


表文件:


使用MyISAM存储引擎:


表文件:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值