数据库系统原理及MySQL应用教程
上QQ阅读APP看书,第一时间看更新

5.1 MySQL简介

MySQL是一款单进程多线程、支持多用户、基于客户机/服务器(Client/Server,C/S)结构的关系数据库管理系统。它是开源软件(所谓开源软件,是指该类软件的源代码可被用户任意获取,并且这类软件的使用、修改和再发行的权利都不受限制。开源的主要目的是为了提升程序本身的质量),可以从MySQL的官方网站(http://www.mysql.com/)下载该软件。MySQL以快速、便捷和易用为发展主要目标。

1.MySQL的优势

1)成本低:开放源代码,任何人都可以修改MySQL数据库的缺陷;社区版本可以免费使用。

2)性能良:执行速度快,功能强大。

3)值得信赖:比如Yahoo、Google、YouTube、百度等公司在使用MySQL,Oracle公司顺应市场潮流和用户需求,会全力打造更完美的MySQL。

4)操作简单:安装方便快捷,有多个图形客户端管理工具(MySQL Workbench/Navicat等客户端、MySQLFront、SQLyog)和一些集成开发环境。

5)兼容性好:可安装于多种操作系统,跨平台性好,不存在32位和64位机的不兼容无法安装的问题。

MySQL与其他的大型数据库(如Oracle、DB2等)相比,存在规模小、功能有限等方面的不足,但这丝毫不会影响它的受欢迎程度。

2.MySQL的系统特性

MySQL数据库管理系统具有以下一些系统特性:

1)使用C和C++语言编写,并使用了多种编译器进行测试,保证了源代码的可移植性。

2)支持多线程,可充分利用CPU资源。

3)优化的SQL查询算法,能有效地提高查询速度。

4)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。

5)支持AIX、FREEBSD、HP-UX、Linux、MAC OS、NOVELL NETWARE、OPEN BSD、OS/2WRAP、SOLARIS、Windows等多种操作系统平台。

6)既能够作为一个单独的应用程序应用在C/S网络环境中,也能够作为一个库嵌入到其他的软件中。

7)支持大型的数据库,可以处理拥有上千万条记录的大型数据库,数据类型丰富。

8)支持多种存储引擎。

3.MySQL发行版本

根据操作系统的类型来划分,MySQL数据库大体上可以分为Windows版、UNIX版、Linux版和Mac OS版。

根据MySQL数据库的开发情况,可将其分为Alpha、Beta、Gamma和Generally Available(GA)等版本。

1)Alpha:处于开发阶段的版本,可能会增加新的功能或进行重大修改。

2)Beta:处理测试阶段的版本,开发已经基本完成,但是没有进行全面测试。

3)Gamma:该版本是发行过一段时间的Beta版,比Beta版要稳定一些。

4)Generally Available:该版本已经足够稳定,可以在软件开发中应用了。有些资料会将该版本称为Production版。

根据MySQL数据库用户群体的不同,将其分为社区版(Community Edition)和企业版(Enterprise)。

MySQL软件对于普通用户是免费开源(选择GPL许可协议)的,通常称为社区版;对于商业用户采取收费(非GPL许可)的方式。

社区版和商业版之间的区别:商业版可享受到MySQLAB公司的技术服务,社区版没有官方的技术支持,但可以通过官网论坛提问找到解决方案。两者在功能上是相同的。

4.MySQL 5.6新增亮点

MySQL数据库凭借其易用性、扩展力和性能等优势,成为全世界最受欢迎的开源数据库。世界上许多流量大的网站都依托MySQL数据库来支持其业务关键的应用程序,其中包括Facebook、Google、Ticketmaster和eBay。MySQL 5.6在原来版本的基础上改进并新增了许多特性。以下从四个方面简单介绍了MySQL 5.6数据库中的亮点功能。

1)通过提升MySQL优化诊断来提供更好的查询执行时间和诊断功能。

2)通过增强InnoDB存储引擎来提高性能处理量和应用可用性。

3)通过MySQL复制的新功能以提高扩展性和高可用性。

4)增强的性能架构(PERFORMANCE SCHEMA)。

5.MySQL字符集

字符集是指符号和字符编码的集合。

不同地方的字典当然有可能是不同的,甚至每本字典中的词汇量都不一致,找一本适合的字典非常重要,比如,给不懂中文的美国朋友看熊猫俩字,它绝对不可能关联到那个毛茸茸的可爱的永远挂着黑眼圈的珍稀动物。