【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Tair(兼容Redis),内存型 2GB
简介: 在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。

MySQL基础篇-概述


MySQL学习相关笔记:https://dhc.pythonanywhere.com/entry/share/?key=3ad29aad765a2b98b2b2a745d71bef715507ee9db8adbec98257bac0ad84cbe4

MySQL学习相关笔记:https://www.letianbiji.com/mysql/

MySQL 8.0官方文档:https://dev.mysql.com/doc/refman/8.0/en/


在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。


一、数据库相关概念

在这一部分,我们先来讲解三个概念:数据库数据库管理系统SQL

名称

全称

简称

数据库

存储数据的仓库,数据是有组织的进行存储

DataBaseDB

数据库管理系统

操纵和管理数据库的大型软件

DataBase Management System (DBMS)

SQL

操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准

Structured Query Language (SQL)

而目前主流的关系型数据库管理系统的市场占有率排名如下:

  • Oracle:大型的收费数据库,Oracle公司产品,价格昂贵。
  • MySQL:开源免费的中小型数据库,后来Sun公司收购了MySQL,而Oracle又收购了Sun公司。
  • 目前Oracle推出了收费版本的MySQL,也提供了免费的社区版本。SQL ServerMicrosoft 公司推出的收费的中型数据库,C#.net等语言常用。
  • PostgreSQL:开源免费的中小型数据库。
  • DB2IBM公司的大型收费数据库产品。
  • SQLLite:嵌入式的微型数据库。Android内置的数据库采用的就是该数据库。
  • MariaDB:开源免费的中小型数据库。是MySQL数据库的另外一个分支、另外一个衍生产品,与MySQL数据库有很好的兼容性。

而不论我们使用的是上面的哪一个关系型数据库,最终在操作时,都是使用SQL语言来进行统一操作,因为我们前面讲到SQL语言,是操作关系型数据库的 统一标准 。所以即使我们现在学习的是MySQL,假如我们以后到了公司,使用的是别的关系型数据库,如:Oracle、DB2、SQLServer,也完全不用担心,因为操作的方式都是一致的。



二、MySQL数据库

1. 版本介绍

官方: https://www.mysql.com/

MySQL官方提供了两种不同的版本:

  • 社区版本(MySQL Community Server

免费, MySQL不提供任何技术支持

  • 商业版本(MySQL Enterprise Edition

收费,可以使用30天,官方提供技术支持

本次我们选择下载MySQL Community Server 8.0.26版本。


2. 软件下载

下载地址:https://dev.mysql.com/downloads/windows/installer/8.0.html


3. 安装包方式安装-Windows版

(1)双击官方下来的安装包文件

(2)根据安装提示进行安装

注意:第一种方式Developer Default默认安装到C盘,C:\Program Files\MySQL\MySQL Server 8.0\,这里选择Custom自定义安装。

选择产品窗口,可以定制需要安装的产品清单。例如,选择“MySQL Server 8.0.26-X64”后,单击“→”添加按钮,即可选择安装MySQL服务器,如图所示。采用通用的方法,可以添加其他你需要安装的产品。

此时如果直接“Next”(下一步),则产品的安装路径是默认的。如果想要自定义安装目录,则可以选中对应的产品,然后在下面会出现“Advanced Options”(高级选项)的超链接。

上面为默认安装界面,ProgramData目录(这是一个隐藏目录),如果没显示,需要到此电脑中的查看中勾选隐藏项目项。如果自定义安装目录,请避免“中文”目录。另外,建议服务目录和数据目录分开存放。

此时如果直接“Next”(下一步),则产品的安装路径是默认的。如果想要自定义安装目录,则可以选中 对应的产品,然后在下面会出现“Advanced Options”(高级选项)的超链接。

安装MySQL的相关组件,这个过程可能需要耗时几分钟,耐心等待。

第一个选项:

使用强密码加密进行身份验证,采用SHA256基础的密码加密方法(已升级)

第二个选项:

使用传统身份验证方法(保留MySQL 5.x兼容性)

如果我们选择了强密码加密进行身份验证,虽然MySQL采用了强密码加密,但是我们的图形化管理软件(SQLyog、Navicat等)却没有采用强密码加密,这回直接导致SQLyog访问不了我们的MySQL,所以这里我们要选择传统的加密方法。

设置MySQL中root用户的密码,两次一致。一定记住该密码,这里为了方便设置为123456

设置服务器名称窗口,如图所示。该服务名会出现在Windows服务列表中,也可以在命令行窗口中使用该服务名进行启动和停止服务。

如果希望开机自启动服务,也可以勾选“Start the MySQL Server at System Startup”选项(推荐)。

下面是选择以什么方式运行服务?可以选择“Standard System Account”(标准系统用户)或者“Custom User” (自定义用户)中的一个。这里推荐前者。

(3)配置

安装好MySQL之后,还需要配置环境变量,这样才可以在任何目录下连接MySQL

A. 在此电脑上,右键选择属性

B. 点击左侧的 "高级系统设置",选择环境变量

C. 找到 Path 系统变量, 点击 "编辑"

D. 选择 "新建" , 将MySQL Server的安装目录下的bin目录添加到环境变量


4. 启动停止服务

MySQL安装完成之后,在系统启动时,会自动启动MySQL服务(cmd:services.msc),我们无需手动启动了。

当然,也可以手动的通过指令启动停止,以管理员身份运行cmd,进入命令行执行如下指令:

# 启动mysql80服务
net start mysql80
# 停止mysql80服务
net stop mysql80

以管理员方式运行:windows搜索cmd-右键-(更多)-以管理员身份运行。

注意 : 上述的 mysql80 是我们在安装MySQL时,默认指定的mysql的系统服务名,不是固定的,如果未改动,默认就是mysql80。


5. 客户端连接测试

(1)方式一:使用MySQL提供的客户端命令行工具

这里要先以管理员身份运行cmd,启动MySQL服务后,再输入密码连接数据库。

(2)方式二:使用系统自带的命令行工具执行指令

mysql [-h 127.0.0.1] [-P 3306] -u root -p
参数:
    -h : MySQL服务所在的主机IP
    -P : MySQL服务端口号, 默认3306
    -u : MySQL数据库用户名
    -p : MySQL数据库用户名对应的密码
[]内为可选参数,如果需要连接远程的MySQL,需要加上这两个参数来指定远程主机IP、端口,如果
连接本地的MySQL,则无需指定这两个参数。

注意: 使用这种方式进行连接时,需要安装完毕后配置PATH环境变量。


6. 卸载-Windows版

(1)停止MySQL服务

win+R 打开运行,输入 services.msc 点击 "确定" 调出系统服务。

(2)卸载MySQL相关组件

打开控制面板 ---> 卸载程序 ---> 卸载MySQL相关所有组件

(3)删除MySQL安装目录

(4)删除MySQL数据目录

默认数据存放目录是在 C:\ProgramData\MySQL,直接将该文件夹删除。

(5)再次打开服务,查看是否有MySQL卸载残留

如果已将MySQL卸载,但是通过任务管理器 ---> 服务,查看到MySQL服务仍然残留在系统服务里。

解决办法:

  • 以管理员方式运行cmd命令行,输入以下命令:
  • sc delete 服务名称(如MySQL80)

这样可以实现删除服务。

最后,重启电脑即可生效。


7. 在同一台电脑上安装两个版本的mysql

在C盘和D盘对应的安装目录下都新建文件夹MySQL Server x.x,这里自定义软件安装目录在D盘,数据库中的数据存放在C盘

8. 相关问题补充

(1)MySQL8.0新加密方式连接第三方客户端工具出错问题

除MySQL自带的客户端工具外,我们还可以使用第三方客户端工具。这里介绍一下如何解决当用Navicat Premium连接MySQL数据库时报的2059错误,如下图所示:

这个错误出现的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为caching_sha2_password。为解决这个问题,可以将MySQL用户登录的加密规则修改为mysql_native_password,成功连接MySQL数据库服务器后,依次输入如下语句:

对于用户root:

# 使用mysql数据库
use mysql;
# 设置密码永不过期
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
# 修改加密规则,并设置新的用户密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; 
# 刷新权限
FLUSH PRIVILEGES;

对于新创建的用户test:

# 使用mysql数据库
use mysql;
# @后的%表示任何主机
ALTER USER 'test'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
# @后的%表示任何主机
ALTER USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';
# 刷新权限
FLUSH PRIVILEGES;

(2)windows下一般使用的my.ini(mysql5.7、zip安装)

[mysql]
default-character-set=utf8
[mysqld]
port=3306
basedir=D:\\Mysql\\mysql-5.7.31-winx64
datadir=D:\\Mysql\\mysql-5.7.31-winx64\\data
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

三、数据模型

1. 关系型数据库(RDBMS)

概念:建立在关系模型基础上,由多张相互连接的二维表组成的数据库。

而所谓二维表,指的是由行和列组成的表,如下图(就类似于Excel表格数据,有表头、有列、有行,还可以通过一列关联另外一个表格中的某一列数据)。我们之前提到的MySQL、Oracle、DB2、SQLServer这些都是属于关系型数据库,里面都是基于二维表存储数据的。简单说,基于二维表存储数据的数据库就成为关系型数据库,不是基于二维表存储数据的数据库,就是非关系型数据库。

特点:

A. 使用表存储数据,格式统一,便于维护。

B. 使用SQL语言操作,标准统一,使用方便。


2. 数据模型

MySQL是关系型数据库,是基于二维表进行数据存储的,具体的结构图下:

  • 我们可以通过MySQL客户端连接数据库管理系统DBMS,然后通过DBMS操作数据库。
  • 可以使用SQL语句,通过数据库管理系统操作数据库,以及操作数据库中的表结构及数据。
  • 一个数据库服务器中可以创建多个数据库,一个数据库中也可以包含多张表,而一张表中又可以包含多行记录。



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9天前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
70 24
|
4天前
|
NoSQL 关系型数据库 MySQL
Linux安装jdk、mysql、redis
Linux安装jdk、mysql、redis
69 7
|
23天前
|
关系型数据库 MySQL Linux
MySQL数据库下载安装教程(Windows&Linux)
本文档详细介绍了MySQL的安装步骤,包括安装前的准备工作、下载安装包、Windows和Linux系统下的具体安装流程,以及如何配置MySQL服务、设置环境变量、启动服务和连接数据库等关键操作。
|
27天前
|
机器学习/深度学习 并行计算 异构计算
WINDOWS安装eiseg遇到的问题和解决方法
通过本文的详细步骤和问题解决方法,希望能帮助你顺利在 Windows 系统上安装和运行 EISeg。
53 2
|
1月前
|
网络安全 Windows
Windows server 2012R2系统安装远程桌面服务后无法多用户同时登录是什么原因?
【11月更文挑战第15天】本文介绍了在Windows Server 2012 R2中遇到的多用户无法同时登录远程桌面的问题及其解决方法,包括许可模式限制、组策略配置问题、远程桌面服务配置错误以及网络和防火墙问题四个方面的原因分析及对应的解决方案。
|
1月前
|
监控 安全 网络安全
使用EventLog Analyzer日志分析工具监测 Windows Server 安全威胁
Windows服务器面临多重威胁,包括勒索软件、DoS攻击、内部威胁、恶意软件感染、网络钓鱼、暴力破解、漏洞利用、Web应用攻击及配置错误等。这些威胁严重威胁服务器安全与业务连续性。EventLog Analyzer通过日志管理和威胁分析,有效检测并应对上述威胁,提升服务器安全性,确保服务稳定运行。
|
1月前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
87 3
|
1月前
|
存储 安全 网络安全
Windows Server 本地安全策略
由于广泛使用及历史上存在的漏洞,Windows服务器成为黑客和恶意行为者的主要攻击目标。这些系统通常存储敏感数据并支持关键服务,因此组织需优先缓解风险,保障业务的完整性和连续性。常见的威胁包括勒索软件、拒绝服务攻击、内部威胁、恶意软件感染等。本地安全策略是Windows操作系统中用于管理计算机本地安全性设置的工具,主要包括用户账户策略、安全选项、安全设置等。实施强大的安全措施,如定期补丁更新、网络分段、入侵检测系统、数据加密等,对于加固Windows服务器至关重要。
|
2月前
|
边缘计算 安全 网络安全
|
2月前
|
数据安全/隐私保护 Windows
安装 Windows Server 2019
安装 Windows Server 2019

相关产品

  • 云数据库 RDS MySQL 版