MySQL 从入门到项目实践(超值版)
上QQ阅读APP看书,第一时间看更新

第1章
步入MySQL数据库世界——Hello MySQL

◎本章教学微视频:10个 29分钟

学习指引

MySQL数据库体积小、速度快、总体拥有成本低,尤其是开放源码,因此目前被广泛地应用在Internet上的中小型网站中。MySQL支持多种平台,不同平台下的安装与配置过程不同。在Windows平台下可以使用二进制的安装软件包或免安装版的软件包进行安装,二进制的安装包提供了图形化的安装向导过程,免安装版直接解压缩即可使用。在Linux平台下使用命令行安装MySQL,但由于Linux是开源操作系统,有众多的分发版,因此不同的Linux平台需要下载相应的MySQL安装包。通过本章的学习,读者能够掌握MySQL的安装过程,以及了解如何配置MySQL数据库。

重点导读

• 认识MySQL数据库。

• 熟悉下载MySQL数据库的方法。

• 掌握在Windows环境下安装MySQL数据库的方法。

• 掌握在Linux环境下安装MySQL数据库的方法。

• 掌握测试安装环境的方法。

• 掌握配置环境变量的方法。

• 掌握卸载MySQL数据库的方法。

1.1 认识MySQL数据库

MySQL是一个关系型数据库管理系统,由瑞典的MySQLAB公司开发,目前属于Oracle旗下产品。

1.1.1 MySQL系统特性

MySQL是最流行的关系型数据库管理系统之一,在Web应用方面,MySQL是最好的RDBMS(RelationalDatabase Management System,关系数据库管理系统)应用软件。

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的SQL语言是用于访问数据库的最常用的标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码,一般中小型网站的开发都选择MySQL作为网站数据库。

总的来说,MySQL主要有以下特性。

(1)速度:运行速度快。

(2)价格:MySQL对多数个人用户来说是免费的。

(3)容易使用:与其他大型数据库的设置和管理相比,其复杂程度较低,易于学习。

(4)可移植性:能够工作在众多不同的系统平台上,例如Windows、Linux、UNIX、Mac OS等。

(5)丰富的接口:提供了用于C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl的API。

(6)支持查询语言:MySQL可以利用标准SQL语法编写支持ODBC(开放式数据库连接)的应用程序。

(7)安全性和连接性:十分灵活和安全的权限和密码系统,允许基于主机的验证。当连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。由于MySQL是网络化的,因此可以在因特网上的任何地方访问,提高了数据共享的效率。

1.1.2 MySQL的版本

针对不同用户,MySQL分为两个版本。

(1)MySQL Community Server:社区版,该版本完全免费,但是官方不提供技术支持。

(2)MySQL Enterprise Server:企业版服务器,它能够高性价比地为企业提供数据仓库应用,支持ACID事务处理,提供完整的提交、回滚、崩溃恢复和行级锁定功能,但是该版本需付费使用,官方提供了电话技术支持。

注意:官方提供了MySQL Cluster工具,该工具用于架设集群服务器,需要在社区版或企业版的基础上使用,有兴趣的读者在学习完本书的内容之后可以查阅相关资料了解该工具。

在MySQL开发过程中同时存在多个发布系列,每个发布版本处在成熟度的不同阶段。

(1)MySQL 5.7是最新开发的发布系列,是将执行新功能的系列,在不久的将来可以使用,以便感兴趣的用户进行广泛的测试,目前还在开发过程中。

(2)MySQL 5.6是当前的稳定(GA)发布系列,只针对漏洞修复重新发布,没有增加会影响稳定性的新功能。

对于MySQL版本的命名,新的命名机制是由3个数字和后缀组成版本号,例如mysql-5.7.20-m3。

(1)第一个数字(5)是主版本号,描述了文件格式,所有版本5的发行版都有相同的文件格式。

(2)第二个数字(7)是发行级别,主版本号和发行级别合在一起便构成了发行序列号。

(3)第三个数字(20)是在此发行系列的版本号,随每个新分发版本递增,通常选择已经发行的最新版本。

对于每一个次要的更新,版本字符串的最后一个数字递增。当有主要的新功能或有微小的不兼容性时版本字符串的第二个数字递增,当文件格式变化时第一个数字递增。

版本名称还包括一个后缀,表示发布的MySQL版本的稳定水平。通过一系列的发布进展,后缀指示稳定水平的提高,可能的后缀如下。

(1)mN:例如m1、m2、m3等,表示里程碑数量。MySQL的开发使用一个里程碑式的模型,每一个里程碑过程中的各个版本都集中包含了一小部分被彻底测试的重点功能。

下一个里程碑以前一个为基础,并增加另外一部分被彻底测试的功能集。里程碑发布版本中的功能被用于将来发布的MySQL产品中。

(2)RC:表明一个发布的候选版本,该版本被认为可能是稳定的,已经通过了所有的MySQL内部测试,修复了所有已知的致命错误。但是该版本没有经过广泛的使用验证已经修复了所有的bugs,该版本只增加了很小的修复。

(3)没有后缀:意味着该版本为通用版本(GA)或产品发布版。GA版本已经成功经过早期不同的发布阶段,在很多地方运行了一段时间,而且没有非平台特定的缺陷报告,被认为是稳定的,并且没有重大缺陷报告。该版本只增加了关键漏洞修复。

1.2 下载MySQL软件

在下载MySQL数据库之前首先需要分析自己计算机的操作系统,然后根据不同的系统下载对应的MySQL软件。

下面以32位Windows操作系统为例进行讲解,具体操作步骤如下。

步骤1:打开IE浏览器,在地址栏中输入网址“http://dev.mysql.com/downloads/mysql/#downloads”,然后单击“转到”按钮,打开MySQL Community Server 5.7.20下载页面,选择Generally Available(GA) Releases类型的安装包,如图1-1所示。

图1-1 下载页面

步骤2:在下拉列表框中选择用户的操作系统平台,这里选择Microsoft Windows选项,如图1-2所示。

图1-2 选择Windows操作系统平台

步骤3:根据操作系统选择32位或者64位安装包,在这里选择Windows(x86,32-bit)选项,单击Go to Download Page按钮,如图1-3所示。

图1-3 选择操作系统位数

步骤4:进入下载页面中,选择需要的版本后单击Download按钮,如图1-4所示。

图1-4 下载软件

注意:MySQL每隔几个月就会发布一个新版本,读者在上述页面中找到的MySQL均为最新发布的版本,如果读者希望与本书中使用的MySQL版本完全一样,可以在官方的历史版本页面中查找。

步骤5:在下载页面中单击Login按钮进行用户登录,如图1-5所示。如果没有账号可以重新注册一个免费的用户账号。

图1-5 软件下载页面

步骤6:弹出用户登录页面,输入用户名和密码后单击“登录”按钮,如图1-6所示。

图1-6 登录用户

步骤7:弹出开始下载页面,单击Download Now按钮即可开始下载,如图1-7所示。

图1-7 下载软件

1.3 在Windows系统环境下安装MySQL

在MySQL下载完成后找到下载文件,双击进行安装,具体操作步骤如下。

步骤1:双击下载的mysql-installer-community-5.7.20.msi文件,打开License Agreement窗口,选中I accept the license terms复选框,单击Next按钮,如图1-8所示。

图1-8 安装MySQL软件

步骤2:打开Choosing a Setup Type窗口,在其中列出了5种安装类型,分别是Developer Default、Server only、Client only、Full和Custom。这里选择Custom单选按钮,单击Next按钮,如图1-9所示。

图1-9 选择自定义安装类型

提示:安装类型共有5种,其中Developer Default是默认安装类型,Server only是仅作为服务器,Client only是仅作为客户端,Full是完全安装,Custom是自定义安装类型。

步骤3:打开Select Products and Features窗口,选择MySQL Server 5.7.20-x86后单击“添加”按钮即可选择安装MySQL服务器。然后采用同样的方法添加MySQL Documentation 5.7.20-x86和Samples and Examples 5.7.20-x86,单击Next按钮继续安装,如图1-10所示。

图1-10 添加安装选项

步骤4:进入Check Requirements窗口,单击Next按钮开始安装MySQL文件,如图1-11所示。

图1-11 Check Requirements窗口

步骤5:安装完成后在Status列表下将显示软件的安装状态——Complete(完整的),如图1-12所示,单击Next按钮进入MySQL数据库配置窗口。

图1-12 软件安装状态

步骤6:在MySQL数据库配置窗口中采用默认设置,单击Next按钮,如图1-13所示。

图1-13 MySQL数据库配置窗口

步骤7:在打开的设置数据库密码的窗口中重复输入两次同样的登录密码,然后单击Next按钮进行数据库名称的设置,如图1-14所示。

图1-14 设置数据库密码

步骤8:打开设置数据库名称的窗口,这里设置数据库名称为MySQL,单击Next按钮,如图1-15所示。

图1-15 设置数据库名称

步骤9:打开Apply Configuration窗口,单击Execute按钮使数据库配置生效,如图1-16所示。

图1-16 使数据库配置生效

步骤10:系统自动配置MySQL数据库,配置完成后单击Finish按钮,如图1-17所示,即可完成数据库的配置。

图1-17 完成MySQL数据库的安装与配置

1.4 在Linux系统环境下安装MySQL

Linux操作系统有众多的发行版,在不同的平台上需要安装不同的MySQL版本,MySQL主要支持的Linux版本有SUSE Linux Enterprise Server和Red Hat & OracleEnterprise Linux。本节将介绍Linux平台下MySQL的安装过程。

1.4.1 下载MySQL的RPM包

在下载页面http://dev.mysql.com/downloads/mysql/中选择SUSE Linux Enterprise Server,如图1-18所示。

图1-18 选择适合Linux平台的软件类型

下载服务器端和客户端的RPM包,其中MySQL Server代表服务器端的RPM包,Client Utilities代表客户端的RPM包,如图1-19所示。

图1-19 软件下载界面

1.4.2 安装MySQL的RPM包

对于标准安装,只需要安装MySQL-server和MySQL-client,下面开始通过RPM包进行安装。

步骤1:下载完成后解压下载的tar包。

步骤2:切换到root用户。

步骤3:安装MySQL Server。

如果看到这些,说明MySQL Server安装成功了。在安装之前要查看计算机上是否已经装有旧版的MySQL,如果有,最好先把旧版的MySQL卸载,否则可能会产生冲突。

步骤4:启动服务,输入命令如下。

服务启动成功。

步骤5:安装客户端,输入命令如下。

步骤6:安装成功之后使用命令行登录。

读者如果看到上面的信息说明登录成功,接下来就可以对MySQL数据库进行操作了。

1.5 测试安装环境

在MySQL安装完毕之后需要测试环境是否安装成功,本节将介绍如何检查MySQL服务是否启动和登录MySQL的方法。

1.5.1 检查MySQL服务是否启动

在前面的配置过程中已经将MySQL安装为Windows服务,当Windows启动、停止时MySQL也自动启动、停止。不过,用户还可以使用图形服务工具来控制MySQL服务或从命令行使用NET命令。

用户可以通过Windows的服务管理器查看,具体的操作步骤如下。

步骤1:单击“开始”按钮,在搜索框中输入services.msc,按Enter键确认,如图1-20所示。

步骤2:打开Windows的服务管理器,在其中可以看到名为MySQL的服务项,其右边状态为“已启动”,表明该服务已经启动,如图1-21所示。

图1-20 启动数据库

图1-21 数据库启动状态

由于设置了MySQL为自动启动,在这里可以看到服务已经启动,而且启动类型为自动。如果没有“已启动”字样,说明MySQL服务未启动。启动方法为单击“开始”按钮,在搜索框中输入cmd,按Enter键确认。弹出命令提示符界面,然后输入net start MySQL,按Enter键,就能启动MySQL服务了,停止MySQL服务的命令为net stop MySQL,如图1-22所示。

图1-22 在命令行中启动和停止MySQL

用户也可以直接双击MySQL服务,打开“MySQL的属性”对话框,在其中通过单击“启动”或“停止”按钮来更改服务状态,如图1-23所示。

图1-23 “MySQL的属性”对话框

1.5.2 登录MySQL数据库

当MySQL服务启动完成后便可以通过客户端来登录MySQL数据库,在Windows操作系统下可以通过两种方式登录MySQL数据库。

1.以Windows命令行方式登录

其具体的操作步骤如下。

步骤1:单击“开始”按钮,在搜索框中输入cmd,按Enter键确认,如图1-24所示。

图1-24 启动命令行

步骤2:打开DOS命令窗口,输入命令并按Enter键确认,如图1-25所示。

图1-25 DOS命令窗口

步骤3:在DOS窗口中可以通过登录命令连接到MySQL数据库,输入如下命令。

按Enter键,系统会提示输入密码,这里输入在前面配置向导中设置的密码,验证正确后即可登录到MySQL数据库,如图1-26所示。

图1-26 Windows命令行登录窗口

2.使用MySQL Command Line Client登录

单击“开始”按钮,依次选择“所有程序”→MySQL→MySQL Server 5.7→MySQL 5.7 Command Line Client命令,进入密码输入窗口,如图1-27所示。

图1-27 登录数据库

输入正确的密码之后就可以登录到MySQL数据库了。

1.6 合理配置环境变量

在前面登录MySQL数据库的时候不能直接输入MySQL登录命令,这是因为没有把MySQL的bin目录添加到系统的环境变量中,所以不能直接使用MySQL命令。如果每次登录都需要输入“cd C:\Program Files\MySQL\MySQL Server 5.7\bin”才能使用MySQL等其他命令工具,这样比较麻烦。

下面介绍怎样手动配置Path变量,具体的操作步骤如下。

步骤1:在桌面上右击“计算机”图标,在弹出的快捷菜单中选择“属性”命令,然后在打开的窗口中单击“高级系统设置”选项,如图1-28所示。

步骤2:打开“系统属性”对话框,选择“高级”选项卡,单击“环境变量”按钮,如图1-29所示。

图1-28 单击“高级系统设置”选项

图1-29 “系统属性”对话框

步骤3:打开“环境变量”对话框,在“系统变量”列表中选择Path变量,如图1-30所示。

步骤4:单击“编辑”按钮,在“编辑系统变量”对话框中将MySQL应用程序的bin目录(C:\Program Files\ MySQL\MySQL Server 5.7\bin)添加到变量值中,注意用分号将其与其他路径分隔开,如图1-31所示。

图1-30 “环境变量”对话框

图1-31 “编辑系统变量”对话框

步骤5:添加完成之后单击“确定”按钮,这样就完成了配置Path变量的操作,然后就可以直接输入MySQL命令登录数据库了,如图1-32所示。

图1-32 配置Path变量

1.7 卸载MySQL数据库

如果SQLServer 2014在使用的过程中有问题,可以将其卸载,具体操作步骤如下。

步骤1:在Windows 7操作系统中单击“开始”按钮,在弹出的快捷菜单中选择“控制面板”命令,然后在打开的“控制面板”窗口中单击“卸载程序”选项,如图1-33所示。

图1-33 单击“卸载程序”

步骤2:打开“程序和功能”窗口,右击MySQL Server 5.7选项,然后在弹出的快捷菜单中选择“卸载”命令,如图1-34所示。

图1-34 执行卸载操作

图1-35 确认卸载程序

步骤3:在弹出的对话框中单击“是”按钮,即可卸载MySQL Server 5.7,如图1-35所示。

步骤4:卸载完成后删除安装目录下的MySQL文件夹及程序数据文件夹,例如“C:\Program Files (x86)”下的MySQL和“C:\ProgramData”下的MySQL。

步骤5:在“运行”对话框中输入“regedit”,进入注册表,将所有的MySQL注册表内容完全清除,具体清除内容如下。

步骤6:上述操作完成后重新启动计算机,即可完全清除MySQL。

1.8 就业面试技巧与解析

1.8.1 面试技巧与解析(一)

面试官:重新安装MySQL卡在最后一步,怎么解决?

应聘者:第一次安装完MySQL,由于各种原因需要重新安装是经常遇到的问题,解决方案如下。

(1)在注册表里搜索MySQL删除相关记录。

(2)删除MySQL安装目录下的MySQL文件。

(3)删除“C:/ProgramData”目录下的MySQL文件夹,然后重新安装,安装成功。

1.8.2 面试技巧与解析(二)

面试官:使用MySQL Command Line Client登录时窗口闪一下就消失了,怎么解决?

应聘者:第一次使用MySQL Command Line Client有可能会出现窗口闪一下然后就消失的情况,下面就来讲解如何处理这种情况。

打开路径“C:\Program Files\MySQL\MySQL Server 5.7”,复制文件my-default.ini,然后将副本命名为my.ini,完成上面的操作后即可解决窗口闪一下就消失的问题。

1.8.3 面试技巧与解析(三)

面试官:在MySQL数据库中查询出的中文数据是乱码,怎么解决?

应聘者:在安装好数据库后导入数据,由于之前的数据使用gbk编码,而在安装MySQL的过程中使用utf-8编码,所以查询出的中文数据是乱码。其解决方法是登录MySQL,使用set names gbk命令,然后再次查询,中文显示正常。