数据库(Database)是许多相关数据构成的集合。 数据无处不在,数据库也是如此。例如,我们手机上的联系人列表就是一个简单的数据库;我们的银行账号就存储在银行数据库中;在网络上购物时,我们浏览的是各种产品数据库,同时我们的浏览和购买行为也被存储到电商后台的用户行为数据库。如下图:
当用户或者应用需要访问和使用这些数据库中的数据时,需要借助专门的管理软件系统,也就是数据库管理系统(DBMS)。按照数据的组织和管理模式,主要的 DBMS 可以分为关系数据库管理系统和非关系数据库管理系统。
关系数据库管理系统 (RDBMS):主要使用二维表(Table)来存储数据,类似于 Excel 中的电子表格。表中的行对应一个实体或对象,列对应实体的属性。例如,公司的所有员工可以存储在员工表中,每行代表一个员工的信息,员工属性可以包括工号、姓名、性别、出生日期等。关系数据库使用标准的结构化查询语句(SQL)执行各种数据的增删改查以及数据库的管理操作。主流的关系数据库包括 MySQL、Oracle、SQL Server 以及 PostgreSQL 等。
非关系数据库管理系统(NoSQL):通常不支持关系模型,也不提供 SQL 接口。它们通常是为了解决关系数据库在某些场景下的局限性,例如大数据、横向可扩展性等。其中,NoSQL 代表 Not Only SQL。常见的 NoSQL 数据库包括键值存储(Redis 等)、文档数据库(MongoDB 等)、宽列存储数据库(Cassandra 等)以及图数据库(Neo4j 等)。
MySQL 是最流行的开源关系数据库管理系统,由 Oracle 公司进行开发并提供支持。根据 CSDN 发布的《2019-2020 中国开发者调查报告》,83% 的开发者在使用 MySQL 数据库。
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 等。
SQL 代表结构化查询语言(Structured Query Language),它是管理和访问关系数据库的标准语言。 通过 SQL 可以执行数据的增加(Create)、删除(Delete)、修改(Update)以及查询(Retrieve),同时还可以执行许多数据库的管理操作。
SQL 语句可以按照它们的作用分为以下几类:
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 标准中的许多功能,同时也提供了一些专有的扩展。
MySQL Installer 需要 Microsoft .NET Framework 4.5.2 或更高版本。
对于初学者而言,在 Windows 平台上使用 MySQL installer 工具安装 MySQL 是最简单方式。它提供了非常直观的图形化向导模式,可以用于安装、升级、删除各种 MySQL 组件,包括:
首先,我们需要下载 MySQL Installer 的安装包。点击下面链接进入下载页面:
https://dev.mysql.com/downloads/installer/
选择任意安装包即可,点击“Download”按钮进行下载。在出现的页面底部点击“No thanks, just start my download.”直接下载 MySQL Installer 安装包。
MySQL Server 只提供了 Windows X64 位安装软件。
下载完成后,运行下载的 msi 文件,可能会弹出以下更新提示:
点击“Yes”按钮将 MySQL Installer 更新到最新版本,然后出现选择安装类型界面。
我们选择“Custom”自定义安装,点击“Next”按钮:
我们只安装 MySQL 服务器、MySQL Workbench 开发工具、MySQL Notifer 辅助管理工具、MySQL Shell 客户端以及示例数据库和脚本(后续文章将会使用这些示例)。你也可以根据需要添加自定义的组件。点击“Next”按钮:
确认需要安装的组件,点击“Execute”进行安装。此时 MySQL Installer 将会下载并安装所选的组件。
安装完成后,点击“Next”按钮进入配置界面。
继续点击“Next”按钮,选择 MySQL 服务器结构。
此处我们选择单机版(Standalone MySQL Server/Classic MySQL Replication),点击“Next”按钮:
接下来需要选择服务器配置类型,“Config Type”支持以下选项:
我在自己的电脑上安装 MySQL,选择默认的“Development Computer”。其他配置保持默认即可,注意默认端口为 3306,点击“Next”按钮:
从 MySQL 8.0 开始,使用了更加安全的认证方法;但是该方法不支持旧的客户端驱动,因此需要使用新的客户端和驱动进行连接,或者选择旧的认证方法。我们使用新的认证方法,点击“Next”按钮:
设置 root 用户的密码,同时也可以创建一些其他用户。我们先不创建用户,点击“Next”按钮:
为 MySQL 服务器实例创建一个 Windows 服务,同时可以设置是否开机自动启动。保持默认值即可,点击“Next”按钮:
点击“Execute”按钮进行配置,完成后将会初始化 MySQL 数据库并启动 MySQL 服务。然后点击“Finish”完成 MySQL 服务器的配置。
接下来安装示例数据库和脚本,点击“Next”按钮。
输入前面设置的 root 用户密码,点击“Check”进行验证,然后点击“Next”按钮。
安装完成后点击“Finish”按钮,最后显示安装完成界面。
可以复制保存安装日志,点击“Finish”结束安装,同时启动 MySQL Workbench 开发工具和 MySQL Shell 客户端。
MySQL 默认安装在“C:\Program Files\MySQL”目录下,通过开始菜单可以访问各种工具。
默认的数据目录位于“C:\ProgramData\MySQL\MySQL Server 8.0\Data”,配置文件为“C:\ProgramData\MySQL\MySQL Server 8.0\my.ini”。
接下来我们使用 MySQL Workbench 测试数据库的连接。
首先,在 MySQL Workbench 界面的“Database”下拉菜单中点击“connect to database …”,弹出数据库连接界面。
输入主机地址、端口以及用户名,由于我们是本机登录,使用默认值即可。点击“OK”按钮:
显示连接成功,进入 MySQL Workbench 主界面。左侧列出的是已经安装好的数据库,点击相应的按钮即可查看数据库中的对象。
到此为止,Windows平台MySQL的安装到测试就完成了,能够执行到这里,说明一切都按照我们预期的样子执行,上面图中的数据库版本可能不是最新的,因为,我贴网站,他有过更新,所以,这里就不重新装最新的了,步骤都一样的,关系不大。
Linux 存在许多不同的发行版本,每个版本又支持不同的安装方式;我们介绍如何在 CentOS 操作系统中使用 YUM 安装 MySQL。
在MySQL 下载页面点击“MySQL Yum Repository”链接。
然后弹出如下页面:
根据操作系统的版本选择 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了,并且做了一些配置。
在 Windows 平台上,可以使用以下方式管理 MySQL 后台服务:
如果安装了 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.
对于 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 数据库管理和开发。
关于MySQL的准备工作,到此就完成了,做好这些准备,后面我们学习MySQL就可以直接上手创库等等操作。
上面我以CentOS为例,当然用Ubuntu也是没问题的。看自己用的什么系统。
版权声明:转载请注明出处,谢谢!