一 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. Python程序员的进化史

    各种程序员所写的阶乘算法代码 # -*- coding: utf-8 -*- #新手程序员(递归) def factorial(x): if x == 0: return 1 else: return ...

  2. 指针,&的用法

    #include "stdafx.h" #include <stdio.h> #include <string.h> int main() { ] = {, ...

  3. 操作系统与c语言

      以下是根据看书后的理解做的总结:   最早,unix是使用汇编编写,但是非常简单.后来觉得汇编,换种机器又得重新用另外一种机器汇编重写,太麻烦.于是想设计一种通用的语言,到各种机器上都能运行 当时 ...

  4. svn利用钩子实现代码同步到web目录

    思路:  找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹.在该文件夹中添加一个post- commit文件:当有commit动作发 ...

  5. Java接口之间的继承

    /** * Created by xfyou on 2016/11/3. * 多接口之间的继承 */ public class HorrorShow { static void u(Monster b ...

  6. java集合-hashCode

    hashCode 的作用 在 Java 集合中有两类,一类是 List,一类是 Set 他们之间的区别就在于 List 集合中的元素师有序的,且可以重复,而 Set 集合中元素是无序不可重复的.对于 ...

  7. ASP.NET根据URL生成网页缩略图示例程序(C#语言)

    工作中可能马上要用到根据URL生成网页缩略图功能,提前做好准备. 在网上找了份源码,但是有错误:当前线程不在单线程单元中,因此无法实例化 ActiveX 控件“8856f961-340a-11d0-a ...

  8. padding下中英文左右两端对齐

    <!DOCTYPE html> <html> <head> <meta charset='UTF-8'> <title>helo</t ...

  9. WindowsForm如何实现类似微软project软件的甘特图?

    在管理软件研发过程中,特别是涉及项目管理或者生产计划方面,都需要一款类似微软project的控件对项目下的分解任务进行图形展示(甘特图).下面介绍一下在WindowsForm下如何实现类似微软proj ...

  10. strurts2入门

    MVC :struts2是一个经典开源的mvc框架.主要负责控制器(Controller)   处理请求特点: 核心控制器:  +Actions; 与ServletAPI解耦合: 非单例,线程安全. ...