【数据库】MySQL简介与安装(双平台)

01、目录

文章目录

      • 01、目录
      • 02、浅谈数据库
      • 03、MySQL介绍
      • 04、SQL
      • 05、Windows下安装MySQL
        • 5.1、 下载 MySQL Installer
        • 5.2、 安装 MySQL
        • 5.3、 连接数据库
      • 06、Linux 安装 MySQL
      • 07、管理 MySQL 服务
        • 7.1、 管理 Windows 上的 MySQL 服务
        • 7.2、 管理 Linux 上的 MySQL 服务
      • 08、总结

02、浅谈数据库

数据库(Database)是许多相关数据构成的集合。 数据无处不在,数据库也是如此。例如,我们手机上的联系人列表就是一个简单的数据库;我们的银行账号就存储在银行数据库中;在网络上购物时,我们浏览的是各种产品数据库,同时我们的浏览和购买行为也被存储到电商后台的用户行为数据库。如下图:

【数据库】MySQL简介与安装(双平台)_第1张图片
当用户或者应用需要访问和使用这些数据库中的数据时,需要借助专门的管理软件系统,也就是数据库管理系统(DBMS)。按照数据的组织和管理模式,主要的 DBMS 可以分为关系数据库管理系统非关系数据库管理系统

  • 关系数据库管理系统 (RDBMS):主要使用二维表(Table)来存储数据,类似于 Excel 中的电子表格。表中的行对应一个实体或对象,列对应实体的属性。例如,公司的所有员工可以存储在员工表中,每行代表一个员工的信息,员工属性可以包括工号、姓名、性别、出生日期等。关系数据库使用标准的结构化查询语句(SQL)执行各种数据的增删改查以及数据库的管理操作。主流的关系数据库包括 MySQL、Oracle、SQL Server 以及 PostgreSQL 等。

  • 非关系数据库管理系统(NoSQL):通常不支持关系模型,也不提供 SQL 接口。它们通常是为了解决关系数据库在某些场景下的局限性,例如大数据、横向可扩展性等。其中,NoSQL 代表 Not Only SQL。常见的 NoSQL 数据库包括键值存储(Redis 等)、文档数据库(MongoDB 等)、宽列存储数据库(Cassandra 等)以及图数据库(Neo4j 等)。

03、MySQL介绍

MySQL 是最流行的开源关系数据库管理系统,由 Oracle 公司进行开发并提供支持。根据 CSDN 发布的《2019-2020 中国开发者调查报告》,83% 的开发者在使用 MySQL 数据库。

【数据库】MySQL简介与安装(双平台)_第2张图片
MySQL 最新版本为 MySQL 8.0,提供了大量的新功能,包括窗户函数(window function)和通用表表达式(Common Table Expressions)等。另外,MySQL 8.0 还提供了原生的文档数据库(JSON)支持,可以用于替代 MongoDB 这种文档数据库。MySQL 使用 GPL 开源协议,提供了免费的社区版;同时也提供收费的企业版本和技术支持。

MySQL 支持各种平台,包括 Windows、Linux 以及 macOS。相对于其他大型的数据库系统(Oracle、SQL Server 等)而言,MySQL 更加容易管理和使用,同时又具有非常好的性能、可靠性和扩展性。

MySQL 可以支持客户端/服务器模式以及嵌入式的运行方式,非常适合开发网站或者 Web 应用;非常流行的 LAMP/LNMP 网站架构中的 M 就是指 MySQL。在国内,几乎所有的主流和非主流互联网公司都会使用 MySQL 数据库。

除了官方版本之外,还存在许多 MySQL 衍生版。例如 MariaDB、Percona Server for MySQL 等。

04、SQL

SQL 代表结构化查询语言(Structured Query Language),它是管理和访问关系数据库的标准语言。 通过 SQL 可以执行数据的增加(Create)、删除(Delete)、修改(Update)以及查询(Retrieve),同时还可以执行许多数据库的管理操作。
SQL 语句可以按照它们的作用分为以下几类:

  • DDL(Data Definition Language):数据定义语义,用于管理数据库中的对象,例如创建(CREATE)、修改(ALTER)以及删除(DROP)。
  • DML (Data Manipulation Language):数据操作语言,用于查询和操作数据。主要包括 SELECT、INSERT、UPDATE、DELETE 和 MERGE 等语句。
  • DCL(Data Control Language):数据控制语言,用于管理数据库对象的访问权限。主要包括权限的授予(GRANT)和撤销(REVOKE)。
  • TCL(Transaction Control Language):事务控制语言,用于控制数据库的事务。主要包括提交(COMMIT)、回滚(ROLLBACK)、保存点(SAVEPOINT)以及事务设置(SET TRANSACTION)。

SQL 最初由 IBM 公司开发,在 1986 年成为 ANSI 标准,并且在 1987 年成为 ISO 的标准。ANSI 在1992 年对 SQL 标准进行了修订,称为 SQL92 或者 SQL2;在 1999 年再次进行了修订,称为 SQL99 或者 SQL3。

如今,SQL 标准由 ANSI 和 ISO/IEC 共同维护,随后经历的修订版本包括 SQL:2003、SQL:2006、SQL:2008、SQL:2011。最新的版本为 SQL:2016或者 ISO/IEC 9075:2016,它取代了之前的所有版本。

MySQL 实现了 SQL 标准中的许多功能,同时也提供了一些专有的扩展。

05、Windows下安装MySQL

5.1、 下载 MySQL Installer

MySQL Installer 需要 Microsoft .NET Framework 4.5.2 或更高版本。

对于初学者而言,在 Windows 平台上使用 MySQL installer 工具安装 MySQL 是最简单方式。它提供了非常直观的图形化向导模式,可以用于安装、升级、删除各种 MySQL 组件,包括:

  • MySQL 服务器
  • MySQL 应用程序,包括 MySQL Workbench、MySQL Shell、MySQL Router、MySQL for Visual Studio、MySQL for Excel、MySQL Notifier 以及 MySQL 实用工具
  • MySQL 驱动程序,包括 MySQL Connector/NET、MySQL Connector/Python、MySQL Connector/ODBC、MySQL Connector/J、MySQL Connector/C 以及 MySQL Connector/C++

首先,我们需要下载 MySQL Installer 的安装包。点击下面链接进入下载页面:
https://dev.mysql.com/downloads/installer/

【数据库】MySQL简介与安装(双平台)_第3张图片
下载页面提供了两种安装文件(最新版本为 8.0.21):

  • mysql-installer-web-community-8.0.21.0.msi,只下载 MySQL Installer 安装包,其他软件安装时再联网下载
  • mysql-installer-community-8.0.21.0.msi,下载 MySQL Installer 安装包时同时下载其他软件的安装包,所以比较大。

选择任意安装包即可,点击“Download”按钮进行下载。在出现的页面底部点击“No thanks, just start my download.”直接下载 MySQL Installer 安装包。

5.2、 安装 MySQL

MySQL Server 只提供了 Windows X64 位安装软件。

下载完成后,运行下载的 msi 文件,可能会弹出以下更新提示:
【数据库】MySQL简介与安装(双平台)_第4张图片

点击“Yes”按钮将 MySQL Installer 更新到最新版本,然后出现选择安装类型界面。

【数据库】MySQL简介与安装(双平台)_第5张图片

  • 默认的“Developer Default”将会安装开发所需的所有组件(比较庞大)
  • “Server only”只安装 MySQL 服务器,通常用于部署
  • “Client only”只安装 MySQL 客户端和开发工具
  • “Full”安装所有的组件
  • “Custom”执行自定义安装

我们选择“Custom”自定义安装,点击“Next”按钮:
【数据库】MySQL简介与安装(双平台)_第6张图片
我们只安装 MySQL 服务器、MySQL Workbench 开发工具、MySQL Notifer 辅助管理工具、MySQL Shell 客户端以及示例数据库和脚本(后续文章将会使用这些示例)。你也可以根据需要添加自定义的组件。点击“Next”按钮:
【数据库】MySQL简介与安装(双平台)_第7张图片

确认需要安装的组件,点击“Execute”进行安装。此时 MySQL Installer 将会下载并安装所选的组件。

【数据库】MySQL简介与安装(双平台)_第8张图片

安装完成后,点击“Next”按钮进入配置界面。

【数据库】MySQL简介与安装(双平台)_第9张图片

继续点击“Next”按钮,选择 MySQL 服务器结构。

【数据库】MySQL简介与安装(双平台)_第10张图片

此处我们选择单机版(Standalone MySQL Server/Classic MySQL Replication),点击“Next”按钮:

【数据库】MySQL简介与安装(双平台)_第11张图片

接下来需要选择服务器配置类型,“Config Type”支持以下选项:

  • Development Computer,用于在开发机器上安装 MySQL Server,占用很少的内存
  • Server Computer,用于和其他服务共享一个服务器,占用中等大小的内存
  • Dedicated Computer,MySQL 专用一个服务器,占用尽可能多的内存

我在自己的电脑上安装 MySQL,选择默认的“Development Computer”。其他配置保持默认即可,注意默认端口为 3306,点击“Next”按钮:

【数据库】MySQL简介与安装(双平台)_第12张图片

从 MySQL 8.0 开始,使用了更加安全的认证方法;但是该方法不支持旧的客户端驱动,因此需要使用新的客户端和驱动进行连接,或者选择旧的认证方法。我们使用新的认证方法,点击“Next”按钮:

【数据库】MySQL简介与安装(双平台)_第13张图片

设置 root 用户的密码,同时也可以创建一些其他用户。我们先不创建用户,点击“Next”按钮:

【数据库】MySQL简介与安装(双平台)_第14张图片

为 MySQL 服务器实例创建一个 Windows 服务,同时可以设置是否开机自动启动。保持默认值即可,点击“Next”按钮:

【数据库】MySQL简介与安装(双平台)_第15张图片

点击“Execute”按钮进行配置,完成后将会初始化 MySQL 数据库并启动 MySQL 服务。然后点击“Finish”完成 MySQL 服务器的配置。

【数据库】MySQL简介与安装(双平台)_第16张图片

接下来安装示例数据库和脚本,点击“Next”按钮。

【数据库】MySQL简介与安装(双平台)_第17张图片

输入前面设置的 root 用户密码,点击“Check”进行验证,然后点击“Next”按钮。

【数据库】MySQL简介与安装(双平台)_第18张图片

安装完成后点击“Finish”按钮,最后显示安装完成界面。

【数据库】MySQL简介与安装(双平台)_第19张图片

可以复制保存安装日志,点击“Finish”结束安装,同时启动 MySQL Workbench 开发工具和 MySQL Shell 客户端。

MySQL 默认安装在“C:\Program Files\MySQL”目录下,通过开始菜单可以访问各种工具。

【数据库】MySQL简介与安装(双平台)_第20张图片

默认的数据目录位于“C:\ProgramData\MySQL\MySQL Server 8.0\Data”,配置文件为“C:\ProgramData\MySQL\MySQL Server 8.0\my.ini”。

5.3、 连接数据库

接下来我们使用 MySQL Workbench 测试数据库的连接。
首先,在 MySQL Workbench 界面的“Database”下拉菜单中点击“connect to database …”,弹出数据库连接界面。

【数据库】MySQL简介与安装(双平台)_第21张图片

输入主机地址、端口以及用户名,由于我们是本机登录,使用默认值即可。点击“OK”按钮:

【数据库】MySQL简介与安装(双平台)_第22张图片
输入并保存 root 用户密码,点击“OK”按钮。

【数据库】MySQL简介与安装(双平台)_第23张图片

显示连接成功,进入 MySQL Workbench 主界面。左侧列出的是已经安装好的数据库,点击相应的按钮即可查看数据库中的对象。

到此为止,Windows平台MySQL的安装到测试就完成了,能够执行到这里,说明一切都按照我们预期的样子执行,上面图中的数据库版本可能不是最新的,因为,我贴网站,他有过更新,所以,这里就不重新装最新的了,步骤都一样的,关系不大。

06、Linux 安装 MySQL

Linux 存在许多不同的发行版本,每个版本又支持不同的安装方式;我们介绍如何在 CentOS 操作系统中使用 YUM 安装 MySQL。

在MySQL 下载页面点击“MySQL Yum Repository”链接。
【数据库】MySQL简介与安装(双平台)_第24张图片

然后弹出如下页面:

【数据库】MySQL简介与安装(双平台)_第25张图片

根据操作系统的版本选择 yum 源,例如 CentOS 7 选择 mysql80-community-release-el7-3.noarch.rpm:

sudo rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm

然后执行 yum 安装命令:

-- 禁用所有的 MySQL 安装源
sudo sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/mysql-community.repo

-- 安装 MySQL 8.0
sudo yum --enablerepo=mysql80-community install mysql-community-server

安装程序会为 root 用户创建一个临时的密码,可以使用以下方法查看:

sudo grep "A temporary password" /var/log/mysqld.log
[Note] A temporary password is generated for root@localhost: xxxxxx

为了安全起见,我们还需要运行一个设置命令:

mysql_secure_installation

然后输入临时 root 密码,并且修改该密码。对于其他任何输入提示,直接输入 Y 即可。接下来我们可以使用 mysql 工具连接 MySQL 服务器:

mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 8.0.19 MySQL Community Server - GPL

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

到此位置,Linux上的MySQL就安装OK了,并且做了一些配置。

07、管理 MySQL 服务

7.1、 管理 Windows 上的 MySQL 服务

在 Windows 平台上,可以使用以下方式管理 MySQL 后台服务:

  • 通过图形化的 MySQL Notifier 工具进行管理
  • 通过命令行的方式进行管理

如果安装了 MySQL Notifier 组件,在系统任务栏会显示一个白色海豚图标:
在这里插入图片描述
点击图标可以查看 MySQL Notifier 管理的实例服务,通过弹出窗口可以启动或者停止 MySQL 服务进程,停止服务之后海豚变成了红色。

另外,也可以使用管理员权限执行以下命令行操作启动或者停止 MySQL 服务进程:

net start MySQL80
net stop MySQL80

其中,MySQL80 就是我们安装时指定的 Windows 服务名。如果出现以下错误,表示没有管理员权限:

C:\Users\dongx>net start MySQL80
System error 5 has occurred.

Access is denied.

7.2、 管理 Linux 上的 MySQL 服务

对于 Linux 系统,可以使用 service、init.d 或者 systemd 命令启动或停止 MySQL 后台服务:

-- 启动 MySQL
sudo service mysql start
sudo /etc/init.d/mysql start
sudo systemctl start mysqld

-- 停止 MySQL
sudo service mysql stop
sudo /etc/init.d/mysql stop
sudo systemctl stop mysqld

以上命令也支持 restart 选项,用于重新启动 MySQL 服务。另外,我们也可以使用以下命令设置开机自动启动 MySQL 服务:

sudo chkconfig mysqld on

安装好 MySQL 数据库服务器并且测试成功连接之后,就可以正式开始学习 MySQL 数据库管理和开发。

08、总结

关于MySQL的准备工作,到此就完成了,做好这些准备,后面我们学习MySQL就可以直接上手创库等等操作。

上面我以CentOS为例,当然用Ubuntu也是没问题的。看自己用的什么系统。

版权声明:转载请注明出处,谢谢!

你可能感兴趣的:(数据库,数据库)