未加星标

《MySQL与MariaDB学习指南

字体大小 | |
[数据库(mysql) 所属分类 数据库(mysql) | 发布者 店小二04 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏

基本信息

作者: [美] Russell J.T. Dyer

译者: 袁志鹏

出版社:人民邮电出版社

ISBN:9787115435712

上架时间:2016-10-12

出版日期:2016 年10月

开本:16开

页码:308

版次:1-1

所属分类:计算机

编辑推荐

也许你未曾意识到,但你时常在与mysql或其分支打交道。作为高效且稳定的开源数据库,MySQL备受各大电商网站和社会媒体网站青睐。若想快速并深入了解如何使用和维护MySQL,本书便是绝佳参考。这本注重实践的学习指南以简单明了、条理清晰的方式,教你安装、使用和维护MySQL及其重要分支MariaDB。

本书作者既是MySQL与MariaDB专家,也是小说家。他以生动的语言和翔实的示例分析带你领略数据库设计和数据管理的方方面面。章末精心设计的习题将有助于你温故而知新。

- 创建和修改MySQL表,并在其中声明字段和列

- 通过示例,掌握数据的插入、选取、更新、删除、连接和子查询

- 使用字符串函数对列中的文本进行查找、抽取、格式化和转换

- 学习用于数学或统计运算,以及日期和时间格式化的相关函数

- 执行管理任务,例如管理账号、备份数据库和批量导入数据

- 使php等各种编程语言的API连接和查询MySQL或MariaDB

内容简介

书籍

计算机书籍

本书使读者不仅能够深入了解MySQL 这种主流数据库,还能全面掌握开源数据库新秀MariaDB 的使用方法。书中内容由浅至深、层层深入,从分步介绍如何安装MySQL 和MariaDB,到以虚构的观鸟网站为例,详解数据库的各种操作。具体内容包括:数据库的结构;数据的插入、选取、更新、删除、连接和子查询;字符串函数、日期和时间函数、聚合函数与数值函数等。最后一个部分从更高的角度介绍数据库的管理,内容涉及用户账号及权限、数据库的备份与恢复,以及利用应用编程接口结合C、Perl、PHP、python、Ruby 等不同语言与数据库交互。

本书面向想要从头开始学习并快速掌握数据库核心知识与实践方法的读者。

作译者

Russell J.T. Dyer

现任MariaDB公司课程主管,同时是一位小说家。他曾在MySQL公司做过近六年的知识库编辑,拥有丰富的MySQL实践经验,另著有《MySQL核心技术手册》。作为小说家,他目前正在创作自己的第二部小说。

译者简介:

袁志鹏

2012年本科毕业,至今有半年银行业、三年半航运业软件开发经验,致力于写简洁易懂的代码。

目录

序  xiii

前言  xvii

第一部分 软件

第1章 入门  2

1.1 MySQL 和MariaDB 的价值  2

1.2 邮件列表和论坛  3

1.3 其他书籍和出版物  3

第2章 安装MySQL 和MariaDB  5

2.1 安装包  5

2.2 许可  6

2.3 获取软件  6

2.4 挑选发行  7

2.5 各种_AMP  8

2.5.1 linux 二进制发行版  8

2.5.2 Mac OS X 发行版  9

2.5.3 windows 发行版  12

2.5.4 FreeBSD 和Sun Solaris 发行版  13

2.5.5 源码包  15

2.6 安装后  16

2.6.1 特殊配置  17

↓展开全部内容

前言

MySQL 是当今最流行的开源数据库,高效且稳定,备受公众网站的青睐。即使你对它不熟悉,也可能天天都在跟它打交道。当你登录谷歌、亚马逊、Facebook 和维基百科等知名网站时,就会用到MySQL。不仅许多大型网站用它保存数据,数之不尽的小网站也在用着它。此外,很多非网络应用也采用MySQL 作为数据库。在需要时,它可以发挥快速、稳定和小巧的优点。

1995 年,MySQL 由Michael“Monty”Widenius 和David Axmark 创造,并使用GNU 通用公共授权。当年他们在瑞典创立了MySQL Ab(Ab 是瑞典语中的有限公司或股份公司),而该公司几年后又成了美国的MySQL Inc.(英语incorporated 的缩写)。直到2008 年1 月,它被Sun 公司收购。尽管Sun 说“我们绝对会大力发展MySQL”,但在2009 年4 月,它自身却被Oracle 收购了。因为Oracle 是卖闭源数据库的,可以说是MySQL 的一大竞争对手,所以当时很多人担心MySQL 这个改变世界的开源软件会就此被扼杀。不过事实证明,在收购五年之后,这种情况都没有发生。我们可以看到,现在MySQL 的功能更加丰富了,而其相关的开发者(无论是在Oracle 内部还是外部)数量也增加了不少。

出于对Oracle 收购的不爽,Monty 又开了一家新公司——Monty Program Ab,它在MySQL的基础上开发出了一个分支——MariaDB。1 因为MySQL 是遵循GPL 协议的,所以使用它或往它身上添加东西都是免费和合法的。与此同时,MySQL Inc. 服务部的前高级副总裁Ulf Sandberg,以及MySQL 的一班老员工,离开Sun 和Oracle,建立了SkySQL Ab,为MySQL 和MariaDB 用户提供支持、咨询和培训等服务。2013 年10 月,Monty Program Ab合并到SkySQL Ab 中,该公司在2014 年10 月改名为MariaDB Ab。而MariaDB 的授权认证则由MariaDB 基金会控管,而不是Oracle 或其他公司。

注1: 顺便提一句,MySQL 的这个名字来源于Monty Widenius 的第一个女儿,My Widenius。而MariaDB则源于其第二个女儿,Maria Widenius。

现在,有些相关的社区,因为不想与大型专利软件公司扯上关系,所以也将数据迁移到了MariaDB。此外,不少操作系统发行版、硬件和软件包,也把自带的数据库改为MariaDB(可能带上MySQL,或完全不带)。因为替换并不困难,应用层不需修改任何代码(当然,如果你想使用MariaDB 有而MySQL 没有的功能,那就需要加入新的调用命令),所以许多网站也愿意追随这一潮流。

尽管所有权、公司名,甚至软件名经历多次变更,但这个软件在社区中相传近30 年的精神与内涵却没有丢失。

MySQL 和MariaDB 简单易懂,没有什么学习门槛。如果你想从头开始,并快速形成生产力,那么本书可以作为你的入门书。当然,对于稍有基础但未得要领的同学,本书也是非常合适的。因为MySQL 和MariaDB 的基本操作是一样的,所以这本入门书的内容同时适用于两者,你可将文中的MySQL 理解为MariaDB,反之亦可。

阅读方法

一般来说,你应按本书的章节编排顺序读下去。但这并不是说你不能跳过某些章节。尤其是,很多人都会跳过第一部分。要是你已装好MySQL,那么就可以不用看第1 章(导论部分)和第2 章(讲述如何安装MySQL 和MariaDB)了。要是你从未用过MySQL,就不应该略过第3 章。而之后的章节,除了第五部分(这部分的章节与管理技术有关,并非所有人马上都能用到),你都应该按顺序学习到底。

大多数章节最后都有一套练习题,它们可以帮助你思考之前读到的内容。通过完成这些习题,你会巩固在该章示例中学到的知识。另外,尝试练习所有章节中给出的示例,你会受益良多。各章后面的习题,就算不以前一章的知识为基础,也是以前面的章节为基础,所以你需要学好前面的知识,才能顺利完成它们。

文字界面与操作系统

因为Windows 的风行,导致很多人都以为,用GUI(图形用户界面)来操作复杂的软件或系统是最快捷的做法。确实,一图胜千言,但如果你不是要表达很复杂的东西,是不需要图形的。换句话说,如果你只对数据库进行一些很小的改动,是不需要用GUI 的。

尤其是,我不喜欢用GUI 来操作MySQL 或服务器,因为GUI 每次更新换代都会变样,而命令行却十年如一日,处处通用。如果你知道如何从命令行配置服务器,那么就能轻松应对各种服务器。所以,本书的示例是文字界面的,它们应该在任何地方都能运行(其实仅限于Unix 类的操作系统的命令行,如Linux。如果你使用其他操作系统,请自己找办法调出命令行)。

排版约定

本书使用了下列排版约定。

· 楷体

表示新术语。

· 等宽字体(constant width)

表示程序片段,以及正文中出现的变量、函数名、数据库、数据类型、环境变量、语句和关键字等。

↓展开全部内容

序言

在你阅读书中MySQL 和MariaDB 的内容之前,我打算先讲讲,我们分别在大约20 年前和5 年前创建MySQL 和MariaDB 的目的,以及这两个数据库系统的现状与我对它们未来的期望。我认为,这会有助于你了解它们。顺便,为了给你打气,我想告诉你,MySQL 和MariaDB 是长盛不衰的,你对它们的钻研以及你在此书上花费的精力,都将令你受用良久。

MySQL的起源

我和我的商业伙伴David Axmark 之所以会创造出MySQL,是因为那个年代没有什么好用的、免费的开源数据库系统。我们当时只是创建了一个类似mSQL 的数据库,它不是开源的。但这个数据库启发我们为客户创造出一个新的数据库系统,这就是后来的MySQL。对于这个MySQL 的雏形,我们并没有什么宏大的开发计划,只是要满足客户的需求。我们不断地学习、发现,并根据实际需求进行开发,作为本书的读者以及MySQL 和MariaDB 的入门者,你可能也在这样做。

创造好之后没多久,我们就发现有不少机构都有类似的需求。既然我们已经开发好了这个数据库,便决定将其对外开放,并给其取名为MySQL。

我们这样做的动机之一是觉得这东西挺有用的,值得拿来回馈开源社区(当时很多开源项目都是没什么用的)。我们希望这个世界变得更美好一点——当时我们真不知道MySQL 会有现在这么大的影响力。同时,我们也希望将MySQL 公之于众能够带来收益,以便资助MySQL 的长期开发。当然,我们也想通过MySQL 来致富。因为觉得这东西应该是有前途的,所以我们全身心地投入进去。而事实上,结果是我们为这个世界作出了很大贡献,甚至远远超出我们的想象。

如今,世界上80% 以上的网站都在用MySQL,可以说MySQL 推动了互联网以及由互联网而生的一切事物的发展。其影响力是不可估量的。如果没有免费又可靠的MySQL,许多成功的(包括现在一些大型的)网站和企业,可能根本无法诞生。因为在当时,很多创始人和创业公司都没钱创建网站。商业数据库软件的价格不菲,一些最有创造性的网络组织,如谷歌、维基百科和Facebook,都难以跨过这一障碍。另外,商业数据库还有其他缺点。例如,互联网公司对访问性能有很高要求,但商业数据库却对这方面毫不关注。此外,商业数据库需要专门的开发人员来使用和管理,而这些人的工资要求也相当之高。正因如此,MySQL 非常符合创业公司的要求,可以帮助它们成为互联网的重要组成部分,以及大多数人的日常所需。MySQL 曾经是而且目前依然是互联网发展中的一个关键要素,而且这在未来也不会改变,因为MySQL 的使用量依然在增长,而MariaDB 则势头更劲。那些认为新的数据库或NoSQL 会令MySQL 跌价的人,终将发现自己站错队伍。

由于MySQL 称霸已久,无法撼动,而且人们总是习惯使用熟悉的东西,所以就算有更好的东西出现,可能也难以取而代之。若真要取代MySQL 开源数据库的霸主地位,除了要有更好的功能,还要允许用户运用现有的知识轻松地迁移数据。而MariaDB 就是在MySQL 的基础上,拥有更多的功能和潜能,因此,我们认为MariaDB 就是MySQL 的替代者。

MySQL和MariaDB的现状

当然,MySQL 和MariaDB 都不是完美的。事实上,任何数据库都不是完美的,但对大多数人来说它俩已足够优秀。我们既要方便网站的开发,又要提供良好的性能。所以,我们采用多线程技术,这使我们在负载方面优于很多同行。此外,我们自始至终采用最先进的技术,努力兼容新硬件并优化各种常用软件和部署方式。我们在软件改进上精益求精,可以每个月发布社区版的一个小更新,每年公开一个新版本。而这也表明,我们的社区运作正常,稳步发展。

所有学习和想要使用MySQL 和MariaDB 的人,都不用担心接口的改变,因为我们开发的数据库一直在适应环境的改变,无论时代怎样变迁,你要的功能永远都在。这也确实是我们令人信赖的一点。有些软件时不时搞一些标新立异的功能,甚至过一两年就换一个全新的系统,而这在MySQL 和MariaDB 身上是不会发生的。

之前我们讲过,要取代MySQL 这个霸主是不容易的,所以我们尽量让MariaDB 贴近MySQL,让你无痛迁移。另外,我们还在(并将在)MariaDB 上加入很多好用的功能,以便你获得更好的使用体验。所以,MariaDB 也是一个不错的选择。

不只是服务器

除了用于网站开发,嵌入其他软件后,MySQL 和MariaDB 还可用于单独的应用程序。尤其是嵌入式方面,它们近来的增长幅度比以往任何时候都要大。另外,由于现在流行使用云服务器,而在云中部署商业数据库十分昂贵,所以,MySQL 和MariaDB 在这方面也成为了大众的首选。

同样,在移动开发方面,它们也是最佳方案。无论你的应用是部署于云端还是自建服务器,依靠MySQL 和MariaDB 出众的扩展性,你将无惧因为移动设备普及而带来的爆发式访问增长(事实上有些网站的移动端访问甚至多于桌面端)。此外,如果你用的是MariaDB 10.1,那么它新引入的加密功能将使应用的安全性更上一层楼,而这是很多其他数据库产品不能提供的。

MariaDB:差异和希望

我对MariaDB 是充满希望的,我正在MariaDB 基金会工作,致力于拉拢其他公司协同开发。这在MySQL 的发展过程中是缺失的,所以,MySQL 无法满足全世界,无法满足未来。但我们希望MariaDB 能做到,这就需要更多公司的合作。我们十分开心看到谷歌的参与,同时还希望更多这样的大公司参与进来。此外,光有大众的支持也是不够的,像自由与开源软件基金会,它有很多公司参与开发,但其中没有负责协调工作的。我期望MariaDB 基金会能起到协调的作用,令大家的努力都能用到点上。当然,这反过来也是对大家有益的。而对于Oracle 控制下的MySQL,就不用在这方面指望太多了。Oracle 可没有保证会在未来继续开放MySQL 的代码。而MariaDB 则不同,它是由始至终、全心全意地开源的。所以很明显,MariaDB 比MySQL 更加遵守开源规则,更加贴近多数人的想法。

MariaDB 基金会的作用,就是确保MariaDB 的开发过程公平、公开、公正。它将保证MariaDB 始终开源,这是它的首要职责。MariaDB 基金会的另一个职责是确保所有想要开发MariaDB 的公司都以平等的方式参与开发。如果有公司为MariaDB 提供了补丁,他们可以进行提交,而下一版的MariaDB 将包含该补丁。这是很多自称开源的软件项目做不到的,包括MySQL(当你想给它提交补丁时,Oracle 极有可能是不理你的)。而MariaDB 的包容则天性使然,我们乐意接受任何意见。

举个例子,假设MariaDB 的竞争对手Percona 想给MariaDB 提交一个补丁,以使其后台软件XtraBackup 能运行得更好。当然,MariaDB 是不想帮助竞争对手的,但是,这也不由它话事。只要基金会认可那个补丁,那么就会加上,因为基金会是只看技术,不考虑商业因素的。

一个开源软件要想存活,就必须能够解决实际问题。虽然MySQL 一开始有各种不足,包括功能少,但它一直聆听大众的需求,因此才得以成为数据库界的黑马,冲出重围。这一点,我们在MariaDB 上做得更加努力。尽管MariaDB 也不可能完全符合所有人的要求,但它会比别的产品更好。

↓展开全部内容

媒体评论

“本书介绍的数据库开发和管理通用技能,将使你终身受益。”

——Monty Widenius,MySQL与MariaDB之父

“MySQL和MariaDB都是流行的数据库,阅读本书能让你快速地掌握它们。Russell举的例子简单易懂,并且贯穿整个学习过程,能助你迈入数据库专家行列。”

——Colin Charles,MariaDB公司前首席布道官,现任Percona公司首席布道官


《MySQL与MariaDB学习指南

本文数据库(mysql)相关术语:navicat for mysql mysql workbench mysql数据库 mysql 存储过程 mysql安装图解 mysql教程 mysql 管理工具

分页:12
转载请注明
本文标题:《MySQL与MariaDB学习指南
本站链接:http://www.codesec.net/view/483624.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 数据库(mysql) | 评论(0) | 阅读(23)