现在的位置: 首页 > 综合 > 正文

MySQL修改默认存储引擎

2012年04月08日 ⁄ 综合 ⁄ 共 1156字 ⁄ 字号 评论关闭

mysql存储引擎:

MySQL服务器采用了模块化风格,各部分之间保持相对独立,尤其体现在存储架构上。存储引擎负责管理数据存储,以及MySQL的索引管理。通过定义的API,MySQL服务器能够与存储引擎进行通信。目前使用最多的是MyISAM和InnoDB。InnoDB被Oracle收购后,MySQL自行开发的新存储引擎Falcon将在MySQL6.0版本引进。

MyISAM引擎是一种非事务性的引擎,提供高速存储和检索,以及全文搜索能力,适合数据仓库等查询频繁的应用。MyISAM中,一个table实际保存为三个文件,.frm存储表定义,.MYD存储数据,.MYI存储索引。

InnoDB则是一种支持事务的引擎。所以的数据存储在一个或者多个数据文件中,支持类似于Oracle的锁机制。一般在OLTP应用中使用较广泛。如果没有指定InnoDB配置选项,MySQL将在MySQL数据目录下创建一个名为ibdata1的自动扩展数据文件,以及两个名为ib_logfile0和ib_logfile1的日志文件。

创建table时可以通过engine关键字指定使用的存储引擎,如果省略则使用系统默认的存储引擎:CREATE TABLE t (i INT) ENGINE = MYISAM;

查看系统中支持的存储引擎类型:

1 mysql>
show engines;| Engine | Support | Comment || MyISAM | YES | Default engine as of MySQL 3.23 with greatperformance |
2 |
MEMORY | YES | Hash based, stored in memory, useful for temporarytables |
3 |
InnoDB | DEFAULT | Supports transactions, row-level locking, andforeign keys |
4 |
BerkeleyDB | NO | Supports transactions and page-level locking|
5 |
BLACKHOLE | NO | /dev/null storage engine (anything you write toit disappears) |
6 |
EXAMPLE | NO | Example storage engine |
7 |
ARCHIVE | YES | Archive storage engine |
8 |
CSV | NO | CSV storage engine |
9 |
ndbcluster | NO | Clustered, fault-tolerant, memory-based tables|
10 |
FEDERATED | NO | Federated MySQL storage engine |
11 |
MRG_MYISAM | YES | Collection of identical MyISAM tables |

抱歉!评论已关闭.