首页 >数据库 >mysql教程 >MySQL to Adopt ACID for System Tables_MySQL

MySQL to Adopt ACID for System Tables_MySQL

WBOY
WBOY原创
2016-06-01 13:13:131062浏览

In what is probably a surprise to many developers, MySQL currently stores its critical system tables in MyISAM instead of InnoDB. Since MyISAM isn’t ACID compliant, there is a chance for data loss or corruption when modifying system objects such as privilege. Morgan Tocker has announced thatthe MySQL team intends to use InnoDB for system tables.

MyISAMis the original storage engine for MySQL. It is based on IBM’s mainframe database technology known as Indexed Sequential Access Method orISAM. Because it doesn’t support transactions and the associated overhead, MyISAM tends to be faster than other database storage engines. The downside of this is that it isn’t ACID compliant and is prone to data corruption, especially during power failure scenarios.

The primary alternative to MyIASM isInnoDB, which was created by the Innobase Oy. Because it offers ACID-compliant transactions and foreign key constraints, among other features, Oracle made it the default storage engine in MySQL 5.5.

Other storage engines for MySQLstill in active development include:

  • Archive by Oracle
  • Aria by Monty Program
  • CONNECT by Monty Program
  • CSV by Oracle
  • NDB by Oracle
  • InfiniDB by Calpont
  • TokuDB by TokuTek
  • XtraDB by Percona GPL
  • FederatedX by Monty Program
  • CassandraSE by Monty Program
  • sequence by Monty Program
  • mroonga by Monty Program

While MySQL is planning to support InnoDB only, the forkMariaDBhas instead chosen to be fully agnostic.

As far as release dates are concerned, Morgan writes,

The DMR 'release train' model requires for features to be stable before being merged, rather than releases holding for specific features. So I don't want to get ahead of myself here for work that is in early development. Soon :D

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn