第3章 MySQL的安装和运行 MySQL是一个具有跨平台、开放源代码、体积小、速度快等特点的数据库管理系统,在信息管理系统和各类中小型网站的开发中得到广泛的应用。本章主要介绍MySQL的特点和MySQL 8.0的新特性、MySQL 8.0的安装和配置、MySQL 8.0的启动服务和登录、MySQL图形化管理工具等内容。 3.1MySQL的特点和MySQL 8.0的新特性 3.1.1MySQL的特点 MySQL由MySQL AB公司开发、发布和支持,目前属于Oracle旗下产品。MySQL是最流行的关系数据库管理系统之一。 MySQL数据库管理系统具有以下特点。 (1) 支持多种操作系统平台如Linux、Solaris、Windows、Mac OS、AIX、FreeBSD、HPUX、Novell Netware、OpenBSD、OS/2、Wrap等。 (2) 开放源代码,可以大幅度降低成本。 (3) 使用核心线程的完全多线程服务,这意味着可以采用多CPU体系结构。 (4) 使用C和C++编写,并使用多种编译器进行测试,保证了源代码的可移植性。 (5) 为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等。 (6) 支持多种存储引擎。 (7) 优化的SQL查询算法,可有效地提高查询速度。 (8) 既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库嵌入其他的软件中。 (9) 提供多语言支持,常见的编码如中文GB2312、BIG5等都可用作数据库的表名和列名。 (10) 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。 (11) 提供可用于管理、检查、优化数据库操作的管理工具。 (12) 能够处理拥有上千万条记录的大型数据库。 用MySQL数据库管理系统构建网站和信息管理系统有两种架构方式: LAMP和WAMP。 ① LAMP(Linux+Apache+MySQL+PHP/Perl/Python)。 使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库管理系统、PHP/Perl/Python作为服务器端脚本解释器。LAMP架构的所有组成产品都是开源软件。与J2EE架构相比,LAMP具有Web资源丰富、轻量、快速开发等特点。与.NET架构相比,LAMP具有通用、跨平台、高性能、低价格等特点。 ② WAMP(Windows+Apache+MySQL+PHP/Perl/Python)。 使用Windows作为操作系统,Apache作为Web服务器,MySQL作为数据库管理系统,PHP/Perl/Python作为服务器端脚本解释器。 3.1.2MySQL 8.0的新特性 对比MySQL 5.7,MySQL 8.0有很多新功能和新特性,简要介绍如下。 1. InnoDB存储引擎增强 (1)新的数据字典可以对元数据进行统一的管理,同时也提高了更好的查询性能和可靠性。 (2) 原子DDL的操作,提供了更加可靠的管理。 (3) 自增列的持久化,解决了长久以来自增列重复值的问题。 (4) 死锁检查控制,可以选择在高并发的场景中关闭,提高对高并发场景的性能。 (5) 锁定语句选项,可以根据不同的业务需求来选择锁定语句级别,使MySQL数据库能协同工作,包括应用到集群、分区、数据防护、压缩、自动存储管理中等。 2. 账户与安全 提高了用户和密码管理的安全性,方便了权限的管理。 (1) MySQL数据库的授权表统一为 InnoDB(事务性)表。 (2) 增加了密码重用策略,支持修改密码时要求用户输入当前密码。 (3) 开始支持角色功能。 3. 公用表表达式 MySQL 8.0支持非递归和递归的公用表表达式(Common Table Expressions,CTE)。 (1) 非递归CTE。提高查询的性能和代码的可读性。 (2) 递归CTE。支持通过对数据遍历和递归使SQL实现强大、复杂的功能。 4. 窗口函数 窗口函数(Window Functions)是一种新的查询方式,可以实现较复杂的数据分析,MySQL 8.0新增了一个窗口函数。 5. 查询优化 (1) 开始支持不可见的索引,方便索引的维护和性能调试。 (2) 开始支持降序索引,提高了特定场景的查询性能。 6. JSON增强 新的运算符及JSON相关函数。 7. 字符集支持 已将默认字符集从latin1更改为utt8mb4。 3.2MySQL 8.0的安装和配置 本书将在Windows 7系统下安装MySQL 8.0,下面介绍MySQL 8.0的安装和配置步骤。 3.2.1MySQL 8.0的安装 安装MySQL 8.0,需要32位或64位Windows操作系统,如Windows 7、Windows 8、Windows 10、Windows Server 2012等,在安装时需要具有系统管理员的权限。 1. 安装软件下载 MySQL 8.0安装软件的下载网址: https:/dev.mysql.com/downloads/installer/。 打开MySQL Community Downloads下载页面,在MySQL Installer 8.0.18窗口中,选择Microsoft Windows操作系统,可以选择32位或64位安装包,这里选择32位,单击Download按钮,如图3.1所示。 图3.1MySQL 8.0下载窗口 提示: 32位安装系统有两个版本,分别为mysqlinstallerwebcommunity和mysqlinstallercommunity,前者为在线安装版本,后者为离线安装版本,这里选择离线安装版本。 2. 安装步骤 以在Windows 7 下安装MySQL 8.0版为例,说明安装步骤。 (1) 双击下载的mysqlinstallercommunity8.0.18.0.msi文件,在弹出的License Agreement(用户许可协议)窗口中选中I accept the license terms复选框,然后单击Next按钮,系统进入Choosing a Setup Type(选择安装类型)窗口,这里选择Custom(自定义安装类型), 单击Next按钮进入下一步,如图3.2所示。 图3.2Choosing a Setup Type窗口 (2) 进入如图3.3所示的Select Products and Features(产品定制选择)窗口,选择MySQL Server 8.0.18x64、MySQL Documentation 8.0.18x86和MySQL Samples and Examples 8.0.18x86,单击Next按钮进入下一步。 图3.3Select Products and Features窗口 (3) 进入Installation(安装)窗口,单击Execute按钮,如图3.4所示。 图3.4Installation窗口 (4) 开始安装MySQL文件,安装完成后在Status(状态)列将显示Complete(安装完成),如图3.5所示。 图3.5安装完成窗口 3.2.2MySQL 8.0的配置 MySQL安装完成后,需要进行配置,配置步骤如下。 (1) 在MySQL安装步骤的第(4)步,单击Next按钮,进入Product Configuration(产品配置)窗口,如图3.6所示。 图3.6Product Configuration窗口 (2) 单击Next按钮,进入High Availability(高可用性)窗口,如图3.7所示。 图3.7High Availability窗口 (3) 单击Next按钮,进入Type and Networking(类型和连接)窗口,采用默认设置,如图3.8所示。 图3.8Type and Networking窗口 在Config Type下拉文本框中选择Development Machine(开发机器)选项。 (4) 单击Next按钮,进入Authentication Method(授权方式)窗口。这里选择第2个单选项,即传统的授权方法,保留5.x版本的兼容性,如图3.9 所示。 图3.9Authentication Method窗口 (5) 单击Next按钮,进入Accounts and Roles(账户和角色)窗口,输入两次正确的密码,这里设置密码为123456,如图3.10所示。 图3.10Accounts and Roles窗口 (6) 单击Next按钮,进入Windows Service(Windows服务)窗口,本书设置服务器名称为MySQL,如图3.11所示。 图3.11Windows Service窗口 (7) 单击Next按钮,进入Apply Configuration(确认设置服务器)窗口,如图3.12 所示。 图3.12Apply Configuration窗口 (8) 单击Execute按钮,系统自动配置MySQL服务器,配置完成后,单击Finish按钮,完成服务器配置,如图3.13所示。 图3.13完成服务器设置 3.3MySQL服务器的启动和关闭 MySQL安装配置完成后,需要启动服务器进程后客户端才能通过命令行工具登录数据库。下面介绍MySQL服务器的启动和关闭。 启动和关闭MySQL服务操作步骤如下。 (1) 单击“开始”菜单,在“搜索程序和文件”框中输入services.msc命令,按Enter键,弹出“服务”窗口,如图3.14所示。可以看出,MySQL服务已启动,服务的启动类型为自动类型。 图3.14“服务”窗口 (2) 在图3.14中可以更改MySQL服务的启动类型,右击服务名称为MySQL的项目,在弹出的快捷菜单中选择“属性”命令,弹出如图3.15所示的对话框,在“启动类型”下拉列表框中可以选择“自动”“手动”和“禁用”等选项。 图3.15“MySQL的属性”对话框 (3) 在图3.15中“服务状态”栏可以更改服务状态为“停止”“暂停” 和“恢复”。这里单击“停止”按钮,即可关闭服务器。 3.4登录MySQL服务器 在Windows操作系统下,有MySQL命令行客户端和Windows命令行两种方式登录服务器,下面分别进行介绍。 3.4.1MySQL命令行客户端 在安装MySQL的过程中,MySQL命令行客户端被自动配置到计算机上,以C/S模式连接和管理MySQL服务器。 选择“开始”→“所有程序”→MySQL→MySQL Server 8.0→MySQL Server 8.0 Command Line Client命令,进入密码输入窗口,输入管理员口令,即安装MySQL时自己设置的密码,这里是123456,出现命令行提示符mysql>,表示已经成功登录MySQL服务器,如图3.16 所示。 图3.16MySQL命令行客户端 3.4.2Windows命令行 以Windows命令行登录服务器的步骤如下。 (1) 单击“开始”菜单,在“搜索程序和文件”框中输入cmd命令,按Enter键,进入DOS窗口。 (2) 输入“cd C:\Program Files\MySQL\MySQL Server 8.0\bin”命令,按Enter键,进入安装MySQL的bin目录。 输入“C:\Program Files\MySQL\MySQL Server 8.0\bin > mysql u root p”命令,按Enter键,输入密码“Enter password: ******”,这里是123456,出现命令行提示符mysql>,表示已经成功登录MySQL服务器,如图3.17 所示。 图3.17Windows命令行 3.5MySQL 图形化管理工具 MySQL 图形化管理工具采用C/S架构,用户通过安装在桌面计算机上的客户端软件连接并操作后台的MySQL数据库,客户端是图形化用户界面(Graphical User Interface,GUI)。 除了MySQL官方提供的管理工具MySQL Administrator和MySQL Workbench,还有很多 优秀的第三方开发工具,列举如下: Navicat、Sequel Pro、HeidiSQL、SQL Maestro MySQL Tools Family、SQLWave、dbForge Studio、DBTools Manager、MyDB Studio、Aqua Data Studio、SQLyog、MYSQL Front和SQL Buddy等。 3.6小结 本章主要介绍了以下内容。 (1) MySQL 8.0在InnoDB存储引擎增强、账户与安全、公用表表达式、窗口函数、查询优化、JSON增强、字符集支持等方面具有新特性。 (2) MySQL 8.0的安装和配置步骤。 (3) 启动和关闭MySQL服务器的操作步骤。 (4) 使用MySQL命令行客户端和Windows命令行两种方式登录服务器。 习题3 一、 选择题 1. MySQL是。 A. 数据库系统B. 数据库 C. 数据库管理员D. 数据库管理系统 2. MySQL组织数据采用。 A. 数据模型B. 关系模型C. 网状模型D. 层次模型 3. 下面的数据库产品,是开源数据库。 A. MySQLB. OracleC. SQL ServerD. DB2 4. UNIX和Linux操作系统平台不能使用作为数据库。 A. DB2B. SQL ServerC. OracleD. MySQL 二、 填空题 1. 登录服务器可以使用方式和Windows命令行两种方式。 2. 在MySQL服务的“启动类型”下拉列表框中可以选择“自动”“”和“禁用”等选项。 三、 问答题 1. 简述MySQL的特点以及MySQL 8.0具有哪些新特征。 2. 简述MySQL的安装和配置步骤。 3. 为什么需要配置服务器?主要配置哪些内容? 4. 简述启动和关闭MySQL服务器的操作步骤。 5. 如何判断MySQL服务器是否已经运行? 6. 简述使用MySQL命令行客户端登录服务器的步骤。 7. 简述使用Windows命令行登录服务器的步骤。 8. 为什么使用Windows命令行登录服务器需要进入MySQL安装目录? 9. 运行MySQL使系统提示符变成mysql>,与MySQL服务器有何关系? 实验3MySQL的安装和运行 1. 实验目的及要求 (1) 掌握安装和配置MySQL 8.0。 (2) 掌握MySQL服务器的启动和关闭。 (3) 掌握MySQL命令行客户端和Windows命令行两种方式登录服务器。 2. 实验内容 (1) 安装和配置MySQL 8.0(步骤参见第3章)。 (2) 启动和关闭MySQL服务,操作步骤如下。 ① 右击桌面的“计算机”图标,在弹出的快捷菜单中选择“管理”命令,弹出“计算机管理”窗口,展开左边的“服务和应用程序”,单击其中的“服务”,弹出“服务”窗口,如图3.18所示。可以看出,MySQL服务已启动,服务的启动类型为自动类型。 图3.18“服务”窗口 ② 在图3.18中,可以更改MySQL服务的启动类型,右击服务名称为MySQL的项目,在弹出的快捷菜单中选择“属性”命令,弹出如图3.19所示的对话框,在“启动类型”下拉列表框中可以选择“自动”“手动”和“禁用”等选项。 图3.19“MySQL的属性”对话框 ③ 在图3.19中的“服务状态”栏可以更改服务状态为“停止”“暂停” 和“恢复”。这里单击“停止”按钮,即可关闭服务器。 (3) 使用MySQL命令行客户端登录服务器。 选择“开始”→“所有程序”→MySQL→MySQL Server 8.0→MySQL Server 8.0 Command Line Client命令,进入密码输入窗口,输入管理员口令,即安装MySQL时自己设置的密码,这里是123456,出现命令行提示符mysql>,表示已经成功登录MySQL服务器。 (4) 使用Windows命令行登录服务器。 以Windows命令行登录服务器的步骤如下。 ① 单击“开始”菜单,在“搜索程序和文件”框中输入cmd命令,按Enter键,进入DOS窗口。 ② 输入“cd C:\Program Files\MySQL\MySQL Server 8.0\bin”命令,按Enter键,进入安装MySQL的bin目录。 输入“C:\Program Files\MySQL\MySQL Server 8.0\bin > mysql u root p”命令,按Enter键,输入密码:******,这里是123456,出现命令行提示符mysql>,表示已经成功登录MySQL服务器。