从 01 开始 从 01 开始
首页
  • 计算机简史
  • 数字电路
  • 计算机组成原理
  • 操作系统
  • Linux
  • Docker
  • 计算机网络
  • 计算机常识
  • MySQL
  • Git
  • JavaSE
  • Java 高级
  • JavaEE

    • 构建、依赖管理
    • Ant
    • Maven
    • 日志框架
    • Junit
    • JDBC
    • XML-JSON
  • JavaWeb

    • 服务器软件
    • 环境管理和配置管理-科普篇
    • Servlet
  • Spring

    • Spring基础
  • 主流框架

    • Redis
    • Mybatis
    • Lucene
    • Elasticsearch
    • RabbitMQ
    • MyCat
    • Lombok
  • SpringMVC

    • SpringMVC 基础
  • SpringBoot

    • SpringBoot 基础
  • Windows 使用技巧
  • 输入法
  • 浏览器
  • 终端软件
  • 装机
  • 笔记类软件
  • Markdown
  • 微信
  • 各大平台
  • RSS
  • Office
  • 手机
  • 校招
  • 五险一金等
  • 职场规划
  • 关于离职
  • 杂谈
  • 教程简介
  • 英语学习方法论
  • 字母
  • 音标
  • 单词
  • 语法
  • 英语兔的相关视频
  • Larry 想做技术大佬的相关视频
  • 驾驶技能
  • 住房相关
  • 厨艺
  • 关于税
  • 理财
  • 睡眠
  • 皮肤
  • 口腔健康
  • 学会呼吸
  • 健身日志
  • 漫画

    • 漫画软件
    • 漫画推荐
  • 游戏

    • 三国杀
  • 关于本站
  • 关于我
  • 网站动态
  • 友人帐
  • 打赏
  • 如何搭建一个博客
  • 关于邮件服务器
  • 本站的分享资料
  • 年度总结

    • 2022 年度总结
    • 2023 年度总结
  • 文章分类
  • 文章标签
  • 文章归档

PeterJXL

首页
  • 计算机简史
  • 数字电路
  • 计算机组成原理
  • 操作系统
  • Linux
  • Docker
  • 计算机网络
  • 计算机常识
  • MySQL
  • Git
  • JavaSE
  • Java 高级
  • JavaEE

    • 构建、依赖管理
    • Ant
    • Maven
    • 日志框架
    • Junit
    • JDBC
    • XML-JSON
  • JavaWeb

    • 服务器软件
    • 环境管理和配置管理-科普篇
    • Servlet
  • Spring

    • Spring基础
  • 主流框架

    • Redis
    • Mybatis
    • Lucene
    • Elasticsearch
    • RabbitMQ
    • MyCat
    • Lombok
  • SpringMVC

    • SpringMVC 基础
  • SpringBoot

    • SpringBoot 基础
  • Windows 使用技巧
  • 输入法
  • 浏览器
  • 终端软件
  • 装机
  • 笔记类软件
  • Markdown
  • 微信
  • 各大平台
  • RSS
  • Office
  • 手机
  • 校招
  • 五险一金等
  • 职场规划
  • 关于离职
  • 杂谈
  • 教程简介
  • 英语学习方法论
  • 字母
  • 音标
  • 单词
  • 语法
  • 英语兔的相关视频
  • Larry 想做技术大佬的相关视频
  • 驾驶技能
  • 住房相关
  • 厨艺
  • 关于税
  • 理财
  • 睡眠
  • 皮肤
  • 口腔健康
  • 学会呼吸
  • 健身日志
  • 漫画

    • 漫画软件
    • 漫画推荐
  • 游戏

    • 三国杀
  • 关于本站
  • 关于我
  • 网站动态
  • 友人帐
  • 打赏
  • 如何搭建一个博客
  • 关于邮件服务器
  • 本站的分享资料
  • 年度总结

    • 2022 年度总结
    • 2023 年度总结
  • 文章分类
  • 文章标签
  • 文章归档
  • 计算机历史

  • 数字电路

  • 计算机组成原理

  • 操作系统

  • Linux

  • 计算机网络

  • Git

  • 计算机小知识

  • MySQL

    • 教程概述
    • 数据的存储
    • 数据库的安装
      • 数据库的种类
      • 安装MySQL
      • 相关文章
    • 数据库的启停与连接
    • 数据库的管理
    • SQL概述
    • 表的管理
    • seletct基础
    • 运算符
    • 聚合查询
    • 排序
    • 数据的插入
    • 数据的删除
    • 数据的更新
    • 事务
    • 视图
    • 子查询
    • 函数
    • 谓词
    • CASE表达式
    • 集合运算
    • 联结-join
    • SQL入门小结
    • 更多数据库
    • MySQL的数据类型
    • 命令行的一些用法
    • 用户与权限管理
    • MySQL的权限管理
    • mysqldump
    • mysqladmin
    • Liquibase
    • 表注释与字段注释
    • 编码类型
  • 计算机基础
  • MySQL
2024-01-21
目录

数据库的安装

# 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
1
2

‍

如果有结果,则逐个删除:

rpm -e --nodeps 结果名
1

‍

# 下载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) 
1
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
1

‍

检查是否安装成功

执行成功后会在 /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
1
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
1
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
1
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
1
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
1
2
3
4

这里我们不作修改,直接用最新版 MySQL 8.

‍

# 安装MySQL

语法:

yum install mysql-community-server
1

该命令会安装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)

‍

上次更新: 2024/5/30 15:25:05
数据的存储
数据库的启停与连接

← 数据的存储 数据库的启停与连接→

Theme by Vdoing | Copyright © 2022-2024 | 粤 ICP 备 2022067627 号-1 | 粤公网安备 44011302003646 号 | 点击查看十年之约
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式