数据库的安装
# 20.数据库的安装
工欲善其事,必先利其器。
# 数据库的种类
在安装数据库之前,先对数据库的种类做个介绍。
前文我们说过数据库是通过表的形式来存储数据,其实根据数据库的存储方式,可以分为以下类型:
- 层次数据库 (Hierarchical Database,HDB ),最古老的数据库之一,它把数据通过层次结构(树形结构)的方式表现出来。层次数据库曾经是数据库的主流,但有着很多缺点。随着关系数据库的出现和普及,现在层次数据库已经很少使用了。
- 关系型数据库 (Relational Database,RDB ),关系数据库是现在应用最广泛的数据库。关系数据库在 1969 年诞生,可谓历史悠久。采用行和列组成的二维表来管理数据 ,简单易懂,还有专门的 SQL 对数据进行操作。
- 面向对象数据库 (Object Oriented Database,OODB ),编程语言当中有一种被称为面向对象语言的语言(包括 Java 和 C++等) 。把数据以及对数据的操作集合起来以对象为单位进行管理,因此得名。面向对象数据库就是用来保存这些对象的数据库。
- XML 数据库 (XML Database,XMLDB ),最近几年,XML作为在网络上进行交互的数据的形式逐渐普及起来。XML 数据库可以对 XML 形式的大量数据进行高速处理。
- NoSQL:非SQL的数据库,包括Redis、MongoDB等,它们都不是关系数据库,而是有各自的存储方式。
- .......
前文我们讲的就是关系型数据库。目前,关系型数据库是主流,承担了各种应用程序的核心数据存储。而其他类型的数据库,可以认为是关系型数据库的补充,在特定场景下还是有用的。
比较具有代表性的关系型数据库有:
- Oracle Database :Oracle公司出品
- SQL Server :微软公司出品
- DB2 :IBM 公司出品
- PostgreSQL :开源产品
- MySQL :开源产品(已被Oracle收购)
- SQLite:小巧,嵌入式数据库
- .........
MySQL非常流行,本文主要基于MySQL来讲解。
注意:不同数据库之间的SQL可能有一点点的不同,不必担心,只要学会了SQL的基本用法,使用其他数据库也能很快上手。
# 安装MySQL
MySQL是跨平台的,可以在Windows,Linux或Mac上安装和运行,建议在本地安装,如果有云服务器的话也可以在云服务器上安装(注意开通防火墙)。
随着MySQL版本的更新,安装方式可能也有更新,具体以官网教程 (opens new window)为准:
如果不想看官网教程,也可以搜索相关博客,教程非常之多。
MySQL官方版本分了好几个版本(好比一款手机有旗舰款,专业款,性能不同,价格也不同):
- Community Edition:社区开源版本,免费;
- Standard Edition:标准版;
- Enterprise Edition:企业版;
- Cluster Carrier Grade Edition:集群版。
以上版本的功能依次递增,价格也依次递增。不过,功能增加的主要是监控、集群等管理功能,对于基本的SQL功能是完全一样的。这里我们选择社区版。
安装MySQL,说难不难,说不容易也不容易,遇到什么问题及时在网上搜索解决方案即可。
# 通过Docker安装
使用Docker来安装是最方便的方式之一了。如果读者了解Docker,也可以用Docker一键安装并启动MySQL,参考Docker常用软件安装 (opens new window)
# 在Windows下安装
# 下载安装包
首先从MySQL官方下载页面 (opens new window)下载最新的MySQL Community Server版本(选择对应的操作系统和版本,下载安装即可):
这里我们选择第一个,MSI(Windows的安装包)方式来安装。其他方式是离线安装方式,这里不展开
读者也可以去我的网盘 (opens new window)上下载:
下载的时候可能会提示是否登录,不用登录,直接下载即可:
# 开始安装
下载完后,双击msi安装包开始安装。注意,不同版本情况下,安装界面可能有所不同
点击next:
点击同意协议,然后Next
接下来是选择安装什么功能,我们选经典的即可:
等待安装完成:
# 设置MySQL
安装完成后,接下来我们进入设置:
点击next:
然后我们选择config Type为 Server Computer,这是因为我们本机会充当MySQL数据库服务器。Port端口则按需配置,默认是3306,由于我之前已经安装过了MySQL,用的是3306,因此有冲突。这里设置为3307。然后点击Next
然后是设置密码。注意不允许设置太简单的密码。然后点击Next
然后就是配置MySQL为Windows service,相当于开机自启,能通过Windows的可视化界面来启停MySQL。这里不作修改,点击Next:
然后是配置MySQL的数据存储目录权限,这里不做修改,点击Next。
然后可以选择是否创建2个样例(Sample)数据库,这里选择创建
之前的步骤是让MySQL知道我们怎么配置,接下来就正式开始配置MySQL了,点击Execute
# 安装完成
配置完成后点击Next,就可以看到配置完成了,点击Finish完成安装
# 在Linux上安装
Linux上安装软件有如下方式:
- 使用包管理器安装
- 编译好的安装包(RPM、DPKG等)
- 压缩包解压(一般为tar.gz)
- 自行编译源码安装
一般来说,几种安装方式最好都能掌握。这几种安装方式的容易程度:YUM > RPM > tar.gz > 源码
因此,为了省事,可以使用Linux发行版的包管理器。例如
- Debian和Ubuntu用户可以简单地通过命令
apt-get install mysql-server
安装最新的MySQL版本。 - Centos用的是yum
- ......
# 卸载旧MySQL
这里选择用Centos7,rpm的方式来安装。其他os或其他方式安装请自行搜索相关博客。
先检查有没安装旧的MySQL:
rpm -qa | grep mariadb
rpm -qa | grep mysql
2
如果有结果,则逐个删除:
rpm -e --nodeps 结果名
# 下载yum源
从CentOS 7开始,MariaDB成为Yum源中默认的数据库安装包。也就是说在CentOS 7及以上的系统中使用yum安装MySQL默认安装的会是MariaDB(MySQL的一个分支)。如果想安装官方MySQL版本,需要使用MySQL提供的Yum源。
先查看本机的操作系统版本
$ cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
2
然后在官网 (opens new window)选择对应的版本的yum文件进行下载,例如CentOS 7当前在官网查看最新Yum源的下载地址为:
https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm (opens new window)
下载该文件后,上传到Linux服务器上。
# 安装MySQL源
语法格式:
rpm -Uvh platform-and-version-specific-package-name.rpm
检查是否安装成功
执行成功后会在 /etc/yum.repos.d/ 目录下生成两个repo文件 mysql-community.repo 及 mysql-community-source.repo。
并且通过yum repolist可以看到mysql相关资源
yum repolist enabled | grep "mysql.*-community.*"
!mysql-connectors-community/x86_64 MySQL Connectors Community 108
!mysql-tools-community/x86_64 MySQL Tools Community 90
!mysql80-community/x86_64 MySQL 8.0 Community Server 113
2
3
4
# 选择版本
使用MySQL Yum Repository安装MySQL,默认会选择当前最新的稳定版。如果想要指定版本安装也是可以的。先查看当前MySQL Yum Repository中所有MySQL版本:
$ yum repolist all | grep mysql
mysql-cluster-7.5-community/x86_64 MySQL Cluster 7.5 Community disabled
mysql-cluster-7.5-community-source MySQL Cluster 7.5 Community - disabled
mysql-cluster-7.6-community/x86_64 MySQL Cluster 7.6 Community disabled
mysql-cluster-7.6-community-source MySQL Cluster 7.6 Community - disabled
mysql-cluster-8.0-community/x86_64 MySQL Cluster 8.0 Community disabled
mysql-cluster-8.0-community-source MySQL Cluster 8.0 Community - disabled
mysql-connectors-community/x86_64 MySQL Connectors Community enabled: 234
mysql-connectors-community-source MySQL Connectors Community - disabled
mysql-tools-community/x86_64 MySQL Tools Community enabled: 102
mysql-tools-community-source MySQL Tools Community - Sourc disabled
mysql-tools-preview/x86_64 MySQL Tools Preview disabled
mysql-tools-preview-source MySQL Tools Preview - Source disabled
mysql55-community/x86_64 MySQL 5.5 Community Server disabled
mysql55-community-source MySQL 5.5 Community Server - disabled
mysql56-community/x86_64 MySQL 5.6 Community Server disabled
mysql56-community-source MySQL 5.6 Community Server - disabled
mysql57-community/x86_64 MySQL 5.7 Community Server disabled
mysql57-community-source MySQL 5.7 Community Server - disabled
mysql80-community/x86_64 MySQL 8.0 Community Server enabled: 446
mysql80-community-source MySQL 8.0 Community Server - disabled
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
最后一列表明的是是否启用,安装时只会安装enabled的版本。如果有多个enabled,则会安装最新的。
可以通过命令行的方式来启用/禁用:
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
2
除了使用yum-config-manager之外,还可以直接编辑 /etc/yum.repos.d/mysql-community.repo 文件
enabled为0表示禁用,为1表示启用
[mysql-cluster-8.0-community]
name=MySQL Cluster 8.0 Community
baseurl=http://repo.mysql.com/yum/mysql-cluster-8.0-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
2
3
4
5
6
选择好版本后,可以检查当前启用的MySQL版本
$ yum repolist enabled | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community 234
mysql-tools-community/x86_64 MySQL Tools Community 102
mysql80-community/x86_64 MySQL 8.0 Community Server 446
2
3
4
这里我们不作修改,直接用最新版 MySQL 8.
# 安装MySQL
语法:
yum install mysql-community-server
该命令会安装MySQL所需的依赖,安装时间取决于网速。
随着MySQL的更新,安装过程可能需要一些额外的配置,遇到看不懂的错误请积极搜索相关博客。
安装完成后会在最后显示Complete!
# 在Mac上安装
如果使用Mac,可以参考:mac下mysql的安装步骤 - 知乎 (opens new window),这里就不赘述了
# 相关文章
- 除了 MySQL,这些数据库你都认识么? (opens new window)
- 超级详细的mysql数据库安装指南 - 知乎 (opens new window)
- windows环境下的MySQL安装以及基本命令-CSDN博客 (opens new window)
- 奔跑的土豆:mac 下 mysql 的安装步骤 (opens new window)