购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

项目1
安装配置MySQL数据库

【能力目标】

● 会安装配置MySQL数据库。

● 能熟练使用MySQL的常用命令。

● 掌握常用的MySQL数据库图形化工具。

【素养目标】

● 了解国产数据库系统,理解“自主、可控”对于我国的重大意义,激发爱国情怀和学习动力。

● 明确操作系统在新一代信息技术中的重要地位,激发科技报国的家国情怀和使命担当。

● “天行健,君子以自强不息”“明德至善,格物致知”,青年学生要有“感时思报国,拔剑起蒿莱”的报国之志和家国情怀。

【项目描述】

安装MySQL、配置MySQL数据库,以及使用MySQL数据库图形化工具。

【项目分析】

帮助读者了解MySQL的基础知识,指导读者安装MySQL、使用管理工具、配置服务器,为使用MySQL实现数据库的管理打下基础。

【职业素养小贴士】

只有学会安装MySQL,才能更好地使用它。技术的更新使不同版本的MySQL在安装上有差异,我们应该具备随机应变和不断学习的能力,做一个会学习、与时俱进的人。

【项目定位】

任务1 认识数据库

【任务目标】

● 了解数据库。

● 理解数据库存储结构。

● 认识SQL及其组成。

● 认识常见的数据库产品。

【任务描述】

熟悉数据库结构,认识SQL及其组成,了解其体系结构。

【任务分析】

初步了解数据库的基础知识,熟悉数据库的存储结构,认识 SQL 及其组成,为配置和使用数据库打下基础。

任务1-1 了解数据库

数据库技术是计算机领域最重要的技术之一。银行、政府部门、企事业单位、科研机构等都存在大量的数据,使用数据库技术可以对数据进行有效管理,包括组织和存储数据,在数据库系统中减少冗余数据,实现数据共享,保障数据安全,以及高效地检索和处理数据。

任何一种技术都不是凭空产生的,都会经历长期的发展过程。了解数据库技术的发展历史,可以理解现在的数据库技术是基于什么样的需求诞生的。

数据库技术是基于数据管理任务的需求诞生的。在此需求的驱动下,在计算机硬件和软件发展的基础上,数据库技术经历了人工管理、文件系统和数据库系统3个阶段。

1.人工管理阶段

在20世纪50年代中期以前,计算机主要用于科学计算。当时计算机的外存储器只有纸带、卡片、磁带等,没有磁盘等可直接存取的存储设备。当时的计算机没有操作系统,也没有专门管理数据的软件。数据的处理方式主要是批处理。

人工管理阶段的特点如下。

(1)数据不保存

当时的计算机主要用于科学计算,一般不需要对数据进行长期保存。

(2)由程序管理数据

数据需要由程序自己设计、说明和管理,没有相应的软件系统负责数据的管理工作。程序中不仅要规定数据的逻辑结构,还要设计物理结构,包括存储结构、存取方法、输入方式等。

(3)数据不共享

数据是面向程序的,一组数据只对应一个程序。当多个程序涉及某些相同的数据时,必须各自定义,无法共享,因此程序与程序之间有大量的冗余数据。

(4)数据不具有独立性

数据的逻辑结构或者物理结构发生变化后,必须对程序做相应的修改。数据完全依赖于程序,缺乏独立性。

2.文件系统阶段

20世纪50年代后期到20世纪60年代中期,计算机在硬件方面有所发展,有了磁盘、磁鼓等可直接存取的存储设备;在软件方面,操作系统中已经有了专门的数据管理软件,一般称为文件系统。此外,数据的处理方式不仅有了批处理,还有了联机实时处理。

说明

磁鼓是利用铝鼓筒表面涂覆的磁性材料来存储数据的。鼓筒旋转速度很快,因此存取速度快。

(1)文件系统阶段的特点

文件系统阶段的特点如下。

① 数据可以长期保存。

使用计算机进行大量的数据处理时,数据可以长期保存在外存储器中,以便反复进行查询、修改、插入和删除等操作。

② 由文件系统管理数据。

由专门的软件(即文件系统)进行数据管理,文件系统把数据组织成相互独立的数据文件,利用“按文件名访问,按记录进行存取”的管理技术,提供对文件进行打开与关闭、对记录进行读取和写入等管理方式。

(2)文件系统的缺点

使用文件系统管理数据的缺点如下。

① 数据共享性差,冗余度大。

在文件系统中,一个(或一组)文件基本上对应一个程序,即文件仍然是面向程序的。当不同的程序具有部分相同的数据时,也必须建立各自的数据文件,而不能共享相同的数据,因此数据冗余度大,浪费存储空间。同时,相同的数据重复存储、各自管理,容易造成数据不一致,给数据修改和维护带来困难。

② 数据独立性差。

文件系统中的文件是为某一特定的程序服务的,文件的逻辑结构是针对具体的程序来设计和优化的,因此想要基于文件中的数据再开发一些新的程序会很困难。

3.数据库系统阶段

20世纪60年代后期以来,计算机管理的对象规模越来越大,应用范围越来越广泛,数据量急剧增加,同时多种应用与多种语言共享数据的要求越来越强烈。

在这种背景下,以文件系统作为数据管理手段已经不能满足需求。为了满足多用户、多程序共享数据的要求,统一管理数据的专用软件系统—数据库管理系统诞生了。

数据库系统阶段具有以下4个特点。

(1)数据结构化

数据库系统实现了整体数据的结构化,在文件系统中,文件中的记录内部具有结构,但是记录的结构和记录之间的联系被固化在程序中。数据“整体”结构化是指数据库中的数据不再针对某一个程序,而是面向整个组织或企业。

(2)数据的共享性高、冗余度低且易扩充

此阶段的数据面向整个系统且是有结构的,因此不仅可以被多个程序共享,还易于扩充新的程序,这使数据库系统弹性大、易于扩充。

(3)数据独立性高

独立性包括物理独立性(指用户的程序与数据库中数据的物理存储是相互独立的)和逻辑独立性(指用户的程序与数据库的逻辑结构是相互独立的)。数据与数据的结构是存储在数据库中的(在外存中),由数据库管理系统管理,因此数据独立性高。

(4)数据由数据库管理系统统一管理和控制

其中,具体管理和控制如下。

● 数据的安全性(Security)保护。

● 数据的完整性(lntegrity)检查。

● 并发(Concurrency)控制。

● 数据库恢复(Recovery)。

数据库(Database,DB)是按照数据结构来组织、存储和管理数据的仓库,其本身可被看作电子化的文件柜,用户可以对文件中的数据进行增加、删除、修改、查找等操作。需要注意的是,这里所说的数据(Data)不仅包括数字,还包括文字、图像、声音等。也就是说,在计算机中用来描述事物的信息都可被称为数据。

任务1-2 理解数据库存储结构

数据库是存储和管理数据的“仓库”,但数据库并不能直接存储数据,数据是存储在表中的,在存储数据的过程中会用到数据库服务器。数据库服务器是提供给程序或计算机连接到数据库的一种“客户端/服务器(Client/Server,C/S)”模型的计算机程序,如MySQL数据库。

一般情况下,用户不需要知道数据在数据库中是如何存放的。然而,对于数据库管理员来说,需要在安装、配置数据库时,决定数据的存放方式和位置;需要在系统运行过程中,调整数据存放方式以提高系统性能。如果数据库管理员能够在最初安装、配置数据库时,根据程序的特性合理安排数据的存放,就能够极大地减少系统运行过程中对磁盘的输入/输出(lnput/Output,l/O)操作,这有利于系统性能的优化。

数据库服务器、数据库和表之间的关系如图1-1所示。

图1-1 数据库服务器、数据库和表之间的关系

从图1-1中可知,一个数据库服务器可以管理多个数据库。通常情况下,开发人员会针对每个程序创建一个数据库,为了保存程序中实体的数据,还要在数据库中创建多个表(用于存储和描述数据的逻辑结构),每个表都记录着实体的相关信息。

对于初学者来说,或许很难理解程序中的实体数据是如何存储在表中的,接下来通过一个图例来描述,如图1-2所示。

图1-2 数据表中的数据

图1-2描述了 Student 表的结构及数据的存储方式,表的横向称为行(Row),纵向称为列(Column),每一行的内容称为一条记录,每一列的名称为字段,如 id、name 等。观察该表可以发现,Student表中的每一条记录,如1 Bob 23,实际上就是一个Student对象。

任务1-3 认识SQL及其组成

结构化查询语言(Structured Query Language,SQL)是一种用于实现特定目的的编程语言,主要用来管理数据库中的数据,如存取数据、查询数据、更新数据等。

SQL是高级的非过程化编程语言,它允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解其具体的数据存放方式。它的界面能使具有完全不同底层结构的数据库系统使用相同的SQL作为数据的输入与管理方式。

lBM公司于1975—1979年将SQL开发出来,在20世纪80年代,SQL被美国国家标准学会(American National Standards lnstitute,ANSl)和国际标准化组织(lnternational Organization for Standardization,lSO)定义为关系数据库语言的标准,它由4部分组成,具体如下。

(1)数据定义语言

数据定义语言(Data Definition Language,DDL)主要用来创建或者删除用于存储数据的数据库及数据库中的表等对象。DDL包含以下几种指令。

● CREATE:创建数据库和表等对象。

● ALTER:修改数据库和表等对象的结构。

● DROP:删除数据库和表等对象。

(2)数据操作语言

数据操作语言(Data Manipulation Language,DML)主要用来查询或者变更数据表中的记录。DML包含以下几种指令。

● lNSERT:向数据表中插入数据。

● UPDATE:修改数据表中的数据。

● DELETE:删除数据表中的数据。

(3)数据查询语言

数据查询语言(Data Query Language,DQL)语句也称为数据检索语句,用于从表中获取数据。保留字 SELECT 是 DQL(也是所有 SQL)用得最多的动词,DQL 其他常用的保留字有WHERE、ORDER BY、GROUP BY和HAVlNG等。

(4)数据控制语言

数据控制语言(Data Control Language,DCL)主要用来确认或者取消对数据库中的数据进行的变更。除此之外,它还可以对关系数据库管理系统的用户是否有权限操作数据库中的对象(数据表等)进行设定。DCL包含以下几种指令。

● COMMlT:确认对数据库中的数据进行的变更。

● ROLLBACK:取消对数据库中的数据进行的变更。

● GRANT:赋予用户操作权限。

● REVOKE:取消用户的操作权限。

初学者在写SQL语句时,只要遵守以下几个书写规则,就可以避免很多错误。

① SQL语句要以分号(;)结尾。

② SQL语句的关键字不区分字母大小写,插入表中的数据区分字母大小写。

③ 常数的书写方式是固定的,字符串和日期常数需要使用单引号(')引起来,数字常数无须加注单引号,直接书写即可。

④ 单词间需要用半角空格或者通过换行来分隔,不能使用全角空格作为单词的分隔符。

注意

标准SQL可以在任何数据库中使用,而数据库厂商的SQL只适用于与其对应的数据库,如T-SQL只适用于Microsoft SQL Server。本书讲解的SQL是专门针对MySQL的,虽然多数语法也适用于其他数据库管理系统,但不是所有SQL语法都是可移植的。

任务1-4 认识常见的数据库产品

在当今的互联网企业中,常用的数据库模型主要分为两种:关系数据库和非关系数据库(NoSQL)。关系数据库是指采用了关系模型来组织数据的数据库。简单来说,其关系模式就是二维表格模型,这类数据库的代表有Oracle、SQL Server、MySQL、Sybase、DB2等。非关系数据库主要是指非关系的、分布式的,且一般不保证AClD的数据存储系统,主要有MongoDB、Redis、CouchDB 等。关系数据库是目前比较受欢迎的数据库管理系统,应用广泛,技术比较成熟。下面对几种主流关系数据库进行简要介绍。

提示

ACID是指数据库管理系统在写入或更新资料的过程中,为保证事务(transaction)是正确可靠的,所必须具备的4个特性:原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)。

(1)Oracle

Oracle 是甲骨文公司开发的一个关系数据库管理系统,在数据库领域一直处于领先地位。Oracle的可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种效率高、可靠性好且适应高吞吐量的数据库解决方案。但是 Oracle 对硬件要求很高,且价格比较昂贵,操作比较复杂,技术含量较高。Oracle的图标如图1-3所示。

图1-3 Oracle的图标

(2)SQL Server

SQL Server是由微软公司开发的数据库管理系统,它已广泛应用于电子商务、银行、保险、电力等与数据库有关的行业。早期的SQL Server只能在Windows平台上运行,而SQL Server 2019已经支持Windows和Linux平台。但是SQL Server的并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。SQL Server的图标如图1-4所示。

图1-4 SQL Server的图标

(3)MySQL

MySQL被广泛应用于各大中小型网站中,它具有体积小、速度快、成本低,且开放源代码等特点。MySQL的应用范围主要包括大中小型网站、游戏公司、电商平台等,因用户广泛,故其产生了很多高并发的成熟解决方案。MySQL 最大的缺点是其安全系统复杂,且没有标准,只有在调用mysqladmin 来重读用户权限时才会发现安全系统的改变。此外,MySQL 没有存储过程(Stored Procedure)语言,这是对习惯于企业级数据库的程序员的最大限制。MySQL的图标如图1-5所示。

图1-5 MySQL的图标

任务2 安装使用MySQL数据库

1-1 MySQL的安装与使用-1

【任务目标】

● 学会安装MySQL。

● 学会登录MySQL与设置密码。

● 掌握MySQL客户端常用命令的使用方法。

【任务描述】

安装MySQL并掌握其常用命令的使用方法。

【任务分析】

建议在Windows平台上安装MySQL,并在安装MySQL时设置密码。

任务2-1 获取MySQL数据库

MySQL 支持多个平台,不同平台下的安装与配置过程存在差异。考虑到初学者习惯使用Windows平台,本任务讲解如何在Windows平台上获取MySQL数据库。打开MySQL的官方网站,在网站导航栏中选择【DOWNLOADS】(下载)选项卡,可以看到 MySQL 各种版本的下载选项,如图1-6所示。

图1-6 MySQL的下载

MySQL主要有企业版(Enterprise)和社区版(Community)两个版本,其中社区版是通过通用公共许可(General Public License,GPL)协议授权的开源软件,可以免费使用,而企业版是需要付费使用的商业软件。本书选择使用 MySQL 社区版进行讲解。单击【MySQL Community(GPL) Downloads】超链接,进入社区版下载页面,如图1-7所示。

图1-7 社区版下载页面

基于Windows平台的MySQL安装文件有两种版本:一种是以. msi为扩展名的二进制分发版,另一种是以.zip为扩展名的压缩文件。其中,. msi的安装文件提供了图形化的安装向导,按照向导提示进行操作即可完成安装;对于.zip 的压缩文件,直接解压就可以完成安装。接下来主要讲解如何使用二进制分发版在Windows平台上安装和配置MySQL。

需要注意的是,MySQL提供了在线和离线两种版本,本书以离线版本为例进行讲解,在图1-8所示的页面中单击【mysql-installer-community-8.0.25.0.msi】选项后面的【Download】按钮下载.msi安装文件,会跳转到登录提示页面,如图1-9所示。

图1-8 下载.msi安装文件

图1-9 登录提示页面

提示

这里下载的数据库版本为MySQL Installer 8.0.25,如果需要其他数据库版本,则单击图1-8中的【Archives】(档案)选项卡,切换数据库版本进行下载。

这里不需要登录就可以下载安装文件,单击【No thanks,just start my download.】超链接,下载得到mysql-installer-community-8.0.25.0.msi安装文件。

任务2-2 安装并配置MySQL数据库

下载得到MySQL的mysql-installer-community-8.0.25.0.msi安装文件之后,开始安装并配置MySQL数据库,具体步骤如下。

(1)双击下载的安装文件开始安装,进入【Choosing a Setup Type】界面,选择【Server only】(只安装MySQL服务)单选按钮,单击【Next】按钮,如图1-10所示。

图1-10 【Choosing a Setup Type】界面

1-2 MySQL的安装与使用-2

(2)进入【Check Requirements】界面,安装MySQL需要Microsoft Visual C++ 2019,因此会对系统进行环境检测,若没有安装则会提示安装,否则会跳过环境检测步骤,单击【Execute】按钮进行安装,如图1-11(a)所示。在弹出的软件安装对话框中单击【安装】按钮,如图1-11(b)所示,安装完成之后的界面如图1-11(c)所示,单击【Next】按钮。

图1-11 MySQL安装环境检测

图1-11 MySQL安装环境检测(续)

(3)在打开的【lnstallation】界面中查看并选择要安装的产品,因为只选择MySQL Server产品进行安装,所以这里只显示此产品,如图1-12所示,确认无误后单击【Execute】按钮完成安装。

图1-12 【Installation】界面

(4)安装完成后打开【Product Configuration】界面,可在其中查看需要配置的产品。这里只有MySQL Server 8.0.25需要配置,单击【Next】按钮,如图1-13所示,进入配置界面。

图1-13 【Product Configuration】界面

(5)在打开的【Type and Networking】界面中可配置网络类型,建议初学者选择【Development Computer】选项,这样占用的系统资源比较少。MySQL的端口号默认为3306,如果没有特殊需求,则一般不建议修改。其余设置保持默认即可,单击【Next】按钮,如图1-14所示,进入密码验证方式界面。

(6)在打开的【Authentication Method】界面中设置密码验证方式。第一种方式是强密码校验,MySQL推荐使用最新的数据库和相关客户端。MySQL 8更换了加密插件,如果选择第一种方式,则很有可能导致Navicat等客户端无法连接MySQL 8,因此这里选择第二种密码验证方式,单击【Next】按钮,如图1-15所示,进入设置登录密码界面。

(7)在打开的【Accounts and Roles】界面中设置登录密码,登录用户名默认为“Root”,将测试安装密码设置为“123456”,此时会提示密码强度 Weak(弱),在实际环境中建议设置高强度密码。如果想添加新用户,则可单击【Add User】按钮进行添加,单击【Next】按钮,如图1-16所示,进入设置密码界面。

(8)在打开的【Windows Service】界面中配置Windows服务,如是否要开机启动等。这里无特殊需求不建议修改,保持默认设置即可,单击【Next】按钮,如图1-17所示,进入应用配置界面。

图1-14 【Type and Networking】界面

图1-15 【Authentication Method】界面

图1-16 【Accounts and Roles】界面

图1-17 【Windows Service】界面

(9)在打开的【Apply Configuration】界面中单击【Execute】按钮,完成MySQL的各项配置。各项配置完成后,提示MySQL安装成功,单击【Finish】按钮,如图1-18所示,返回【Product Configuration】界面。

图1-18 【Apply Configuration】界面

(10)在【Product Configuration】界面中单击【Execute】按钮,进入【lnstallation Complete】界面,单击【Finish】按钮,如图1-19所示,完成MySQL的安装。

图1-19 【Installation Complete】界面

任务2-3 简述MySQL安装目录

MySQL Server 8.0安装完成后,会在C盘生成两个目录,这两个目录是MySQL安装目录。一般默认的安装路径为“C: \Program Files\MySQL\MySQL Server 8.0”,部分数据和配置文件位于“C: \ProgramData\MySQL\MySQL Server 8.0”中,两个目录中包含一些子目录及一些扩展名为.ini的配置文件,如图1-20和图1-21所示。为了更好地学习MySQL,初学者必须对MySQL安装目录下的各个子目录的含义和作用有所了解。

图1-20 MySQL子目录

图1-21 MySQL数据与配置文件

注意

在Windows操作系统中,C盘的ProgramData目录默认为隐藏状态,将其显示出来的具体操作为先进入 C 盘,再选择【查看】选项卡,最后勾选【隐藏的项目】复选框,如图1-22所示。

图1-22 显示ProgramData目录

下面对MySQL重要的安装目录的含义进行详细讲解。

(1)bin目录:用于放置一些可执行文件,如mysql.exe、mysqld.exe、mysqlshow.exe等。

(2)docs目录:用于存放一些文档。

(3)Data 目录:用于放置一些日志文件及数据库。创建的数据都保存在这个目录里,登录数据库后,可使用“SHOW GLOBAL VARlABLES LlKE "%Datadir%";”命令查看Data目录的位置。Data目录的结构如图1-23所示。

(4)include目录:用于放置一些头文件,如mysql.h、mysql_ername.h等。

(5)lib目录:用于放置一系列库文件。

(6)share目录:用于存放字符集、语言等信息。

图1-23 Data目录的结构

(7)my.ini文件:MySQL默认使用的配置文件,一般情况下,只要修改my.ini配置文件中的内容就可以对MySQL进行配置。

除了上述目录以外,MySQL安装目录下可能还有几个扩展名为.ini的配置文件,不同的配置文件代表不同的含义。

(1)my-huge.ini:适合超大型数据库的配置文件。

(2)my-large.ini:适合大型数据库的配置文件。

(3)my-medium.ini:适合中型数据库的配置文件。

(4)my-small.ini:适合小型数据库的配置文件。

(5)my-template.ini:配置文件的模板,MySQL配置向导将该配置文件中的选项写入my.ini文件。

(6)my-innodb-heavy-4G.ini:表示该配置文件只对lnnoDB存储引擎有效,且服务器的内存不能小于4GB。

需要注意的是,my.ini是MySQL正在使用的配置文件,该文件是一定会被读取的,其他配置文件都是适合不同数据库的配置文件的模板,如果没有特殊需求,则只需配置my.ini文件即可。

任务2-4 使用MySQL

MySQL服务和MySQL数据库不同,MySQL服务是一系列的后台进程,而MySQL数据库是一系列的数据目录和数据文件。MySQL数据库必须在MySQL服务启动之后才可以访问。

1.启动及停止MySQL服务

在前面的配置过程中已经将 MySQL 安装为 Windows 服务,当Windows操作系统启动时,MySQL服务会随之启动,但有时需要手动控制MySQL服务的启动及停止,在Windows操作系统中启动及停止MySQL服务的方式主要有通过计算机管理方式和通过命令提示符方式两种。

(1)通过计算机管理方式

步骤①:在桌面上右击【此电脑】图标,在弹出的快捷菜单中选择【管理】命令,如图1-24所示。

图1-24 选择【管理】命令

步骤②:在打开的【计算机管理】窗口中双击【服务】选项,即可查看计算机的服务状态,MySQL80的状态为正在运行,表明MySQL服务已经启动,如图1-25所示。

图1-25 MySQL服务已经启动

从图1-25中可以看到,MySQL服务已经启动,且启动类型为自动。如果没有显示正在运行状态,则说明MySQL服务未启动。此时,可以右击【MySQL80】选项,在弹出的快捷菜单中选择【属性】命令,弹出【MySQL80的属性(本地计算机)】对话框,如图1-26所示。可以在其中设置MySQL的服务状态,可以将服务状态设置为【启动】、【停止】、【暂停】、【恢复】。

图1-26 【MySQL80的属性(本地计算机)】对话框

还可以在此对话框中设置启动类型,在“启动类型”下拉列表中可以选择【自动(延迟启动)】、【自动】、【手动】、【禁用】。这4种启动类型的说明如下。

● 自动(延迟启动):MySQL 服务在系统启动一段时间后延迟自动启动,可以手动将状态变为停止、暂停等,还可以重新启动。

● 自动:MySQL服务是自动启动的,可以手动将状态变为停止、暂停等,还可以重新启动。

● 手动:MySQL服务需要手动启动,启动后可以改变服务状态为停止、暂停等。

● 禁用:MySQL服务不能启动,也不能改变服务状态。

提示

如果需要经常练习MySQL数据库的操作,则可以将MySQL服务设置为自动启动,这样可以避免每次手动启动MySQL服务。当然,如果使用MySQL数据库的频率很低,则可以考虑将MySQL服务设置为手动启动,这样可以避免MySQL服务长时间占用系统资源。

(2)通过命令提示符方式

可以通过DOS命令启动MySQL服务,单击【开始】按钮,在搜索框中输入“cmd”,并以管理员身份打开命令提示符窗口,如图1-27所示。在打开的命令提示符窗口中输入“net start mysql80”,按【Enter】键,就能启动 MySQL 服务,停止 MySQL 服务的命令为“net stop mysql80”,如图1-28所示。

图1-27 以管理员身份打开命令提示符窗口

图1-28 启动与停止MySQL服务

注意

“net start mysql80”和“net stop mysql80”命令中的“mysql80”是MySQL服务名称,如果你的MySQL服务名称是DB或其他名称,则应该输入“net start DB”“net stop DB”或“net start其他名称”“net stop其他名称”,否则会提示服务名无效。

2.登录MySQL数据库

成功启动MySQL服务之后,就可以尝试登录数据库,并修改登录用户的密码,具体步骤如下。

(1)使用相关命令登录

当MySQL服务开启后,就可以通过客户端来登录MySQL数据库了。在Windows操作系统中可以使用DOS命令登录数据库。登录MySQL数据库的具体操作步骤如下。

步骤①:选择【开始】→【Windows系统】→【命令提示符】命令,如图1-29所示。

步骤②:在打开的命令提示符窗口中输入数据库登录命令“mysql -h localhost -u root -p”,按【Enter】键,系统会提示输入密码(Enter password:),也可以在该命令中直接加上密码,即“mysql-h localhost -u root -proot”。这里-p后面的root就是密码。此处需要特别注意-p和密码之间没有空格。如果出现空格,则系统不会将-p后面的字符串当作密码来对待。密码验证正确后,即可登录MySQL数据库,如图1-30所示。

图1-29 选择【命令提示符】命令

图1-30 登录MySQL数据库

提示

mysql 为登录命令,-h 后面的参数是服务器的主机地址,因为这里客户端和服务器在同一台机器上,所以输入“localhost”或者IP地址。-u后面为登录数据库的用户名称,这里为root,-p后面是该用户的登录密码。

步骤③:登录成功后,进入MySQL初始界面,当命令提示符窗口中出现图1-31所示的说明信息,且命令提示符变为“mysql>”时,表明已经成功登录 MySQL 服务器,可以开始对数据库进行操作了。

图1-31 MySQL初始界面

图1-31中的说明性语句的含义如下。

● Commands end with:or \g:说明mysql命令行下的命令是以分号(;)或“\g”来结束的,遇到这个结束符就开始执行命令。

● Your MySQL connection id is 9:id表示MySQL数据库的连接次数。

● Server version:8.0.25 MySQL Community Server – GPL:Server version后面的内容用于说明数据库的版本,此处为8.0.25,Community表示该版本是社区版。

● Type 'help; ' or ' \h' for help:表示输入“help;”或者“\h”可以显示MySQL的帮助信息。

● Type ' \c' to clear the current input statement:表示遇到“\c”就清除前面输入的命令。

(2)使用MySQL Command Line Client登录

使用DOS命令登录MySQL相对比较麻烦,且命令中的参数容易忘记,因此可以通过一种简单的方式来登录MySQL,该方式需要记住MySQL的登录密码。当MySQL安装完成后,一般会自动安装一个命令行工具MySQL Command Line Client,如图1-32所示,该命令行工具没有图形化的用户界面。选择【开始】→【程序】→【MySQL】→【MySQL 8.0 Command Line Client】命令,打开提示输入密码的命令提示符窗口,输入正确密码,登录成功后的界面如图1-33所示。

图1-32 MySQL命令行工具

图1-33 登录成功后的界面

3.MySQL常用命令

对于初学者来说,使用命令行工具登录MySQL数据库后还不知道如何进行操作。为此,可以查看帮助信息。在命令行工具中输入“help;”或者“\h”命令,会显示MySQL的帮助信息,如图1-34所示。

图1-34 MySQL的帮助信息

图1-34中列出了 MySQL 的相关命令,这些命令既可以通过一个单词表示,也可以通过“\字母”的方式表示。为了让初学者更好地掌握MySQL的相关命令,表1-1列举出MySQL的常用命令及其含义。

表1-1 MySQL的常用命令及其含义

接下来演示使用“status”命令查看 MySQL 服务器的状态信息的过程,查询结果如图1-35所示。

图1-35 使用“status”命令的查询结果

从上述信息可以看出,使用“status”命令查询出了MySQL的当前版本、字符集及端口号等信息。

任务3 MySQL常用的图形化工具

1-3 MySQL常用图形化工具

【任务目标】

● 了解几款常用的MySQL图形化工具。

● 使用图形化工具连接MySQL。

【任务描述】

安装图形化工具并成功连接MySQL数据库。

【任务分析】

MySQL命令行工具的优点在于不需要额外安装,它在MySQL软件包中已经提供。然而,命令行这种操作方式不够直观,也容易出错。为了更方便地操作MySQL,可以使用一些图形化工具。本任务将对MySQL常用的两种图形化工具Navicat和SQLyog进行讲解。

任务3-1 使用Navicat客户端

Navicat是一种数据库管理工具,专为简化数据库的管理及降低系统管理成本而设计。Navicat基于直观的图形用户界面,使用它可以安全和简单地创建、组织、访问并共用信息。

Navicat Premium是 Navicat 的产品成员之一,能简单并快速地在各种数据库系统间传输数据,或传输一份指定 SQL 格式及编码的纯文本文件,其他功能包括导入向导、导出向导、查询创建工具、报表创建工具、资料同步、备份、工作计划等。它支持的数据库包括MySQL、MariaDB、SQL Server、SQLite、Oracle及PostgreSQL。

Navicat曾经提供商业版本Navicat Premium和免费版本Navicat Lite。但目前Navicat已不再提供免费版本,可以下载Navicat Premium试用版试用30天。

下面以Navicat 15为例进行演示,下载安装文件后正常安装即可。

安装完成后打开软件,在菜单栏中选择【文件】→【新建连接】→【MySQL】命令,弹出【MySQL-新建连接】对话框,如图1-36所示。

在该对话框中输入连接名(如“测试连接”)、主机或lP地址(保持默认即可)、端口、用户名和密码后,单击【确定】按钮即可连接数据库,进入Navicat主界面,如图1-37所示。

单击工具栏中的【新建查询】按钮,打开查询窗口,此时可以输入并执行SQL语句,SQL语句执行过程如图1-38所示。

图1-36 【MySQL-新建连接】对话框

图1-37 Navicat主界面

图1-38 SQL语句执行过程

任务3-2 使用SQLyog客户端

SQLyog是Webyog公司出品的一种简洁高效、功能强大、易于使用的图形化MySQL数据库管理工具,使用它能够在任何地点有效地管理数据库。

使用SQLyog可以连接到指定的MySQL主机,它支持HTTP及SSH/SSL协议;可创建新的表、视图、存储过程、函数、触发器及事件;支持删除及截位数据库;支持转储数据库,以及将数据库保存到 SQL 中。使用其编辑功能可以查找和替换指定内容,可列出全部或匹配标记,管理由SQLyog创建的任务。

SQLyog是免费的,但是软件的源代码封闭,其3.0版本成为完全商用的软件。如今,SQLyog既有免费版本发行,又有若干付费专有版本发行。免费版本在 GitHub 上被称为 Community Edition。付费版本以专业版、企业版和旗舰版出售。

下面以SQLyog 13为例进行演示。使用文件下载安装包进行安装,安装语言选择简体中文。安装完成后打开软件,SQLyog主界面如图1-39所示。

图1-39 SQLyog主界面

在菜单栏中选择【文件】→【新连接】→【MySQL】→【新建】命令,弹出【连接到我的SQL主机】对话框,如图1-40所示。

图1-40 【连接到我的SQL主机】对话框

在该对话框中输入主机名或lP地址(如无设置,可保持默认)、用户名、密码和端口后,单击【连接】按钮,即可连接数据库。SQLyog成功连接数据库后的界面如图1-41所示。

与 Navicat 客户端类似,在图1-41中,单击工具栏中的【新建查询编辑器】按钮 或者按【Ctrl+T】组合键,即可打开查询窗口,此时可以输入并执行SQL语句,如图1-42所示。

图1-41 SQLyog成功连接数据库后的界面

图1-42 输入并执行SQL语句

拓展阅读 华为——高斯数据库

目前国产三大数据库分别是华为、阿里、中兴旗下的产品,得益于华为、阿里、中兴这些国产科技公司的不断研发、不断进步,越来越多的本土企业能够用上国产数据库,从而进一步保障我国在信息数据上的安全。

华为研发了一款数据库产品叫作高斯数据库(Gauss DB),相关的统计数据显示,华为高斯数据库的总出货量已经突破了3万套,在整个国产数据库产品的应用总量上位居首位。华为从2007年就开始研发高斯数据库,在不断发展和完善的过程中经历了GaussDB 100、GaussDB 200、GaussDB 300共3代数据库产品迭代,如今华为高斯数据库已经达到了国内招商银行、工商银行的技术标准,同时也达到了国内三大运营商的使用标准,开始为人们的市场通信通话提供更为安全的保障。

实训1 安装与使用MySQL数据库

(1)从MySQL官网下载MySQL安装包。

(2)安装并配置MySQL数据库。

(3)开启MySQL服务,并熟悉常用的MySQL命令。

(4)使用MySQL图形化工具连接MySQL数据库。

1-4 安装与使用MySQL数据库

小结

本项目主要介绍了数据库基础知识、安装使用MySQL数据库、MySQL常用的图形化工具。

MySQL 被广泛应用于各大中小型网站中,它具有体积小、速度快、成本低且开放源代码等特点。MySQL 支持多个平台,不同平台下的安装与配置过程存在差异。考虑到初学者可能习惯使用Windows平台,本项目主要讲解如何在Windows平台上获取MySQL。MySQL命令行工具的优点在于不需要额外安装,在MySQL软件包中已经提供。命令行这种操作方式不够直观,而且容易出错,为了更方便地操作MySQL,可以使用一些图形化工具。

习题

一、选择题

1.一个数据库中最多可以创建( )数据表。

A.1个

B.2个

C.1个或2个

D.多个

2.下列选项中,( )是MySQL用于放置可执行文件的目录。

A.bin目录

B.data目录

C.include目录

D.lib目录

3.以下关于SQL全称的说法中,正确的是( )。

A.结构化查询语言

B.标准的查询语言

C.可扩展查询语言

D.分层化查询语言

4.下列选项中,( )是配置MySQL服务器时默认使用的用户。

A.admin

B.scott

C.root

D.user

5.下列选项中,( )命令用于从服务器获取MySQL的状态信息。

A.\s

B.\h

C.\?

D.\u

6.下列选项中,使用( )命令可以切换到test数据库。

A.\s test

B.\h test

C.\? test

D.\u test

7.DBMS指的是( )。

A.数据库系统

B.数据库信息系统

C.数据库管理系统

D.数据库并发系统

二、填空题

1.MySQL在加载后一定会读取的配置文件是______。

2.______被定义为关系数据库语言的标准。

3.在MySQL命令中,用于退出MySQL服务的命令有quit、______和\q。

4.在计算机中用来描述事物的记录都可称作______。

5.数据库是存储和管理数据的仓库,但数据库并不能直接存储数据,而是将数据存储到______中。

三、简答题

1.简述数据库的特点。

2.SQL由哪几部分组成?

3.简述数据库、表和数据库服务器之间的关系。 AUPz1SCEeQSwgccpxDvICQcS/cDYk6jh3CViAXlI2y/2n4Umg3r5v2kystvDKmcy

点击中间区域
呼出菜单
上一章
目录
下一章
×