MySQL 是一个跨世纪的伟大产品,它最早诞生于 1979 年,距今已经有 40 多年的历史了,而如今比较主流的 Java 语言也只是 1991 年才诞生的,也就是说 MySQL 要比 Java 的诞生还早十几年,不得不惊叹二者强大的生命力。

MySQL 的应用十分广泛,像 Google、Taobao、Facebook、Twitter、Baidu、Tencent 等公司以及绝大多数互联网公司都能见到它的身影,MySQL 也一度是(目前也是)“数据库”的代名词。

MySQL 之所以流行和它开源以及免费的特性是分不开的,因为免费所有很多公司在用,因为被广泛使用所以会有一群狂热的爱好者为它提供技术支持,这样良性的循环将 MySQL 推向了巅峰。

以国内的情况来说,如今的互联网巨头阿里巴巴,当年当发展到一定规模之后就提出了“去 IOE”的口号,所谓的 I 就是 IBM,O 就是 Oracle,而 E 就是 EMC 存储设备,为什么要去 IOE?无非是出于成本的考虑,最后阿里以 MySQL 为基石逐渐去掉了对 Oracle 的依赖,MySQL 在巨头的使用下也在进行着快速的迭代,那么国内的其他小弟看大哥都用 MySQL 了,也就纷纷投入了 MySQL 的怀抱,于是 MySQL 慢慢就成为了各种互联网公司数据库的首选方案。

当然阿里在使用 MySQL 的同时也在研发自己的数据库 OceanBase,并且 OceanBase 在 2019 年的 TPC-C 中也战胜了曾经的老大哥 Oracle 一举成名,让世界看到了中国的实力,这也是我们每个国人的骄傲。

TPC-C 是全球最具公信力的联机交易处理数据库的功能与性能结合的测试标准。通俗来讲 TPC-C 测试是对于商业数据库想要证明自身实力的一个硬性门槛。

MySQL 被卖

扯远了,说回 MySQL。对于 MySQL 来说 2008 年是一个重要的一年,因为这一年 MySQL 被原来的 Sun 公司以 10 亿美金给收购了,第二年 Sun 公司又以 74 亿美元将自己和所有的产品打包卖给了 Oracle,从此 Oracle DB 和 MySQL 两家并一家都归属于 Oracle 公司了。

这里有一个小插曲,Oracle 在收购了 Sun 公司的第二年,就以一纸诉状将 Google 搞上了法庭,原因是 Google 侵权使用了 Java 语言,Oracle 要求赔偿 88 亿美元,这场旷世纪的官司最终在 2018 年以 Oracle 的胜诉而告一段落,那我们可不可以理解 Oracle 如果真拿到了 88 亿美元,在不计算打官司所花的费用来说,既白嫖了 Java 和 MySQL 还白赚了 14 亿美元呢。

MySQL 另起炉灶

看完了 MySQL 的历史,我们在回到 MySQL 产品本身。当年在 Sun 公司收购了 MySQL 之后,MySQL 的创始人 Monty Widenius(迈克尔·维德纽斯)因为不满意 Sun 的工作方式而选择了离职,之后 MySQL 之父带领了一帮兄弟,另起炉灶成立 MySQL 的一个重要分支:MariaDB。



迈克尔·维德纽斯,图片来源于网络

Maria 是 MySQL 之父 Monty 最小女儿的名字,好神奇!MariaDB 的命名竟然这么的草率,这也充分的说明,有一个好爹就可以让全世界都记住你的名字~

MariaDB 初体验

MariaDB 来自于 MySQL,因此 MariaDB 和 MySQL 在绝大多数方面是兼容的,对于应用程序来说,比如 PHP、Perl、Python、Java、.NET、Ruby 无需做任何改动就可以直接使用二者。值得一提的是 MariaDB 的发展速度很快,新版本的发布速度已经超过了 Oracle 公司官方的 MySQL 版本了。

MariaDB 和 MySQL 更多区别:

https://go.mariadb.com/20Q4-WBN-GLBL-OSSC-MySQL-Comparison-Migration-2020-9-30_Registration-LP.html?_ga=2.27991548.1993405062.1602674827-345855344.1602674827

那接下来我们就尝试体验一下 MariaDB 吧,它的下载地址:https://mariadb.com/downloads/



选择对应的版本和系统类型进行下载。

PS:因为官方下载地址是国外源,所以下载速度很慢,可以关注【Java中文社群】发送“Maria”获取最新版本的国内下载地址。

MariaDB 的安装和 MySQL 的安装比较类似,只是提供了更多可配置项,比如端口号和编码方式、密码等让用户可以友好的配置,安装如下所示:









输入用户密码和确认密码,选择是否用 UTF8 作为默认的字符集。



可以修改服务的名称、端口号和内存占用量,设置完之后点击 Next,等待完成之后整个安装就成功了。

自带客户端

我们发现安装完 MariaDB 之后它会自动帮我们安装一个 HeidiSQL 的客户端,使用它我们可以很方便的操作 MariaDB。



它的操作界面如下图所示:







美否暂且不论,就中文菜单和自带功能(视图、SQL 操作、导入导出数据等功能)来说,给我的第一个感觉就是很实用。

命令行工具

如果我们还是习惯用 MySQL 的操作命令行,在 MariaDB 装完之后(无需安装 MySQL)的情况下也可以直接使用 MySQL 的命令行工具,我们只需要先将 MariaDB 的安装(bin)目录设置在环境变量中,如下图所示:



再直接敲击 CMD 的命令行就可以直接操作了,如下图所示:



操作命令还是和操作 MySQL 的命令一样,还是那熟悉的味道~

官方 MySQL

Oracle 虽然收购了 MySQL,并且在前些年更新也很慢(MySQL 8)之前,这个也可以理解,毕竟要把主要的精力和核心的团队放在赚钱的 Oracle DB 身上嘛,但好在一点 Oracle 依然为我们保留了免费的社区版可供使用,Oracle 的 MySQL 相关产品如下:

  • MySQL Community Server 社区版本,开源免费,但不提供官方技术支持;
  • MySQL Enterprise Edition 企业版本,需付费,可以试用 30 天;
  • MySQL Cluster 集群版,开源免费。可将几个 MySQL Server 封装成一个Server;
  • MySQL Cluster CGE 高级集群版,需付费;
  • MySQL Workbench(GUI TOOL)一款专为 MySQL 设计的 ER 数据库建模工具。它是著名的数据库设计工具 DBDesigner4 的继任者。MySQL Workbench 又分为两个版本,分别是社区版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。

所以想要继续使用 Oracle 的 MySQL 版本也是可以的,有社区办可以免费用,但如果想要尝试一下 MariaDB 也未尝不可,毕竟 MariaDB 提供了更多的功能和优化的改进。

总结

MySQL 的发展一波三折,先被 Sun 收购,最后又归属于 Oracle,后来 MySQL 之父从被收购的公司出来自己又开始做 MySQL 新的分支 MariaDB,它可以看作是 MySQL 的升级版,有兴趣的朋友可以试试。

关注【Java中文社群】发送“Maria”获取下载地址。

你不知道的MySQL,以及MariaDB初体验的更多相关文章

  1. mysql/mariadb 初体验

    距离申请这个博客号已经过了九个月,思前想后还是把知识沉淀放这里吧,不过初心一样,依旧是 '谨以此文,见证成果'.有 兴趣的话也欢迎大家去我的csdn博客转一转.以下是正文: 1.mysql安装 win ...

  2. 2.MySQL入门基本操作初体验

    启动和关闭mysql服务器: 一.启动方式 1.使用 mysqld 脚本启动:/etc/inint.d/mysqld start 2.使用 守护进程safe_mysqld 启动:safe_mysqld ...

  3. MySQL之爱之初体验

    写在前言:本篇博客从mysql的安装开始说起,至于什么是数据库以及数据的由来什么的,不在详谈!!! 第一:mysql安装 linux安装:两种方式 1.apt安装 apt install mysql- ...

  4. Net Core平台灵活简单的日志记录框架NLog+Mysql组合初体验

    Net Core平台灵活简单的日志记录框架NLog初体验 前几天分享的"[Net Core集成Exceptionless分布式日志功能以及全局异常过滤][https://www.cnblog ...

  5. Mysql Workbench初体验

    可以画图,建立表关系. 分类整理数据表. 可以直接导出sql语句. 可以导出png图片. 可以连接mysql数据库. 基本满足了各项需求. 这次初体验只是基本的功能,这个软件对于mysql还是很牛的.

  6. JMS服务器ActiveMQ的初体验并持久化消息到MySQL数据库中

    JMS服务器ActiveMQ的初体验并持久化消息到MySQL数据库中 一.JMS的理解JMS(Java Message Service)是jcp组织02-03年定义了jsr914规范(http://j ...

  7. Question2Answer初体验

    Question2Answer初体验   高质量的问答社区十分有价值,很多无法解决的问题能通过问答社区找到解决办法,而对于站长来说,垂直的问答社区也很有潜力.最近盯上问答这一块,发现和我的一些思路很符 ...

  8. YII学习,初体验 ,对YII的一些理解.

    先说点没用的: 不会选择,选择后不坚持,不断的选择.这是人生中的一个死循环,前两一直迷茫.觉得自己前进方向很不明朗.想去学的东西有很多.想学好YII,想学PYTHON 想学学hadoop什么的,又想研 ...

  9. hibernate--CRUD初体验

    hibernate的crud操作初体验. 看具体实例 package com.fuwh.model; import javax.persistence.Column; import javax.per ...

随机推荐

  1. pwnable.kr之fd

    题目如图: 在终端输入:ssh fd@pwnable.kr -p2222 连接到远程终端,如图: 输入ls -l,查看文件: 输入whoami,查看自身用户名称: 根据题目意思我们只要打开flag文件 ...

  2. MySQL 8 安装教程(个人版)+创建用户

    Mysql 8的安装教程 解压到指定目录如:D:\WinInstall\mysql-8.0.19-winx64这时候你需要在根目录下创建两个文件,分别是data文件夹和my.ini文件,然后使用编辑器 ...

  3. 如何用canvas拍出 jDer's工作照

    背景 在京东,就职满五年的老员工被称作"大佬",如果满了十年,那就要被称之为"超级大佬"了. 从 2016 年 5 月 19 日开始,每一年的这一天都被定为京东 ...

  4. [程序员代码面试指南]递归和动态规划-排成一条线的纸牌博弈问题(DP)

    题目 给定一个整型数组arr,代表数值不同的纸牌排成一条线.玩家A和玩家B依次拿走每张纸牌,规定玩家A先拿,玩家B后拿,但是每个玩家每次只能拿走最左或最右的纸牌,玩家A和玩家B都绝顶聪明.请返回最后获 ...

  5. JVM内存结构和Java内存模型

    一.JVM 首先看一张JVM结构图(某度找的) 主要看运行时数据区,里边有方法区,堆,java虚拟机栈,本地方法栈,程序计数器.其中方法区和堆是线程共享的,也是JVM进行垃圾收集的区域,java虚拟机 ...

  6. 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统三 | 控制反转搭配简单业务

    教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 06 | 最终篇-通过AOP自动连接数据库-完成日志业 ...

  7. Spring学习(一)初识Spring

    什么是Spring 定义:Spring 是一个轻量级的 DI / IoC 和 AOP 容器的开源框架,目的为了简化java开发. DI:注入 IOC:控制反转 AOP:面向切面编程 原理:利用了jav ...

  8. PyCharm2018.3.5下载和安装及永久破解详解(成功案例)

    靓仔靓女,你是否在网上找了很多的方法都破解不了PyCharm,是有原因的!无论什么编程工具都不要下载近一到/两年内的版本,人家即把网上的一些破解方法修复了,而且还在测试阶段,不稳定就完事了我装的是20 ...

  9. SQLSERVER如何在子查询中使用ORDER BY

    今天在使用公司的一个pager接口的时候,需要传递一个查询的SQL语句,因为我希望他能够在pager对他查询出来的结果排序之前自己先进行排序, 于是在这个SQL中添加了ORDER BY,但是得到的结果 ...

  10. RT Thread SPI设备 使用

    后记: 之前,我把SPI的片选在Cubemx中配置成了SPI_NSS.现在我给它改为了GPIO_OUTPUT.  同时参考了别人的类似的一个操作无线模块(采用SPI设备驱动)的例子程序(清楚了RTT的 ...