一 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入门(二)的更多相关文章

  1. <MySQL>入门二 增删改 DML

    -- DML语言 /* 数据操作的语言 插入:insert 修改:update 删除:delete */ 1.插入 -- 插入语句 /* 语法:insert into 表名(列名...) values ...

  2. MySQL入门笔记(二)

    MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询   子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...

  3. MySQL概述及入门(二)

    MySql概述及入门(二) MySQL架构 逻辑架构图: 执行流程图: MySQL的存储引擎 查询数据库支持的存储引擎 执行: show engines: 多存储引擎是mysql有别于其他数据库的一大 ...

  4. 21分钟 MySQL 入门教程(转载!!!)

    21分钟 MySQL 入门教程 目录 一.MySQL的相关概念介绍 二.Windows下MySQL的配置 配置步骤 MySQL服务的启动.停止与卸载 三.MySQL脚本的基本组成 四.MySQL中的数 ...

  5. MYSQL入门全套(第三部)

    MYSQL入门全套(第一部) MYSQL入门全套(第二部) 索引简介 索引是对数据库表中一个或多个列(例如,employee 表的姓名 (name) 列)的值进行排序的结构.如果想按特定职员的姓来查找 ...

  6. MySQL入门(三)

    写了两篇<MySQL入门>以后我发现,写书的人还是都挺有本事的,起码人家知道怎么编排自己想讲的知识点,我实在是不知道该先说那里后说哪里,那我就想到什么讲什么吧. 一 写SQL 其实我是不想 ...

  7. MySQL入门笔记

    MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制 ...

  8. MySQL入门转载

    21分钟 MySQL 入门教程 http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html 目录 一.MySQL的相关概念介绍 二.Wi ...

  9. mysql 入门 基本命令

    MYSQL入门学习之一:基本操作  1.登录数据库    www.2cto.com     命令:mysql -u username –p (mysql -h主机地址 -u用户名 -p用户密码)   ...

  10. MySQL入门笔记(一)

    一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_nam ...

随机推荐

  1. expect笔记

    #!/usr/bin/expect -f set ip [lindex $argv 0]; set password [lindex $argv 1];  set timeout 1 spawn ss ...

  2. 几个最常用的Mysql命令

    shell>mysql -u用户名 -p密码 mysql>show databases; mysql>use 数据库名称; mysql>show tables; mysql&g ...

  3. Spring mvc web.xml中 urlpatten的配置问题

    在使用spring mvc 是我们会配置spring 的DispatcherServlet作为请求的转发器. <servlet> <servlet-name>spring< ...

  4. Python遍历文件夹

    许多次需要用python来遍历目录下文件, 这一次就整理了记录在这里. 随实际工作,不定期更新. import os class FileTraversal: def __init__(self, r ...

  5. InfluxDB学习之InfluxDB的HTTP API写入操作

    HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式.     在InfluxDB学习的上一篇文章:InfluxDB学习之InfluxDB ...

  6. ahjesus可供C#使用的ip地理位置查询插件

    http://dev.maxmind.com/geoip/geoip2/downloadable/#MaxMind_APIs 详情请阅读此链接及相关内容

  7. shell脚本(管理守护进程)

    工作中常常会遇到处理消息队列的消费者进程,这样的进程是一个守护进程,即一个服务.服务通常写个shell脚本来管理,查询服务的status  ,启动start 关闭stop  重启reload.最近在学 ...

  8. Servlet—简单的管理系统

    网站的框架 网站的框架采用MV模式,即Model(模型).View(视图).框架将界面层和模型层进行分离,结构更清晰,更加方便管理代码. 其中上图框架中的修改和删除功能完成而添加查询模块没有编写 实现 ...

  9. [TypeScript] Dictionary范例

    [TypeScript] Dictionary范例 Playground http://tinyurl.com/o7czcxo Samples class Dictionary { [index: s ...

  10. Ext.Net MVC 配置(1)

    1.在VS2012中创建MVC3项目 2.在项目总启动NuGet,在里面安装Ext.net 3.安装Ext.net 4.安装完成后项目中相关的配置文件就会有所改变了. 5.测试:运行mvc项目:htt ...