当前位置: 首页 > news >正文

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的能力,所以自己都有自己的分支。

 

 

------------------------------------------------------------------------------------------------------------------------------

今天又写了这么多乱七八糟的,看起来听没有用的,不过就算是热身吧,听得热闹说不定能勾起学习的兴趣。

转载于:https://www.cnblogs.com/wingsless/p/5218586.html

相关文章:

  • 助力合作伙伴引领“互联网+”变革 浪潮预发布高端存储
  • 七:zooKeeper开源客户端ZkClient的api测试
  • 定时任务crontab在书写时的四大坑
  • YUM仓库的部署
  • Laravel 中的一个后期静态绑定
  • 简单使用JSTL攻略
  • Powershell 编写和运行脚本
  • windos 下端口被占用
  • git与eclipse相关
  • 一个在ActionBar上显示图标和菜单PopupMenu的小示例(19)
  • 管理大数据:监测系统创造新的收益
  • 使用Jmeter创建ActiveMQ JMS POINT TO POINT请求
  • select 遇到的坑
  • iOS开发文件夹--Copy items if needed
  • SEO页面标题Title的优化
  • [iOS]Core Data浅析一 -- 启用Core Data
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • DOM的那些事
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • Invalidate和postInvalidate的区别
  • JavaScript创建对象的四种方式
  • node-glob通配符
  • ubuntu 下nginx安装 并支持https协议
  • windows下使用nginx调试简介
  • 计算机常识 - 收藏集 - 掘金
  • 前端js -- this指向总结。
  • 前端面试之闭包
  • 使用权重正则化较少模型过拟合
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • (二十五)admin-boot项目之集成消息队列Rabbitmq
  • (附源码)spring boot校园拼车微信小程序 毕业设计 091617
  • (论文阅读40-45)图像描述1
  • (转)全文检索技术学习(三)——Lucene支持中文分词
  • ***原理与防范
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .FileZilla的使用和主动模式被动模式介绍
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET 使用配置文件
  • .NET是什么
  • .Net组件程序设计之线程、并发管理(一)
  • [2544]最短路 (两种算法)(HDU)
  • [2669]2-2 Time类的定义
  • [Android]如何调试Native memory crash issue
  • [Angularjs]ng-select和ng-options
  • [Apio2012]dispatching 左偏树
  • [Arduino学习] ESP8266读取DHT11数字温湿度传感器数据
  • [ASP]青辰网络考试管理系统NES X3.5
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)
  • [CareerCup] 13.1 Print Last K Lines 打印最后K行
  • [CodeForces-759D]Bacterial Melee
  • [ERROR] Plugin 'InnoDB' init function returned error
  • [halcon案例2] 足球场的提取和射影变换