MySQL入门(二)
一 MySQL概述
MySQL是一个很受欢迎的开源数据库,当我从Oracle转来做MySQL的时候,感觉最深刻的一点就是,这家伙居然是Server和Storage分开的!而且更不能忍的是,它竟然是插件式存储引擎,每一种引擎的特点是很不相同的,当时我感觉这东西也太难学了吧,我要学多少个引擎啊。后来我发现不需要什么都学,因为现在用的最多的引擎基本上只有InnoDB和MyISAM,而在5.5以后,InnoDB大行其道,因此很多DBA只需要把InnoDB搞精通就可以了。
这张图是《高性能MySQL》中的一张插图,大体说明了MySQL的架构,其中最有趣的地方我觉得就是插件式存储引擎了。虽然说现在InnoDB应用广泛,但是还是有很多引擎适用于不同的场景,比如列式存储引擎infobright,做数据仓库一流,比如tokuDB,拥有一流的插入效率,压缩比也极高,非常适合于存储日志归档数据。这就是插件式存储引擎的好处,用最合适的存储引擎。

二 MySQL的分支
好用的开源软件都有分支,Linux如此,MySQL也不例外。MySQL现在有两个大的分支,MariaDB和Percona Server。其实我觉得Percona Server叫分支,倒不如叫MySQL的enhance版,因为我个人觉得,Percona Server更多的关注加强性能。另外Percona公司发布的XtraBackup和pt-tookit好用到没朋友的,这些利器可以让DBA在管理MySQL时如虎添翼。Percona Server在我写这个的时候还没有正式的推出5.7版本,但是已经有了候选版本。
另外,大名鼎鼎的《高性能MySQL》的作者就是Percona公司的工程师执笔写就的,堪称MySQL界的经典,没有之一的那种。
在MySQL AB公司被Sun收购之后,创始人发布了MariaDB。MariaDB的版本号到5.5都是和官方版保持一致的,但是之后就直接开始了10这个版本号。MariaDB更多的关注于新的功能,比如Hash Join这个官方版到现在还没有实现的算法,比如并行复制这个官方版5.7才推出的功能。
之前发现CentOS已经把MySQL替换成了MariaDB,据资料显示Facebook,Google等公司也已经转向了MariaDB,他们据说都是担心开源风险。其实大公司很多都有自己给MySQL提patch的能力,所以自己都有自己的分支。
------------------------------------------------------------------------------------------------------------------------------
今天又写了这么多乱七八糟的,看起来听没有用的,不过就算是热身吧,听得热闹说不定能勾起学习的兴趣。
MySQL入门(二)的更多相关文章
- <MySQL>入门二 增删改 DML
-- DML语言 /* 数据操作的语言 插入:insert 修改:update 删除:delete */ 1.插入 -- 插入语句 /* 语法:insert into 表名(列名...) values ...
- MySQL入门笔记(二)
MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询 子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...
- MySQL概述及入门(二)
MySql概述及入门(二) MySQL架构 逻辑架构图: 执行流程图: MySQL的存储引擎 查询数据库支持的存储引擎 执行: show engines: 多存储引擎是mysql有别于其他数据库的一大 ...
- 21分钟 MySQL 入门教程(转载!!!)
21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...
- MYSQL入门全套(第三部)
MYSQL入门全套(第一部) MYSQL入门全套(第二部) 索引简介 索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构.如果想按特定职员的姓来查找 ...
- MySQL入门(三)
写了两篇<MySQL入门>以后我发现,写书的人还是都挺有本事的,起码人家知道怎么编排自己想讲的知识点,我实在是不知道该先说那里后说哪里,那我就想到什么讲什么吧. 一 写SQL 其实我是不想 ...
- MySQL入门笔记
MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: · rpm包形式 · 通用二进制 ...
- MySQL入门转载
21分钟 MySQL 入门教程 http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html 目录 一.MySQL的相关概念介绍 二.Wi ...
- mysql 入门 基本命令
MYSQL入门学习之一:基本操作 1.登录数据库 www.2cto.com 命令:mysql -u username –p (mysql -h主机地址 -u用户名 -p用户密码) ...
- MySQL入门笔记(一)
一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_nam ...
随机推荐
- 【整理】 JavaScript模块化规范AMD 和 CMD 的区别有哪些?
根据玉伯等人在知乎上的回答整理.整理中... AMD 规范在这里:https://github.com/amdjs/amdjs-api/wiki/AMD CMD 规范在这里:https://githu ...
- 容器--HashMap
一.前言 看了下上一篇博客已经是半个月前,将近20天前了,很惭愧没有坚持下来,这期间主要是受奥运会和王宝强事件的影响,另外加上HashMap中关于rehash的实现比较不好理解,所以就一拖再拖.如果能 ...
- No.020:Valid Parentheses
问题: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the ...
- Git修改提交的用户名和Email
git config --global user.name "Your Name" git config --global user.email you@example.com
- GJM:用C#实现网络爬虫(二) [转载]
上一篇<用C#实现网络爬虫(一)>我们实现了网络通信的部分,接下来继续讨论爬虫的实现 3. 保存页面文件 这一部分可简单可复杂,如果只要简单地把HTML代码全部保存下来的话,直接存文件就行 ...
- BitcoinJS - 支持比特币交易的 JavaScript 库
BitcoinJS 是一个干净,可读的 JavaScript 开发库,用于比特币交易.支持 Node.js 平台和浏览器端.已有超过150万的钱包用户在使用, BitcoinJS 是几乎所有的 Web ...
- Resumable.js – 基于 HTML5 File API 的文件上传
Resumable.js 是一个 JavaScript 库,通过 HTML5 文件 API 提供,稳定和可恢复的批量上传功能.在上传大文件的时候通过每个文件分割成小块,每块在上传失败的时候,上传会不断 ...
- .net学习之路——调试程序
没有人的程序是完美的,这条规则对所有的程序员来说也成立.没有人能在第一次就写出完美的程序来. 调试工具分为两类,一类是被动的,你等待它们告诉你问题:还有一类是主动的,允许你在程序运行时深入观察,并在逐 ...
- NodeJS API简介
简单介绍下NodeJS现有API. Assert(断言):该模块用于编写程序的单元测试用例. Buffer(缓冲块) :处理二进制数据. C/C++ Addons(拓展):Addons插件就是动态连接 ...
- CSS学习总结(二)
一.id及class选择符 id和class的名称是由用户自定义的.id号可以唯一地标识html元素,为元素指定样式.id选择符以#来定义. 1.id选择符 注:在网页中,每个id名只能是唯一不重 ...