零基础轻松学MySQL 5.7(txt+pdf+epub+mobi电子书下载)


发布时间:2020-10-27 09:17:48

点击下载

作者:梁晶 等

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

零基础轻松学MySQL 5.7

零基础轻松学MySQL 5.7试读:

前言

MySQL是一个关系型数据库管理系统,目前属于Oracle旗下的产品。在Web应用方面,MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件,拥有多线程、跨平台、分布式、高性能、可移植、免费开源等优点和特性,是最流行的关系型数据库管理系统之一。掌握数据库语言、能够使用MySQL数据库进行应用开发已成为高校计算机相关专业学生的必备技能。

与其他的大型数据库(如Oracle、DB2、SQL Server等)相比,MySQL也有不足之处,但是这丝毫没有降低它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码的,因此可以大大降低总体拥有成本。

本书通过通俗易懂的语言和实用生动的例子系统地介绍MySQL数据库设计的基础知识、开发环境与开发工具,每章的后面都提供练习题,方便读者及时检查学习效果,书中还提供上机演练,使读者能够快速掌握MySQL数据库的使用方法,提高操作技能。

本书突出内容的实用性和通俗易懂的特点,使用大量口语化的文字以及图示帮助读者降低学习难度,跨过心理障碍,快速上手。

全书内容共分为17章,各章内容介绍如下:

第1章介绍MySQL数据库的相关概念,包括数据库基本概念、数据库技术和MySQL数据库的简介。

第2章介绍MySQL的安装和配置,包括MySQL 5.7的新特性、MySQL在不同操作系统上的安装和MySQL的配置。

第3章介绍MySQL数据库的操作,主要包括数据库的创建、修改、删除和选择。

第4章介绍MySQL存储引擎与数据类型。

第5章介绍数据表的操作。

第6章介绍MySQL数据库中的约束,包括主键约束、外键约束、唯一约束、检查约束、默认值约束和非空约束。

第7章介绍MySQL函数,主要包括数值型函数、字符串函数、日期与时间函数以及聚合函数。

第8章介绍基本查询语句,主要包括查询语句基础和条件语句。

第9章介绍高级查询语句,主要包括多表查询、子查询和分组查询。

第10章介绍MySQL数据表中数据的操作,包括数据的添加、修改和删除。

第11章介绍MySQL中的视图。

第12章介绍自定义函数和存储过程。

第13章介绍MySQL中的触发器。

第14章介绍MySQL中的索引。

第15章介绍MySQL中的用户与权限。

第16章介绍事务与数据库的备份恢复。

第17章通过项目演练让读者了解和掌握MySQL数据库在程序开发中的作用,提高应用能力。

本书资源可以登录机械工业出版社华章公司的网站(www.hzbook.com)下载,搜索到本书,然后在页面上的“资源下载”模块下载即可。

本书主要由梁晶编写,书中的代码经过严格测试,可以直接运行。参与编写的还有杨艳玲、薛彩虹、陈爱英、陈丽萍、郭爱欣、刘娟、刘晓、张玉姣、李新娜、梁树红、李东博,对参与文字录入及书中代码的编写、调试工作的人员表示衷心的感谢。他们对本书的编写付出了大量的劳动。如果读者对本书有疑问或建议,可发送电子邮件至booksaga@126.com。

由于编者的水平有限,加之编写时间仓促,书中难免出现疏漏之处,敬请读者批评指正。编者2018年6月第1章数据库概述

目前,人类社会已经进入了高度信息化的时代,信息和数据已经成为社会各界的重要资源。一个企业想要在信息时代生存和发展,其中一个重要的前提就是建立一个满足各部门处理数据信息的准确高效的信息管理系统。这时数据库(Database,DB)技术就应运而生了。本章将介绍数据库的基本概念、数据库技术,并初步认识MySQL数据库管理系统。掌握这些内容可以为以后的学习打下很好的基础。1.1 数据库基本概念

本节介绍数据库的基本概念,包括数据库存储方式、数据库技术的发展历史、数据库的存储结构以及数据库在开发中的作用。1.1.1 数据存储方式

计算机数据(Data)的存储一般以硬盘为数据存储空间资源,从而保证计算机内的数据能够持续保存。对于数据的处理,一般会采用数据库相关的技术进行处理,从而保证数据处理的高效性。采用数据库的管理模式不仅提高了数据的存储效率,而且在存储的层面上提高了数据的安全性。通过分类的存储模式让数据管理更加安全便捷,更能实现对数据的调用和对比,并且方便查询等操作的使用。1.1.2 什么是数据库

数据库是数据管理的有效技术,是由一批数据构成的有序集合,这些数据被存放在结构化的数据表里。数据表之间相互关联,反映客观事物间的本质联系。数据库能有效地帮助一个组织或企业科学地管理各类信息资源。

数据是数据库中存储的基本对象,是按一定顺序排列组合的物理符号。数据有多种表现形式,可以是数字、文字、图像,甚至是音频或视频,它们都可以经过数字化后存入计算机。数据库是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。

在日常生活中,人们可以直接用中文、英文等自然语言描述客观事物。在计算机中,则要抽象出对这些事物感兴趣的特征,并组成一个记录来描述。例如,在学生档案中,学生信息是由学号、姓名、性别、年龄、籍贯、联系电话等特征组成的,那么这些具体的特征值所构成的一条记录就是一个学生的信息数据,例如“2016010102,张三,男,26,山西,计算机学院,185********”。

值得注意的是,数据的描述形式还不能完全表达其内容,需要经过解释。例如,对于上面这条学生记录,了解其含义的人会得到这样的信息:张三的学号是2016010102,今年26岁,山西人,就读于计算机学院,他的联系电话是185********;而不了解其语义的人则无法理解其含义。所以,数据和对数据的解释是不可分的,数据的解释是指对数据含义的说明,数据的含义也称数据的语义,因此数据与其语义密不可分,没有语义的数据是没有意义和不完整的。1.1.3 数据库的存储结构

数据库的存储结构是指数据库中的物理数据和逻辑数据的表示形式、物理数据和逻辑数据之间关系映射方式的描述。在数据库技术中,可以使用两种形式描述客观现实的数据:物理数据描述和逻辑数据描述。物理数据和逻辑数据之间的转换通过数据库管理系统实现。(1)物理数据描述

物理数据描述是指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据,这些数据也称为物理记录。根据物理记录存储的位置,又可以分为有序存储和无序存储。

在物理数据描述中,使用的数据描述术语包括以下各项。

·位(bit):二进制的一个单位称为位,位只能取1或0。

·字节(byte):8个位称为一个字节,可以存放对应ASCII码的一个字符。

·字(word):若干个字节组成一个字。一个字所含的二进制的位数称为字长,许多计算机的字长是不同的,例如计算机的字长可以是8位、16位、24位、32位等。

·块(block):内存储器和外存储器交换信息的最小单位,又称为物理块或物理记录,每块的大小通常为256字节、512字节、1024字节等。

·卷(volume):一台输入输出设备所能装载的全部有用信息,例如磁带机的一盘磁带即为一卷,磁盘设备的一个盘组也是一卷。

·无序存储(unordered):数据记录按照插入的顺序进行存储。

·有序存储(ordered):数据记录按照指定的方式进行存储。(2)逻辑数据描述

逻辑数据描述是指用户或程序员用于操作的数据形式,逻辑数据是一种抽象的概念,是对客观现实世界的反映和记录,这些数据也可以称为逻辑记录。逻辑数据包含两个层次,一个层次是对客观现实信息世界的描述,另一个层次是对数据库管理系统中数据的描述。在对客观现实信息世界的描述中,使用的术语包括以下几项。

·实体(entity):客观现实存在的东西使用实体来描述。实体既可以是具体的、有形的对象,也可以是抽象的、无形的对象。例如,一本书是一个有形对象,一次借书过程则是一个无形的对象。

·实体集(entities):特性完全相同的同类实体的集合称为实体集。例如,一个图书馆所有的书籍是一个实体集,该图书馆的所有借书过程也是一个实体集。

·属性(attribute):实体的特性称为属性。每个属性都有一个值域,这些值域可以是整数类型、浮点数类型、字符类型或日期类型等。例如,实体书的属性包括书名、书号、出版日期、页数、价格以及出版社等,这些属性对应的值域分别为字符类型、字符类型、日期类型、整数类型、浮点数类型和字符类型等。

·标识符(identifier):能够唯一地标识每个实体的属性或属性集。例如,书的书号属性是实体书的标识符,借书过程实体的标识符包括借书证号、书号两个属性。

这些逻辑数据最终要通过数据库管理系统来转换成物理数据。在数据库管理系统中,描述逻辑数据的术语包括哪些呢?下面以关系型数据库管理系统为例进行介绍。

·数据项(data item):也称为字段(field),标记实体属性的可以命名的最小信息单位,数据项的命名一般采用属性的描述性名称。这些名称可以是中文、英文或汉语拼音。

·元组(tuple):也称为记录(record),数据项的集合称为元组。一个元组表示一个具体的实体。

·关系(relation):在关系型数据库系统中,同一类元组所在的集合称为关系。关系适用于描述实体集,它包括一个实体集的所有元组。例如,所有的图书可以组成一个books关系。

·键码(key):在关系型数据库系统中,能够唯一地标识关系中每个元组的数据项或数据项的组合称为关系的键码。

客观实体经过两层逻辑数据的描述,最后转变成实际存储的物理数据。1.1.4 数据库在开发中的作用

从数据库系统应用角度来看,数据库系统常见的运行与应用结构有:客户端/服务器结构、浏览器/服务器结构。

在客户端/服务器(Client/Server,C/S)结构中,数据库的使用者(如DBA、程序设计者)通过命令行客户端、图形化界面管理工具或应用程序等连接到数据库管理系统,可以通过数据库管理系统查询和处理存储在底层数据库中的各种数据。

数据库使用者与命令行客户端、图形化界面管理工具或应用程序等直接交互,而不与数据库管理系统直接联系。在这种结构中,命令行客户端、图形化界面管理工具或应用程序等称为“客户端”或“前台”,主要完成与数据库使用者的交互任务;而数据库管理系统则称为“服务器”或“后台”,主要负责数据管理。这种结构经常被称为“C/S”结构。

在客户端/服务器模式中,客户端和服务器可以同时工作在同一台计算机上,这种工作方式称为“单机方式”;也可以“网络方式”运行,即服务器被安装和部署在网络中某一台或多台主机上。对于客户端应用程序的开发,目前常用的语言工具主要有Visual C++、Delphi、.NET框架、Visual Basic、Python等。

数据库能有效存储数据,读取数据、查找数据更是方便,其实那些管理软件就是通过软件的界面向内部的数据库进行数据的增、删、改、查操作。1.2 数据库技术

本节主要介绍数据库技术,包括数据库系统、SQL语言和数据库访问技术。1.2.1 数据库系统

数据库管理系统(Database Management System,DBMS)是位于操作系统与用户之间的一种操纵和管理数据库的软件,按照一定的数据模型科学地组织和存储数据,同时可以提供数据高效地获取和维护。

DBMS的主要功能包括以下几个方面。(1)数据定义功能

DBMS提供数据定义语言(Data Definition Language,DDL),用户通过它可以方便地对数据库中的数据对象进行定义。(2)数据操纵功能

DBMS还提供数据操纵语言(Data Manipulation Language,DML),用户可以使用DML操作数据,实现对数据库的基本操作,如查询、插入、删除和修改等。(3)数据库的运行管理

数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。例如,数据的完整性检查功能保证用户输入的数据应满足相应的约束条件;数据库的安全保护功能保证只有赋予权限的用户才能访问数据库中的数据;数据库的并发控制功能使多个用户可以在同一时刻并发地访问数据库的数据;数据库系统的故障恢复功能使数据库运行出现故障时可以进行数据库恢复,以保证数据库可靠地运行。(4)提供方便、有效地存取数据库信息的接口和工具

编程人员可通过编程语言与数据库之间的接口进行数据库应用程序的开发。数据库管理员(Database Administrator,DBA)可通过提供的工具对数据库进行管理。

数据库管理员是维护和管理数据库的专门人员。(5)数据库的建立和维护功能

数据库功能包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监控、分析功能等。这些功能通常由一些使用程序来完成。

数据库系统是指在计算机系统中引入数据库后的系统。一个完整的数据库系统(Database System,DBS)一般由数据库、数据库管理系统、应用开发工具、应用系统、数据库管理员和用户组成。完整的数据库系统结构关系如图1-1所示。图1-1 数据库系统结构图1.2.2 了解SQL语言

MySQL服务器正确安装以后,就已经完成了一个完整的DBMS的搭建,可以通过命令行管理工具或者图形化的管理工具对MySQL数据库进行操作。这种操作实质上是通过结构化查询语言(Structured Query Language,SQL)来实现的,SQL语言是各种数据库交互方式的基础。

SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。与其他程序设计语言(如C、Java等)不同的是,SQL由很少的关键字组成,每个SQL语句通过一个或多个关键字构成。SQL具有如下优点。(1)一体化:SQL集数据定义、数据操作和数据控制于一体,可以完成数据库中的全部工作。(2)使用方式灵活:SQL具有两种使用方式,可以直接以命令方式交互使用;也可以嵌入使用,嵌入C、C++、Fortran、COBOL、Java等语言中使用。(3)非过程化:只提操作要求,不必描述操作步骤,也不需要导航。使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。(4)语言简洁、语法简单、好学好用:在ANSI标准中,只包含94个英文单词,核心功能只用6个动词,语法接近英语口语。SQL语句不区分大小写,许多SQL开发人员习惯对SQL本身的关键字进行大写,而对表或者列的名称使用小写,这样可以提高代码的可阅读性和可维护性。本书也按照这种方式组织SQL语句。大多数数据库都支持通用的SQL语句,同时不同的数据库具有各自特有的SQL语言特性。1.2.3 数据库访问技术

数据库访问技术包括ODBC、DAO、OLE DB和ADO。

ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(Windows Open Services Architecture,WOSA)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。

DAO(Data Access Object,数据访问对象集)是Microsoft提供的基于一个数据库对象集合的访问技术,可以独立于DBMS进行数据库的访问。

OLE DB(Object Linking and Embedding Database,对象连接与嵌入)是微软战略性的通向不同数据源的低级应用程序接口。OLE DB不仅包括微软资助的标准数据接口,开放数据库连通性(ODBC)的结构化查询语言(SQL)能力,还具有面向其他非SQL数据类型的通路。作为微软的组件对象模型(COM)的一种设计,OLE DB是一组读写数据的方法(在过去可能称为渠道)。OLD DB中的对象主要包括数据源对象、阶段对象、命令对象和行组对象。

ADO(ActiveX Data Objects)是一个用于存取数据源的COM组件,提供了编程语言和统一数据访问方式OLE DB的一个中间层,允许开发人员编写访问数据的代码而不用关心数据库是如何实现的,只用关心到数据库的连接。访问数据库的时候,关于SQL的知识不是必要的,但是特定数据库支持的SQL命令仍可以通过ADO中的命令对象来执行。1.3 认识MySQL

本节介绍MySQL相关的基础知识,主要包括常见的数据库系统、MySQL的优势、MySQL的版本以及MySQL的获取方式。1.3.1 MySQL的优势

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL使用的SQL语言是用于访问数据库的最常用的标准化语言。由于MySQL数据库体积小、速度快、总体拥有成本低、开放源代码,其有着广泛的应用,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,因此搭配PHP和Apache服务器可组成良好的开发环境。

MySQL数据库管理系统具有以下系统特性。(1)使用C和C++编写,并使用多种编译器进行测试,保证源代码的可移植性。(2)支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。(3)为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。(4)支持多线程,充分利用CPU资源。(5)优化的SQL查询算法,有效地提高查询速度。(6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入其他的软件中。(7)提供多语言支持,常见的编码如中文的GB 2312、BIG 5,日文的Shift_JIS等都可以用作数据表名和数据列名。(8)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。(9)提供用于管理、检查、优化数据库操作的管理工具。(10)支持大型的数据库。可以处理拥有上千万条记录的大型数据库。(11)支持多种存储引擎。1.3.2 MySQL的版本

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

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

·MySQL Enterprise Server(企业版):该版本能够以很高的性价比为企业提供数据仓库应用,支持ACID事物处理,提供完整的提交、回滚、崩溃恢复和行级锁定功能,但是该版本需要付费使用,官方提供电话技术支持。MySQL Cluster主要用于架设群服务器,需要在社区服务或企业版的基础上使用。

MySQL的命名机制由3个数字和1个后缀组成,例如mysql-5.7.20。

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

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

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

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

·MySQL 5.7是最新开发的稳定(GA)发布系列,是将执行新功能的系列,目前已经可以正常使用。

·MySQL 5.6是比较稳定的(GA)发布系列,只针对漏洞修复重新发布,不增加会影响稳定性的新功能。

·MySQL 5.1是一个稳定的(产品质量)发布系列,只针对严重漏洞修复和安全修复重新发布,不增加影响该系列稳定性的重要功能。对于MySQL 4.1等低于5.0的老版本,官方将不再提供支持。所有发布的MySQL版本已经经过严格标准的测试,可以保证其安全可靠地使用。针对不同的操作系统,读者可以在MySQL官方下载页面(http://dev.mysql.com/downloads/)下载相应的安装文件。1.3.3 如何获取MySQL

用户可以根据自身的操作系统类型,从MySQL官方下载页面免费下载相应的服务器安装包。本书以MySQL 5.7.20为例介绍其在Windows 10操作系统下的安装和配置过程。

用户下载Windows图形化安装包的步骤如下。

步骤01 打开MySQL官方网站(www.mysql.com),单击DOWNLOAD,进入MySQL产品的下载界面,如图1-2所示。图1-2 进入MySQL的产品下载界面

步骤02 在MySQL产品分类中选择Community菜单,在下载列表中选择MySQL Community Server,如图1-3所示。图1-3 在下载列表中选择MySQL Community Downloads

步骤03 在下载页面中,操作系统选择Microsoft Windows,下载的安装文件为mysql-installer-community-5.7.20.0.msi,如图1-4所示。图1-4 下载Windows本地安装包

同样对于在Linux系统下安装MySQL数据库管理系统,用户可以在MySQL官方网站下载编译好的二进制安装包。在MySQL社区服务器中下载Linux-Generic(glibc 2.12)(x86,64-bit),如图1-5所示。图1-5 在MySQL官方网站下载Linux安装包

如果用户需要使用免安装的MySQL,可以在官方网站下载免安装的MySQL压缩文件,如图1-6所示。图1-6 在MySQL官方网站下载免安装包一般来说应当使用二进制分发版,因为该版本比其他的分发版使用起来更简单,不再需要其他工具来启动就可以运行MySQL。1.4 数据库的学习方法

要想学好数据库,必须注重理论联系实际。学习理论知识可以帮助读者理解生活中的具体事物和抽象模型的联系与转化,有助于开阔眼界,认识数据库技术的方方面面,在头脑中建立起数据库相关技术的理论体系。

实践操作可以把抽象的理论知识变得更加容易理解,读者可以参考本书的例子,下载并安装MySQL数据库管理系统,创建一个数据库,使用SQL语言在数据库中完成数据表的增删查改、表数据的增删查改等操作。最好可以参加设计数据库系统的实际项目,运用所学的数据库设计理论来指导实践,这样可以进一步巩固所学的理论知识。1.5 小结

本章的重点内容是数据库技术的基本概念和方法,首先介绍了数据库的特点、数据库的存储结构、数据库在开发中的作用、数据库系统、SQL语言、数据库访问技术;然后说明了MySQL数据库管理系统的优势和版本,并介绍了MySQL数据库管理系统的获取方法;最后讲述了数据库的学习方法。1.6 练习题

1.填空题(1)____________是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序所共享。(2)MySQL分为两个版本:___________、___________。

2.选择题(1)数据库的简称是( )。

A.DB

B.BD

C.DBAS

D.CMD(2)MySQL的命名机制由( )个数字和( )个后缀组成。

A.3

B.1

C.2

D.4

3.简述题(1)简述数据库及其特点。(2)简述MySQL数据库,并简要说明它的几个版本。第2章安装和配置MySQL

MySQL 5.7数据库管理系统可以在不同操作系统平台下安装,本章将详细讲解在Windows 10和Linux平台下安装MySQL的方法,并介绍在Windows操作系统中MySQL 5.7的系统配置、启动服务和登录方法。2.1 MySQL 5.7的新特性

与MySQL 5.6相比,MySQL 5.7具有以下几个方面的新功能。

·随机root密码:MySQL 5.7数据库初始化完成后,会自动生成一个root@localhost用户,root用户的密码不为空,而是随机产生一个密码。

·自定义test数据库:MySQL 5.7默认安装完成后没有test数据库。用户可以自行创建test数据库并对其进行权限控制。

·默认SSL加密:MySQL 5.7采用了更加简单的SSL安全访问机制,默认连接使用SSL的加密方式。

·密码过期策略:MySQL 5.7支持用户设置密码过期策略,要求用户在一定时间过后必须修改密码。

·用户锁:MySQL 5.7为管理员提供了暂时禁用某个用户的功能,使被锁定的用户无法访问和使用数据库。

·全面支持JSON:MySQL 5.7在服务器端提供了一组便于操作JSON的函数。存储的方法是将JSON编码成BLOB后再由存储引擎进行处理。这样,MySQL就同时拥有了关系型数据库和非关系型数据库的优点,并且可以提供完整的事务支持。

·支持两类生成列(generated column):生成列是通过数据库中的其他列计算得到的一列。当为生成列创建索引时,可以便捷地加快查询速度。MySQL 5.7支持虚拟生成列和存储生成列。虚拟生成列仅将数据保存在表的元数据中,作为缺省的生成列类型;存储生成列则是将数据永久保存在磁盘上,需要更多的磁盘空间。

·引入系统库(sys schema):系统库中包含一系列视图、函数和存储过程,通过多线程、多进程、组合事务提交和基于行的优化方式将复制功能提高5倍以上,用户向外扩充其跨商品系统的工作负载时,得以大幅提升复制的效能和效率。2.2 在不同平台上安装MySQL

MySQL为不同的操作系统提供了不同的安装包,下面将分别讲述在Windows环境下和Linux环境下安装MySQL数据库。2.2.1 安装条件

MySQL 5.7系统配置如下:

·32位或64位Windows操作系统、Linux系统。

·Windows 7、Windows 8、Windows 10等。

·1GB内存。

·100GB硬盘。2.2.2 在Windows系统上安装MySQL

Windows平台下提供两种安装MySQL的方式:

·MySQL二进制分发版(.msi安装文件)。

·免安装版(.zip压缩文件)。

用户使用图形化安装包安装MySQL的步骤如下。

步骤01 双击下载的MySQL安装文件,进入MySQL安装界面,首先进入“License Agreement(用户许可证协议)”窗口,选中“I accept the license terms(我接受系统协议)”复选框,单击“Next(下一步)”按钮,如图2-1所示。图2-1 进入MySQL安装界面并接受系统协议

步骤02 进入“Choosing a Setup Type(安装类型选择)”窗口,根据右侧的安装类型描述文件选择适合自己的安装类型,这里选择默认的安装类型,如图2-2所示。图2-2 选择MySQL的安装类型Developer Default:默认安装类型;Server only:仅作为服务;Client only:仅作为客户端;Full:完全安装;Custom:自定义安装类型。

步骤03 根据所选择的安装类型安装Windows系统框架(framework),单击Execute按钮,安装程序会自动完成框架的安装,如图2-3所示。图2-3 检查并生成安装所需要的框架列表

当弹出安装程序窗口时,勾选“我同意许可条款和条件”复选框,然后单击“安装”按钮,如图2-4所示。图2-4 同意安装框架的许可条件

弹出“设置成功”的界面,表示该框架已经安装完成,单击“关闭”按钮即可。所有的框架安装均可参考本操作,如图2-5所示。图2-5 安装框架成功

步骤04 所需框架均安装成功后,单击“Next(下一步)”按钮,如图2-6所示。图2-6 所有框架安装完成

步骤05 进入安装确认窗口,单击“Execute(执行)”按钮,开始MySQL各个组件的安装,如图2-7所示。图2-7 准备安装MySQL各个组件

步骤06 开始安装MySQL文件,安装完成后在“Status(状态)”列表下显示“Complete(安装成功)”,如图2-8所示。图2-8 MySQL各个组件安装完成2.2.3 在Linux系统上安装MySQL

步骤01 在CentOS系统桌面上右击,选择Open in Terminal,打开Linux命令行终端,如图2-9所示。图2-9 在CentOS桌面打开命令行终端

步骤02 在终端中进入MySQL安装包所在的目录Downloads,执行解压缩命令:tar-zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz,将安装包解压到指定文件夹,如图2-10所示。图2-10 将安装包解压到指定目录

步骤03 将解压后的MySQL安装目录重命名为mysql,便于之后的操作,执行重命名命令为:mv mysql-5.7.20-linux-glibc2.12-x86_64 mysql,同时执行命令:groupadd mysql和useradd-r-g mysql mysql,添加mysql用户组和mysql用户。在MySQL的安装目录创建mysql-files目录,用来保存mysql的数据文件和配置文件,然后初始化MySQL,此时生成临时密码,如图2-11所示。注意:目录结尾不要加/。图2-11 生成mysql用户的临时密码

步骤04 对用户密码进行RSA加密处理,执行命令为bin/mysql_ssl_rsa_setup,如图2-12所示。图2-12 对用户密码进行RSA加密

步骤05 为MySQL的配置文件/etc/my.cnf生成pid,如图2-13所示。图2-13 生成pid

步骤06 执行CAT/etc/my.cnf更新配置文件,修改socket字段以及log-error和pid-file的目录,如图2-14所示。图2-14 修改my.cnf配置文件

步骤07 启动MySQL服务,执行命令为sudo support-files/mysql.server start,如图2-15所示。图2-15 启动MySQL服务

步骤08 使用root用户登录数据库,密码为之前生成的临时密码,进入MySQL数据库管理系统界面,如图2-16所示。图2-16 使用root用户登录MySQL

步骤09 在MySQL中输入简单语句,验证MySQL在CentOS系统中安装成功,如图2-17所示。图2-17 验证MySQL数据库安装成功2.2.4 打开MySQL数据库

MySQL服务器端实用工具程序如下。

·mysqld:SQL后台程序(即MySQL服务器进程)。该程序必须运行之后,客户端才能通过连接服务器来访问数据库。

·mysqld_safe:服务器启动脚本。在UNIX和NewWare中推荐使用mysqld_safe来启动mysqld服务器。mysqld_safe增加了一些安全性,例如,当出现错误时,重启服务器并向错误日志文件中写入运行时间信息。

·mysql.server:服务器启动脚本。该脚本用于使用包含为特定级别的、运行启动服务器脚本的、运行目录的系统。它调用mysqld_safe来启动MySQL服务器。

·mysqld_multi:服务器启动脚本,可以启动或停止系统上安装的多个服务器。

·mysamchk:用来描述、检查、优化和维护MyISAM表的实用工具。

·mysql.server:服务器启动脚本。在UNIX中的MySQL分发版包括mysql.server脚本。

·mysqlbug:MySQL缺陷报告脚本。它可以用来向MySQL邮件系统发送缺陷报告。

·mysql_install_db:该脚本用默认权限创建MySQL授予权表。通常只是在系统上首次安装MySQL时执行一次。

MySQL客户端实用工具程序如下。

·myisampack:压缩MyISAM表以产生更小的只读表的一个工具。

·mysql:交互式输入SQL语句或从文件经批处理模式执行它们的命令行工具。

·mysqlacceess:检查访问主机名、用户名和数据库组合的权限的脚本。

·mysqladmin:执行管理操作的客户程序,例如创建或删除数据库、重载授权表、将表刷新到硬盘上以及重新打开日志文件。Mysqladmin还可以用来检索版本、进程以及服务器的状态信息。

·mysqlbinlog:从二进制日志读取语句的工具。在二进制日志文件中包含执行过的语句,可用来帮助系统从崩溃中恢复。

·mysqlcheck:检查、修复、分析以及优化表的表维护客户程序。

·mysqldump:将MySQL数据库转储到一个文件(例如SQL语句或Tab分隔符文本文件)的客户程序。

·mysqlhotcopy:当服务器在运行时,快速备份MyISAM或ISAM表的工具。

·mysql import:使用LOAD DATA INFILE将文本文件导入相应的客户程序。

·mysqlshow:显示数据库、表、列以及索引相关信息的客户程序。

·perror:显示系统或MySQL错误代码含义的工具。2.3 验证MySQL是否安装成功

MySQL安装完成后,用户可以通过MySQL 5.7 Command Line Client程序验证MySQL是否安装成功。2.3.1 获取服务器状态

打开MySQL 5.7 Command Line Client程序,提示输入密码,输入密码后按回车键,弹出当前MySQL的服务器状态,如图2-18所示。图2-18 登录MySQL并获取服务器状态

当前MySQL服务器的版本为5.7.20-log MySQL Community Server(GPL),表明MySQL已经安装成功。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载