【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

MySQL 计划对系统表采用 ACID

  • 2014-06-06
  • 本文字数:809 字

    阅读完需:约 3 分钟

MySQL 目前仍然用 MyISAM 而不是 InnoDB 存储其关键的系统表,这可能让许多开发者感到很惊讶。因为 MyISAM 并不是 ACID(原子性、一致性、隔离性和持久性)兼容的,当修改像权限这样的系统对象时,可能会导致数据丢失或损坏。Morgan Tocker 已经对外宣布 MySQL 团队计划使用 InnoDB 作为 MySQL 系统表的存储引擎

MyISAM 是 MySQL 最初使用的存储引擎。它基于 IBM 的主机数据库技术——索引顺序存取方法(Indexed Sequential Access Method),即 ISAM 。由于 MyISAM 不支持事务,也就没有与之相关的开销,所以它往往要比其他的数据库存储引擎速度更快一些。这种引擎的缺点在于它不是 ACID 兼容的,所以很容易造成数据损坏,特别是在电力故障的情况下。

MyIASM 的首选替代方案就是由 Innobase Oy 公司开发的 InnoDB 。因为其可以提供 ACID 兼容的事务、外键约束及其他一些功能,Oracle 在 MySQL5.5 就将 InnoDB 设定为默认的存储引擎。

目前仍在积极开发的其他 MySQL 存储引擎包括:

  • Oracle 开发的 Archive
  • Monty Program 公司的 Aria
  • Monty Program 公司的 CONNECT
  • Oracle 的 CSV
  • Oracle 的 NDB
  • Calpont 公司的 InfiniDB
  • TokuTek 公司的 TokuDB
  • Percona 公司的 XtraDB
  • Monty Program 公司的 FederatedX
  • Monty Program 公司的 CassandraSE
  • Monty Program 公司的 sequence
  • Monty Program 公司的 mroonga

尽管 MySQL 计划只支持 InnoDB,它的分支 MariaDB 对存储引擎的选择仍保持完全不可知的状态。

关于发布日期,Morgan 表示:

与包含明确功能的版本不同,开发里程碑版本(DMR)的‘发布列车’模型要求各个特性在合并之前必须已经处于稳定状态。所以我不想在这里提前透露还在开发初期的工作。只能说很快。:D

查看英文原文: MySQL to Adopt ACID for System Tables


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-06-06 04:352327
用户头像

发布了 75 篇内容, 共 61.9 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

日期格式化 YYYY-MM-DD 出现时间偏移量

HoneyMoose

easyrecovery2023手机版数据恢复软件下载

茶色酒

EasyRecovery EasyRecovery15 easyrecovery2023

3月寒窗!啃透美团保姆级分布式进阶技术手册,4月终入美团定L8

程序知音

Java 分布式 java架构 后端技术

AngularJS进阶(十四)AngularJS路由问题分析

No Silver Bullet

路由 AngularJS 12月月更

架构实战-模块1作业

mm

架构实战营 10期

防治“虚假种草”,小红书技术团队干了这几件大事

小红书技术REDtech

架构实战营模块1第2课 - 如何画出优秀的架构图

净意

“算法考核没过,老板找我聊了3个小时”:离职程序员重刷数学题

钟奕礼

Java 程序员 java面试 java编程

C语言怎么给函数添加形参的默认值

eng八戒

c 函数 参数默认值

迎战大厂!“金九银十”和秋招通过率达95%的Java面试要点集锦

钟奕礼

Java 程序员 java面试 java编程

cmake 入门笔记

eng八戒

c makefile 工程管理 cmake C++

程序员:平安Java岗面试耗尽了我毕生所学,想了想,还是去阿里吧

钟奕礼

Java 程序员 java面试 java编程

太简单了,一文彻底搞懂Jenkins的用法!

Jackpop

EasyRecovery2023个人免费版电脑数据恢复软件

茶色酒

EasyRecovery easyrecovery2023

信号量的无序竞争和有序竞争

eng八戒

c Linux Kenel 信号量 C++

8年程序员年初被迫毕业,前后面试30家公司,如今终于拿到Offer!

程序员小毕

程序员 面试 程序人生 后端 架构师

面向场景级的业务资产沉淀和开放

原力在线

架构 DDD 场景 业务资产

Apache NiFi + MatrixDB 20行代码实现数据实时入库!

YMatrix 超融合数据库

三一重工 超融合数据库 YMatrix apachenifi nifi

一文了解 Go 接口

陈明勇

Go golang 接口

看完这篇,还不懂JAVA内存模型(JMM)算我输

JAVA旭阳

Java 并发

AngularJS进阶(十五)Cookie ‘data‘ possibly not set or overflowed because it was too large

No Silver Bullet

Cookie AngularJS 12月月更

思路一转,春暖花开!动动手指,这段程序性能又双叒提升2s~15s

靠谱的程序员

MySQL MyBatisPlus Mybatis-Plus

Linux Network RSS RPS 疑惑

Geek_f24c45

container network veth RPS

面对当下最热的多模态,为什么这些业界和学界专家说“不必追热点”

小红书技术REDtech

亚马逊 CTO Werner Vogels:2023 年及未来五大技术趋势预测

亚马逊云科技 (Amazon Web Services)

人工智能 大数据 亚马逊云科技

下次面试再一上来就问我线程有哪些状态,我上去就是给他一 jio

钟奕礼

Java 程序员 java面试 java编程

刨析一下C++构造析构函数能不能声明为虚函数的背后机理?

eng八戒

继承 纯虚函数 C++

Linux 定时器介绍

eng八戒

c 定时器 Linux Kenel C++

AngularJS进阶(十六)脏值检查及语音识别集成

No Silver Bullet

语音识别 AngularJS 12月月更 脏值检查

MySQL锁,锁的到底是什么?

Java永远的神

MySQL 数据库 程序员 面试 后端

100页6W字的Java面试题,去过大厂面试的程序员都说被问到过

钟奕礼

Java 程序员 java面试 java编程

MySQL计划对系统表采用ACID_数据库_Jonathan Allen_InfoQ精选文章