数据库原理及应用课件汇总全书电子教案完整版课件(最新)_第1页
数据库原理及应用课件汇总全书电子教案完整版课件(最新)_第2页
数据库原理及应用课件汇总全书电子教案完整版课件(最新)_第3页
数据库原理及应用课件汇总全书电子教案完整版课件(最新)_第4页
数据库原理及应用课件汇总全书电子教案完整版课件(最新)_第5页
已阅读5页,还剩393页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、7/11/2022数据库原理及应用(MySQL版)7/11/2022数据库原理及应用(MySQL版)第1章 数据库基本概念 1.1 数据与数据管理技术 1.2 数据库 1.3 数据库管理系统 1.4 数据库系统 1.5 数据库系统的结构 1.6 结构化表查询语句SQL 1.7 数据库系统设计步骤 1.8 常用数据库管理系统数据是人类活动的重要资源,目前在计算机的各类应用中,用于数据处理的约占80%左右。特别是在当前的信息化时代,数据作为一种资源的重要性日益提高。数据库是存放数据的仓库,数据库系统是研究如何妥善地组织、存储和科学地管理数据的计算机系统。数据库(DataBase,DB)一词早在20

2、世纪50年代就已经提出,经过多年的发展数据库技术已成为计算机科学的一个重要分支。数据库技术是计算机科学技术中发展最快、应用最广泛的领域之一。学校的学生信息管理、企业中的企业信息管理、银行信息管理,及国家的各种信息管理等,无一不用到数据库。数据库技术已是计算机信息系统和应用程序的核心技术和重要基础。本章主要介绍数据库系统的基本概念、SQL语言、数据库系统设计步骤和常用的数据库管理系统。数据库原理及应用(MySQL版)1.1 数据与数据管理技术1.1.1 数据数据(Data)是描述事物的符号记录,具体来讲就是人们从实际当中抽取感兴趣的事物特征或属性。数据是信息的符号表示或载体。由于数据能被书写,因

3、而能够被记录、存储和处理,在计算机中,数据包括数字、文字、图形、图像、音频、视频等等,对数据进行处理可以得到有用的信息。数据具有一定的格式(语法)和含义(语义)。数据的格式规定了数据的语法结构,如身份证号、电话号码、车牌号等都有相应的编码规则,即语法定义。数据的含义(语义)是对数据的具体解释。如我国二代身份证格式规定为15位,其中第l6位数为行政区划代码,第712位数为出生日期代码(第7、8位为出生年份(两位数),第9、10位为出生月份,第11、12位代表出生日期),第1315位数为分配顺序代码,最末一位数是奇数的分配给男性,偶数分配给女性。按照上述语法,就可以正确解读出任何一个身份证号的具体

4、含义。数据库原理及应用(MySQL版)1.1.2 数据管理技术数据管理技术是人们对数据进行收集、组织、存储、处理、传播和利用的一系列活动的总和。基于人们对数据处理的需求推动,以及计算机软件、硬件和应用的不断发展,数据管理技术的发展经历了人工管理、文件系统、数据库系统3个阶段。1人工管理阶段该阶段的主要特点是数据不长期保存在计算机中,应用程序管理数据,数据不独立于应用程序,应用程序间不能共享数据。2文件系统阶段该阶段的主要特点是数据可以长期保存在外存上重复使用,数据独立于程序,由文件系统来管理数据。3数据库系统阶段该阶段的主要特点是数据结构化,数据的独立性高,数据的共享性高、冗余度低、易扩充,数

5、据由DBMS统一管理和控制,便于使用。数据库原理及应用(MySQL版)1.2 数据库数据库(DataBase,DB)是存储在计算机内的、有组织的、统一管理的相关数据的集合。就是说数据库是存储数据的仓库,其中的数据是按一定的结构组织存储的,具有较小的冗余度、较高的数据独立性和易扩展性,可为多个用户共享。例如高校的学生学籍信息数据库,学生的成绩等学籍信息都是按一定的结构和联系进行组织、存储,教务管理部门、任课教师和学生等用户都可以进行权限允许的处理、查看等操作。数据库原理及应用(MySQL版)1.3数据库管理系统数据库只是用来存放数据,需要通过相应的软件才能对其中的数据进行处理。数据库管理系统(D

6、ataBase Management System,DBMS)是对数据库进行管理的软件。数据库管理系统为数据库提供数据的定义、建立、维护、查询、统计等操作功能,并提供数据完整性、安全性、多用户并发使用、备份与恢复等管理功能。数据库管理系统是位于数据库用户和操作系统之间的一层数据管理软件,为用户提供了访问数据库的各种方法,使用户可以透明地访问数据库,不需要知道数据库的物理组织和存储方式。采用关系数据模型的数据库管理系统称为关系数据库管理系统(Relational DataBase Management System,RDBMS),由于关系数据模型数据结构简单、清晰、易用,所以关系模型得到了广泛应

7、用,目前常用的数据库管理系统几乎都是关系数据库管理系统。数据库原理及应用(MySQL版)1.3 数据库管理系统数据库管理系统主要有数据定义、数据操纵、数据库的运行管理和数据库的建立和维护等功能。1数据定义功能DBMS中通常提供了多种数据库对象,包括数据表、视图、存储过程等等,用户首先需要定义创建这些对象,然后才能使用。DBMS提供数据定义语言(Data Definition Language,DDL),用户通过DDL可以方便地对数据库中的数据对象进行定义。2数据操纵功能DBMS还提供数据操纵语言(Data Manipulation Language,DML),用户可以使用DML实现对数据库的基

8、本操作,如数据查询、插入、修改和删除等。3数据库的运行管理数据库在建立、使用和维护时由DBMS统一管理、统一控制,以保证数据的安全性、完整性、多个用户对数据的并发使用和故障后的数据库恢复等,保证数据库能正确、有效地运行。4数据库的建立和维护数据库的建立和维护包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组、性能监测和分析等功能。这些功能是由DBMS提供的一些实用程序完成的。数据库原理及应用(MySQL版)1.4 数据库系统数据库系统(DataBase System,DBS)是指包含数据库和数据库管理系统的计算机系统。数据库系统通常由数据库、数据库管理系统、应用系统、数据

9、库管理员及用户构成,如图1-1所示。数据库管理系统数据库用户应用系统应用系统数据库管理员数据库的建立、使用和维护等需要专门的人员来管理,这些管理人员被称为数据库管理员(DataBase Administrator,DBA)。数据库原理及应用(MySQL版)1.5 数据库系统的结构1.5.1 数据库三级模式结构从数据库最终用户的角度来看,即从数据库系统外部来看,数据库系统的体系结构可分为集中式结构(又可分为单用户结构和主从式结构)、分布式结构、客户/服务器结构和并行结构。从数据库管理系统角度来看,数据库系统通常采用三级模式结构:外模式、内模式和概念模式,如图1-2,这是从数据库系统内部看到的体系

10、结构。数据库原理及应用(MySQL版)1.5.1 数据库三级模式结构1概念模式(逻辑模式、模式)概念模式也称为逻辑模式,常简称为模式。逻辑模式是数据库中整体数据的逻辑结构和特征的描述,包括概念记录类型、记录之间的联系、数据的完整性和安全性约束等数据控制方面的规定等。逻辑模式是所有用户的公共数据视图。例如学籍数据库中有学生学基本信息表、课程表、选课成绩表、各种视图和存储过程等对象,对所有这些对象及其关联的定义就构成了学籍数据库的逻辑模式。2内模式(存储模式)内模式也称为存储模式,是数据库内部数据物理存储结构的描述,定义了记录的存储结构、索引组织方式以及数据是否压缩存储和加密等数据控制细节。数据库

11、原理及应用(MySQL版)1.5.1 数据库三级模式结构3外模式(用户模式)外模式是数据库用户能看到和使用的那部分数据的逻辑结构和特征的描述,是用户的数据视图,也是应用程序与数据库系统之间的接口。用户可以通过数据定义语言和数据操纵语言来定义数据库的结构和对数据库进行操作,只需按所定义的外模式进行操作,无需了解概念模式和内模式的内部细节。由于外模式通常是模式的子集,即一个用户通常只用到数据库中的部分数据,所以外模式通常也称为子模式或用户模式。对应于不同的用户和应用,一个数据库可以有多个不同的外模式。例如在学籍数据库系统中,教学管理部门可以分析、汇总学生成绩,二每个学生只能查看个人的成绩、学分等学

12、籍有关信息等。有时也将外模式、概念模式和内模式对应的不同层次的数据库分别称为用户级数据库、概念级数据库和物理级数据库。数据库原理及应用(MySQL版)1.5.2 三级模式之间的映射在图1-2中可以看到在三级模式之间还存在外模式/概念模式映射和概念模式/内模式两层映射,这是为了实现数据库三个抽象层次的联系与转换。对一个数据库系统来说,实际上存在的只是物理级数据库,它是数据访问的基础。概念级数据库不过是物理级数据库的一种抽象描述,用户级数据库是用户和数据库的接口。用户根据子模式进行数据操作,通过子模式到概念模式的映射与概念级数据库联系起来,又通过概念级到存储的映射与物理级联系起来,使用户不必关心数

13、据在计算机中的具体表示方式和存储方式。数据库原理及应用(MySQL版)1.5.2 三级模式之间的映射在图1-2中可以看到在三级模式之间还存在外模式/概念模式映射和概念模式/内模式两层映射,这是为了实现数据库三个抽象层次的联系与转换。对一个数据库系统来说,实际上存在的只是物理级数据库,它是数据访问的基础。概念级数据库不过是物理级数据库的一种抽象描述,用户级数据库是用户和数据库的接口。用户根据子模式进行数据操作,通过子模式到概念模式的映射与概念级数据库联系起来,又通过概念级到存储的映射与物理级联系起来,使用户不必关心数据在计算机中的具体表示方式和存储方式。DBMS的中心工作之一,就是完成三级模式之

14、间的两层映射,把用户对数据库的操作具体实现到对物理设备的操作,实现数据与应用程序之间的独立性。数据库原理及应用(MySQL版)1.6 结构化查询语言SQL存储在数据库中的数据最终是要使用的,对数据库的主要操作就是数据查询。由于数据库规模通常都很大,特别是在信息爆炸的信息时代,要在庞大的数据库中快速准确地找到需要的数据,需要有效地数据查询技术和工具。SQL(Structured Query Language,结构化查询语言)语言是目前关系数据库系统广泛采用的数据查询语言。SQL由Boyce和Chamberlin于1974年提出的,并在IBM研制的System R关系数据库管理系统上实现。1987

15、年成为国际标准,经多次改进,SQL也从简单的数据查询语言逐渐成为功能强大、更加规范、应用广泛的数据库语言。数据库原理及应用(MySQL版)1.6 结构化查询语言SQL1SQL的特点SQL语言之所以能够在业界得到广泛使用,是因为其功能完善、语法统一、易学。SQL主要有以下特点。(1)功能的一体化:SQL集数据定义语言(Data Definition Language,DDL)、数据操纵语言(Data Manipulation Language,DML)、数据控制语言(Data Control Language,DCL)于一体,能够完成关系模式定义、建立数据库、插入数据、查询、更新、维护、数据库重

16、构、数据库安全性控制等一系列操作。(2)统一的语法结构:SQL有两种使用方式,一种是自含式(联机使用方式),即SQL可以独立地以联机方式交互使用;另一种是嵌入式,即将SQL嵌入到某种高级程序设计语言中使用。这两种方式分别适用于普通用户和程序员,虽然使用方式不同,但SQL的语法结构是统一的,便于普通用户与程序员交流。(3)高度非过程化:SQL是一种非过程化数据操作语言,即用户只需指出“干什么”,而无需说明“怎么干”。如用户只需给出数据查询条件,系统就可以自动查询出符合条件的数据,而用户无需告诉系统存取路径及如何进行查询等。(4)语言简洁:SQL语句简洁,语法简单,非常自然化,易学易用。数据库原理

17、及应用(MySQL版)2SQL的功能(1)数据定义:定义数据库的逻辑结构,包括定义基本表、视图和索引,相关的操作还包括对基本表、视图、索引的修改与删除。基本表是数据库中独立存在的表,通常简称为表。在SQL中一个关系就对应一个基本表,一个或多个基本表对应一个存储文件,一个基本表可以有多个索引,索引也保存在存储文件中。一个数据库中可以有多个基本表。视图则是由一个或多个基本表导出的表。数据定义功能是通过数据定义语言(DDL)实现的。(2)数据操纵:主要包括数据查询和数据更新操作。数据查询是数据库应用中最常用最重要的操作;数据更新则包括对数据库中记录的增加、修改和删除操作。数据操作功能是通过数据操纵语

18、言(DML)实现的。(3)数据控制:主要是对数据的访问权限进行控制,包括对数据库的访问权限设置、事务管理、安全性和完整性控制等。数据控制功能是通过数据控制语言(DCL)实现的。(4)嵌入功能:即SQL可以嵌入到其他高级程序设计语言(宿主语言)中使用。前面讲过SQL有自含式和嵌入式两种使用方式,SQL的主要功能是数据操作,自含式使用使数据处理功能差,而高级程序设计语言的数据处理功能强,但其数据操作功能弱,为了结合二者的优点,常将SQL嵌入到高级程序设计语言中使用,实现混合编程。为了实现嵌入使用,SQL提供了与宿主语言之间的接口。数据库原理及应用(MySQL版)1.7 数据库系统设计步骤按照规范设

19、计的方法,考虑数据库及其应用系统开发全过程,将数据库系统设计分为以下6个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库的运行和维护。如图1-3。在数据库设计过程中,需求分析和概念设计可以独立于任何数据库管理系统进行,逻辑设计和物理设计与选用的DBMS密切相关。数据库原理及应用(MySQL版)1.7 数据库系统设计步骤收集分析需求数据模型优化使用、维护数据库应用要求DBMS特征转换规则DBMS功能优化方法设计概念模型应用需求设计逻辑结构设计物理结构评价设计、性能评测试运行物理实现需求分析阶段概念结构设计阶段逻辑结构设计阶段物理设计阶段数据库实施阶段数据库运行维护阶段

20、数据库原理及应用(MySQL版)1.7 数据库系统设计步骤1需求分析阶段设计数据库首先必须要准确了解和分析用户需求,需求分析的任务,是通过详细调查现实世界要处理的对象和原有系统的应用情况,明确用户的各种需求,弄清系统要达到的目标和实现的功能。需求分析是整个设计过程的基础,也是最困难,最耗时的一步。需求分析是否做得充分与准确,决定了数据库系统的质量与成败。如果需求分析做得差,会严重影响系统性能甚至不得不返工重做。需求分析常用方法有结构化分析方法(Structured Analysis,SA)、面向对象的分析力法等。2概念结构设计阶段概念结构是独立于任何一种数据模型的信息结构,概念结构设计是通过对

21、用户需求进行综合,归纳与抽象,形成了一个独立于具体DBMS的概念模型。概念结构设计是整个数据库设计的关键,通常采用E-R模型进行设计。数据库原理及应用(MySQL版)1.7 数据库系统设计步骤3逻辑结构设计阶段逻辑结构设计是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。例如要使用MySQL,就需要将概念结构设计夹断设计的E-R模型转换成MySQL所支持的关系模型。4物理设计阶段物理设计的主要任务是为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据存储结构、存储位置和存取方法。5数据库实施阶段数据库实施阶段,系统设计人员通过DBMS提供的数据操作语言(如SQL)及其宿主语言

22、,根据逻辑设计和物理设计的结果建立数据库、编制和调试应用程序,组织数据入库,并进行试运行。6数据库运行和维护阶段数据库应用系统经过试运行后,即可投入正式运行,在数据库系统运行过程中必须不断地对其进行评价、调整、修改。数据库原理及应用(MySQL版)1.8 常用数据库管理系统目前常用的数据库管理系统包括Microsoft Access、Microsoft SQL Server、Oracle、MySQL、DB2、SQLite等,这里对它们作简要介绍。详见教材。数据库原理及应用(MySQL版)2022/7/11数据库原理及应用(MySQL版)2022/7/11数据库原理及应用 第2章 概念模型设计

23、2.1 概念模型的基础知识 2.2概念模型的设计方法与步骤 2.3 图书管理系统的概念模型设计 2022/7/11数据库原理及应用2.1 概念模型的基础知识1.数据模型2.信息的三个世界3.概念模型的基本概念2022/7/11数据库原理及应用2.2 概念模型的设计方法与步骤1.概念模型的特点2.概念模型设计的策略3.概念模型的设计(1)设计局部 E-R 模型:确定局部清晰的实体及其联系。(2)设计全局的 E-R 模型:将局部的 E-R 图集成为全局的 E-R 图。(3)优化全局 E-R 模型:对相同的实体合并,消除冗余的属性和联系等。4设计过程中遇到的问题2022/7/11数据库原理及应用2.

24、3 图书管理系统的概念模型设计1.问题描述 某市为了更好地服务当地市民,新建了一所公共图书馆,图书馆藏书数万册,包括小说、生活、专业等多种类型。为了更好地开展服务,现欲开发图书管理系统,方便市民在图书馆看书和借阅。为了保证图书良好流通,防止借书不还等不良行为的发生,图书馆要求借出的图书总价值不能超过 100 元,借阅时间不超过 1 个月,逾期不还者,每本书每天罚款 0.1 元。市民如果需要办理图书证,只需带个人身份证,同时提交 100 元押金,即可到图书馆前台办理。2022/7/11数据库原理及应用2.3 图书管理系统的概念模型设计2概念模型分析与设计1)局部ER图12022/7/11数据库原

25、理及应用2.3 图书管理系统的概念模型设计2概念模型分析与设计2)局部ER图22022/7/11数据库原理及应用2.3 图书管理系统的概念模型设计2概念模型分析与设计2)全局ER图2022/7/11数据库原理及应用2.3 图书管理系统的概念模型设计2概念模型分析与设计3)优化ER图2022/7/11数据库原理及应用(MySQL版)2022/7/11数据库原理及应用 第 3 章 逻辑模型设计 3.1 逻辑模型的基础知识 3.2 关系的完整性 3.3 关系数据库理论 3.4 数据库逻辑模型设计 3.5 图书管理系统的逻辑模型设计2022/7/11数据库原理及应用3.1 逻辑模型的基础知识3.1.1

26、 关系模型概述 关系数据模型起源于数学,它用二维表来组织数据,而这个二维表在关系数据库中称为关系,关系数据库就是表(或者说关系)的集合。3.1.2 关系数据模型的基本概念 关系、元组、属性、码、主码、超码、候选码、域、关系模式2022/7/11数据库原理及应用3.2 关系的完整性1实体完整性 关系模型采用主属性,主属性的值在一个关系中互相不同,因此主属性就用来表示实体的完整性。2参照完整性关系模型中,参照完整性约束用外码来表示。3用户自定义完整性特殊的约束条件就是用户自定义的完整性约束。2022/7/11数据库原理及应用3.3 关系数据库理论3.3.1 关系模式设计中的问题 非规范化的关系数据

27、库,会存在数据冗余量大,数据删除、插入异常及数据更新不一致等问题。关系规范化指在关系理论基础上,尽量降低数据冗余、异常操作等问题。2022/7/11数据库原理及应用3.3 关系数据库理论-关系模式问题举例 (1)数据冗余大。每个学生的每门课程都需要输入系别和系领导,重复量太大。(2)插入异常。当一个新系在没有招生的时候,因为没有学生,该系信息不能输入。(3)更新异常。如果更换某个系的系领导,则需要每条记录中的系领导都需要修改,容易造成数据不一致。(4)删除异常。假如一个系的学生全部毕业,则删除该系学生,但是在删除学生的同时,该系也被删除,而实际上该系仍然存在,只是没有学生,因此出现不该删除的数

28、据丢失的问题。2022/7/11数据库原理及应用3.3 关系数据库理论3.3.2 函数依赖 非平凡的函数依赖:在关系模式 R(U)中,若 XY,但 Y X,则称 XY 是非平凡的函数依赖。 平凡的函数依赖:在关系模式 R(U)中,若 XY,但 YX,则称 XY 是平凡的函数依赖。 完全函数依赖:在关系模式 R(U)中,如果 XY,并且对于 X 的任何一个真子集 X,都有 X/ Y,则称 Y 对 X 完全函数依赖。 部分函数依赖:在关系模式 R(U)中,若 XY,但 Y 不完全函数依赖于 X,则称 Y 对 X部分函数依赖。 传递函数依赖:在关系模式 R(U)中,如果 XY,Y/ X,且 Y X,

29、YZ,则称 Z 传递函数依赖于 X。2022/7/11数据库原理及应用3.3 关系数据库理论3.3.3 范式1第一范式如果关系中所有属性域的值都是原子的(即不可再分的、简单的),则该关系属于第一范式(1NF)。 2第二范式如果关系 R 属于 1NF,并且 R 中的每个非主属性都完全函数依赖于 R 的候选码,则该关系 R 属于第二范式(2NF)。、3第三范式如果关系 R 属于 2NF,并且 R 中的非主属性满足两个条件:相互独立、函数依赖于主键。则关系 R 属于第三范式,4Boyce-Codd 范式(BC 范式)如果关系 R1NF,若 XY 且 Y 不是 X 的子集,则 X 必含有候选码,那么

30、RBCNF。2022/7/11数据库原理及应用3.3 关系数据库理论3.3.4 关系模式的规范化1规范化 规范化是把一组有异常的关系分解为更小的、结构良好的关系的过程,这些关系应该有最小的冗余。2规范化如何应用在数据库中 主码属性列在前面,联系集常常以相关实体集名称的拼接来命名,能正确识别所有实体,规范化不是程度越高越好,对一些特定应用,使用冗余可以提高性能。2022/7/11数据库原理及应用3.4 数据库逻辑模型设计3.4.1 概念模型向关系模型的转换规则1实体之间 1:1 的联系,例如2022/7/11数据库原理及应用3.4 数据库逻辑模型设计3.4.1 概念模型向关系模型的转换规2实体之

31、间 1:n 的联系,例如2022/7/11数据库原理及应用3.4 数据库逻辑模型设计3.4.1 概念模型向关系模型的转换规3实体之间 n:m 的联系,例如2022/7/11数据库原理及应用3.4 数据库逻辑模型设计3.4.2 采用 E-R 模型图方法的逻辑设计步骤2022/7/11数据库原理及应用3.5 图书管理系统的逻辑模型设计(1)基本转换。根据关系模式的转换规则,首先将实体和联系转换为关系模式,转换如下:1)图书(书号,书名,简介,作者,价格,数量,类型名称)2)读者(身份号,姓名,联系电话)3)图书类型(类型名称)4)(名称,联系人,联系电话)5)购买(名称,书号,购买时间)6)借阅(

32、身份号,书号,借书时间,还书时间,罚款额)。2022/7/11数据库原理及应用3.5 图书管理系统的逻辑模型设计(1)基本转换。根据关系模式的转换规则,首先将实体和联系转换为关系模式,转换如下:2022/7/11数据库原理及应用3.5 图书管理系统的逻辑模型设计(2)优化7/11/2022数据库原理及应用(MySQL版)7/11/2022 第4章 MySQL数据库环境 4.1 MySQL简介MySQL是一个关系型数据库管理系统,由天才程序员Monty Widenius开发。在1996年发布了MySQL1.0版本,当时还只是面向一小波人使用。2000年6月MySQL的第一个发行版本3.23,由瑞

33、典的MySQL AB公司发行,2008年2月被SUN公司收购,2009年SUN又被Oracle公司收购,MySQL并入Oracle公司。Oracle负责MySQL后,对MySQL提出了企业版和社区版。其中,企业版提供MySQL监控程序和技术支持并收费。4.1 MySQL简介MySQL之父Monty Widenius离开了Sun之后,发现MySQL现存问题。MySQL核心开发团队是封闭的,完全没有Oracle之外的成员参加。并且MySQL新版本的发布速度,在Oracle收购Sun之后大为减缓。于是Monty Widenius决定另开分支,这个分支的名字叫做 MariaDB。目标是提供一个由社区开

34、发的、稳定的、总是免费的MySQL分支,在用户级别上兼容主流版本。Monty Program公司承诺MariaDB将会一直保持独立和开源。目前MySQL是最受欢迎的开源SQL数据库管理系统,MySQL数据库结构被组织成针对速度优化的物理文件。逻辑模型具有数据库,表,视图,行和列等对象,可提供灵活的编程环境。MySQL Server最初开发用于处理大型数据库的速度比现有解决方案快得多,并且已成功应用于高要求的生产环境中数年。MySQL Server提供了丰富而有用的功能集。它的连接性,速度和安全性使MySQL Server非常适合访问Internet上的数据库。7/11/20224.2 MySQ

35、L的安装与配置MySQL的安装文件可以在MySQL官网“/downloads/”,进行版本选择,并下载,如图4.1所示。图4.1 MySQL社区版下载界面7/11/20224.2 MySQL的安装与配置MySQL服务提供多种不同的服务版本,有收费版本和免费版本,根据实际用途不同,按需选择所需版本,各个版本之间的区别如下所示。(1)MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。(2)MySQL Enterprise Edition 企业版本,需付费,可以试用30天。(3)MySQL Cluster 集群版,开源免费。(4)MySQL Cluster CG

36、E 高级集群版,需付费。在本章中选择“MySQL Community Server ”开源免费版本进行安装。在选定MySQL的服务版本后,还需要确定要安装的MySQL Version,本章以MySQL 5.6为例,介绍MySQL服务的安装过程。在MySQL默认下载页面中,显示的是最新的MySQL服务版本MySQL 8.0,若想选择以前的MySQL版本,可以在图4.2所示的“Looking for previous GA versions”中选择所需要的版本。7/11/20224.2 MySQL的安装与配置图4.2 MySQL服务版本选择 4.2 MySQL的安装与配置 4.2.1 Window

37、s平台下MySQL的安装 4.2.2 Linux平台下MySQL的安装 7/11/20224.2.1 Windows平台下MySQL的安装如图4.3所示,根据不同的操作系统平台,MySQL的安装包又被细分为多个版本,本小节以windows平台为例来说明。图4.3 MySQL平台版本选择7/11/20224.2.1 Windows平台下MySQL的安装MySQL的安装包分为解压版本和msi的“Windows Installer”的数据包。MySQL的解压缩版本需要进行很多的配置选择,在初次安装使用时,建议选择“Windows Installer”的msi版本。本章所示安装过程,即为“Window

38、s Installer”的msi版本,如图4.4所示。图4.4 windows版MySQL安装包下载7/11/20224.2.1 Windows平台下MySQL的安装单击【Download】按钮后,进入如图4.5所示的下载页面,在这个页面中,MySQL会邀请下载者登录,或者注册登录。但是,这个过程并非强制性,如果没有帐号,或者不想注册,那么可以选择页面底部的“No thanks, just start my download”,直接开始下载。图4.5 MySQL安装文件下载7/11/20224.2.1 Windows平台下MySQL的安装下载完毕后,双击MySQL的安装文件mysql-inst

39、aller-community-.msi,会打开如图4.6所示的对话框。当准备工作完毕后,会出现如图4.7所示的“Finding all installed pachages”对话框。图4.6 mysql-installer-community-.msi 启动页面图4.7 安装检测页面7/11/20224.2.1 Windows平台下MySQL的安装稍等片刻后,就可以进入如图4.8所示的安装界面,该界面要求安装者阅读MySQL的使用许可协议,并在阅读后,勾选“I accept the license terms”,此时【Next】按钮可用,单击【Next】按钮,进入如图4.9所示界面。图4.8

40、 MySQL安装许可协议图4.9 选择安装类型在图4.9所示的“Choosing a Setup Type”界面中,要求安装者选择要安装的MySQL服务的类型,包括“Developer Default”、“Server only”、“Client only”、“Full”、“Custom”五种。对于不同的安转类型,安装的组件内容不同。其中,选择“Full”,则会安装MySQL的所有的服务组件,选择“Server only”则仅仅会安装MySQL Server组件等。在本章中,选择“Developer Default”的默认安装,该类型下已经包含了本书所需的所有组件,如无特殊要求,直接选择默认安

41、装类型即可。单击【Next】进入环境依赖检测页面,如图4.10所示。根据安装者所使用的操作系统不同,以及目前系统中安装过的环境不同,该界面的检测结果不同。检测出的一些所需环境,MySQL安装包部分会给出直接修复方案。此时,在图4.10界面中,会有【Execute】按钮,单击该按钮即可进行自动安装这些可自动修复环境。4.2.1 Windows平台下MySQL的安装图4.10 安装环境依赖检测7/11/20224.2.1 Windows平台下MySQL的安装还有一部分的以来环境需要手动下载及安装,如图4.10所示的界面中,status显示“Manual”结果的,即需要安装者手动解决,安装文件的下载

42、路径,只需要单击具体的“For Product”行,在界面中就会出现,解决方案。根据实际安装需求,并不是所有的以来环境都必须安装。有些以来是不影响MySQL服务内容的,可以选择忽略。例如,本书中并不涉及到Excel、Python的相关开发内容,对这些环境就进行忽略。单击【Next】后,会弹出如图4.11所示的提示框。单击【Yes】,进入图4.12所示界面。图4.11 环境依赖缺失提示框图4.12 MySQL安装界面7/11/20224.2.1 Windows平台下MySQL的安装在图4.12所示界面中为MySQL各个组件的正式安装界面。MySQL所需组件的安装包需要联网进行下载。单击界面中【E

43、xecute】按钮后,MySQL组件安装过程正式开始。当全部组件下载完毕后,进入图4.13所示界面。单击图4.13中的【Next】按钮,进入如图4.14所示产品配置界面。在这个安装过程中,主要为三个组件进行配置,分别是“MySQL Server ”、“MySQL Router”、“Samples and Examples”。其中,“MySQL Server”是本书所要介绍的核心内容,即MySQL数据库服务功能的相关内容。而MySQL Router是为应用程序和MySQL服务之间提供透明路由的轻量级中间件,是 InnoDB集群的一部分。通过MySQL Router来构建高可用架构,可以简化应用程

44、序开发,提高性能和可靠性。Examples and Samples是一些数据库案例,在安装好MySQL服务后,可以在数据库服务端,查看到这些数据库实例。图4.13 MySQL组件下载成功图4.14 组件配置提示框7/11/20224.2.1 Windows平台下MySQL的安装单击【Next】按钮,进入图4.15所示的MySQL Server类型与网络配置页面,在该页面中,需要配置当前MySQL服务。首先是“Server Configuration Type ”中的“Config Type”选项,如下所示。(1)Development Computer,开发机器。该选项代表典型个人用桌面工作站

45、。假定机器上运行着多个桌面应用程序。将MySQL服务器配置成使用最少的系统资源。(2)Server Machine,服务器。该选项代表服务器,MySQL服务器可以同其它应用程序一起运行,例如FTP、email和web服务器。MySQL服务器配置成使用适当比例的系统资源。(3)Dedicated MySQL Server Machine,专用MySQL服务器。该选项代表只运行MySQL服务的服务器。假定运行没有运行其它应用程序。MySQL服务器配置成使用所有可用系统资源。作为初学者,建议选择“Development Computer”选项,这样占用系统的资源比较少。本节选择“Developmen

46、t Computer”。图4.15 MySQL server类型与网络配置7/11/20224.2.1 Windows平台下MySQL的安装其次,是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql 数据库了,本节这里选择启用,把前面的勾打上,服务端口设置为3306。还有一个关于防火墙的设置“Open firewall port for network access”需要选中,将MySQL服务的监听端口加为windows防火墙例外,避免防火墙阻断。单击【Next】继续。单击【Next】按钮,进入MySQL Server的账户配置页面,如图4.16所示。在该页面中,

47、安装者需要设置MySQL服务器的“root”账户的登录密码。该处密码,请读者设置完毕后记好,因为后期对MySQL Server的配置更改、账户管理、权限管理等操作,都需要使用root来处理。在界面下方的“MySQL User Accounts”中,可以增加MySQL Server的其他访问账户,安装者可以在这里创建一个新的账户,缩小权限范围,提高安全性,并使用该账户访问MySQL Server。7/11/20224.2.1 Windows平台下MySQL的安装单击【Add User】按钮,即可打开如图4.17所示的添加账户的对话框。在该对话框中,除了指定“Username”和“Password

48、”,另外两个比较重要的选项是“Host”和“Role”。“Host”是当前增加的这个账户可以从哪里访问这个MySQL Server,是只能在当前MySQL Server安装的机器上,即“localhost”进行访问,还是允许远程访问,在某个ip下进行远程访问,还是所有情况下,都可以连接这个MySQL Server进行访问。其中默认的“”就代表当前增加的账户,可以在任何地址对MySQL Server进行远程访问。“Role”代表了当前账户的角色,决定了当前账户的权限。图4.16 MySQL Server账户配置界面7/11/20224.2.1 Windows平台下MySQL的安装设置好用户账户信

49、息后,单击【OK】,在“Accounts and Roles”配置页面中,就可以看到增加了一个账户的信息,如图4.18所示。图4.17 新建账户图4.18 MySQL Server 账户信息设置成功7/11/20224.2.1 Windows平台下MySQL的安装单击【Next】按钮,进入Windows服务设置界面。MySQL Server作为Windows操作系统中一个系统服务而存在,可以通过Windows的服务管理界面进行管理。所以需要将MySQL Server注册到Windows操作系统中,如图4.19所示。在这里需要勾选“Configure MySQL Server as a Wind

50、ows Service”,该选项表明将MySQL Server配置为Windows操作系统下的服务,给该服务起名,默认名称为“MySQL56”,该服务名称可以根据实际需要,自行更改。另外,该MySQL Server是否需要随着操作系统的启动而启动。可以勾选“Start the MySQL Server at System Startup”,让MySQL Server在操作系统启动时,自动启动。7/11/20224.2.1 Windows平台下MySQL的安装图4.19 Windows系统服务配置到此,MySQL Server所需的相关配置内容,就已经全部配置完毕。接下来,需要单击【Next】,

51、以将上述的配置内容,设置到MySQL Server中,即,正式执行配置,如图4.20所示。单击【Execute】开始配置,配置完成后,会显示如图4.21所示配置成功界面。7/11/20224.2.1 Windows平台下MySQL的安装图4.20 MySQL Server 执行配置图4.21 MySQL Server 配置成功7/11/20224.2.1 Windows平台下MySQL的安装MySQL Server配置完成后,单击【Finish】按钮,回到“Product Configuration”界面,准备进行后续的其他产品组件配置,包括MySQL Router和MySQL数据库案例包,如

52、图4.22所示。图4.22 MySQL Router 配置准备7/11/20224.2.1 Windows平台下MySQL的安装首先,进行MySQL Router的配置准备,MySQL Router并不是本书的重点,该组件也可以在前期安装的时候,选自定义安装,而不选择“Full”,或者我们现在选择的开发版。所以,本节对于MySQL Router的安转该过程不做解释,安装者只需要按照默认选项,直接选择【Next】进入下一步,如图4.23所示,MySQL rouer配置完毕。图4.23 MySQL Router 配置7/11/20224.2.1 Windows平台下MySQL的安装单击【Finis

53、h】按钮,进行MySQL数据库案例的安装,如图4.24所示。MySQL数据库案例安装时,需要确定当前MySQL Server已经正常安装,并已经启动。还需要设置能够正常访问这个MySQL Server的用户名和密码,并进行测试连接,当连接成功后,才能够进行后续的安装过程,如图4.25所示。图4.24 MySQL 案例安装准备7/11/20224.2.1 Windows平台下MySQL的安装选择当前系统中能够进行连接的MySQL Server的服务,本节选择“MySQL Server 5.6.41”,即前面我们安装的数据库服务,然后使用前面设置的root账户进行登录,输入用户名和密码,如图4.2

54、6所示。此时,【Check】按钮可用,单击【Check】按钮,会显示连接结果,连接成功,单击【Next】按钮,即可进入如图4.27所示的安装界面,单击【Execute】按钮,进行安装。图4.25 MySQL Server连接测试7/11/20224.2.1 Windows平台下MySQL的安装安装完成后,进入如图4.28所示界面,单击【Finish】,至此,MySQL安装过程中所需要的产品配置信息都已经配置成功,单击图4.29中【Next】按钮,完成所有安装,如图4.30所示,MySQL安装成功。图4.26 MySQL Server连接测试成功图4.27 安装案例库7/11/20224.2.1

55、 Windows平台下MySQL的安装图4.28 案例库安装成功图4.29 MySQL产品配置完毕图4.30 MySQL安装完成7/11/20224.2.1 Windows平台下MySQL的安装单击【Finish】按钮,稍等片刻,打开MySQL连接客户端MySQL Workbench工具的主界面,如图4.31所示,Windows平台下的MySQL安装成功。图4.31 MySQL Workbench主界面7/11/20224.2.2 Linux平台下MySQL的安装Mysql的Linux安装方式一共有三种:(1)yum安装,此种方式需要连接网络进行安装,类似于安装向导,只要安装成功,服务器运行、

56、客户端连接都不会出现问题。(2)Glib安装,此种方式通过命令行进行安装,并且需要进行一些配置,如果配置出错可能会出现服务启动不了,或者客户端连接不上等问题。(3)源码安装,这种安装方式,比较适合MySQL的高阶使用,安装者可以自己选择要安装的组件,配置项比较多,出错的可能性很大。我们选择glib的安装方法进行介绍,yum安装方式请读者自行查询网络知识进行学习。以cenos7.3操作系统为例,演示MySQL在Linux平台下的安装流程。首先,下载Linux下的MySQL的glib安装包。在安装MySQL之前,需要先确认在当前的Linux操作系统中是否已经安装了MySQL服务。根据个人下载的操作

57、系统的版本不同,可能会出现不同的情况。在cenos7操作系统中,默认集成了MySQL的开源版本mariadb。mariadb的安装将会影响本书中的MySQL5.6的安装。所以,在进行安装之前,请读者检查自己的系统总是否存在MySQL服务,或者mariadb服务。如果存在,请先完成卸载,再进行安装。7/11/20224.2.2 Linux平台下MySQL的安装首先使用“yum”命令来检测,当前Linux系统中是否已经安装了MySQL和mariadb,如图4.32所示,输入“yum list installed | grep mysql”和“yum list installed | grep ma

58、riadb”,查看检测结果,在本系统中已经包含有mariadb服务。使用当前操作系统的root账户权限,将已经存在的mariadb删除,如图4.33所示,使用命令“sudo yum -y remove 已安装的数据库名称”,删除图4.32所示的已存在的数据库。图4.32 检测centos系统中的数据库安装图4.33 删除已存在的数据库7/11/20224.2.2 Linux平台下MySQL的安装删除成功后,在使用“yum list installed | grep mysql”和“yum list installed | grep mariadb”确认是否已经删除,如图4.34所示,如果不再有

59、结果显示,证明已经删除成功。因为MySQL服务需要依赖libaio包,所以先要安装libaio包,使用命令“yum search libaio”检索一下系统是否已经安装了libaio包,如图4.35所示,本机安装的centos7系统已经带有libaio包,所以不需要安装。如果,本机检测没有该包,则执行命令“sudo yum -y install libaio”进行安装即可。图4.34 检验数据库是否删除成功过图4.35 检索libaio包是否安装7/11/20224.2.2 Linux平台下MySQL的安装使用命令“tar -zvxf mysql-5.6.41-linux-glibc2.12-

60、x86_64.tar.gz”,将已经下载的MySQL安装包,解压缩到当前文件夹中,如图4.36所示。解压完成的文件夹,可以拷贝到自己想要安装的路径下。本书将MySQL服务安装到“/usr/local/mysql”路径下,因为在当前系统中并不存在该路径。所以,首先使用root权限创建该路径“sudo mkdir /usr/local/mysql”,然后将解压完成的文件夹拷贝到该路径下,命令为“sudo mv mysql-5.6.41-linux-glibc2.12-x86_64 /usr/local/mysql”,如图4.37所示。图4.36 MySQL的glibc安装包解压7/11/20224

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论