自从从使用 debian 系的 apt-get 转到使用 yum 工具之后一直不是很习惯,也没有去看过很多工具包安装的时候到底影响到了哪些文件等。这次借这次社区版 MySQL 安装来一并梳理一下。

首先我们前往 https://dev.mysql.com/downloads/repo/yum/ 下载对应的 yum repo 包。

这里可以看到 官方提供了4个 repo 包提供下载:

这里对应 3 个 linux 发行版。Red Hat Enterprise Linux 7 是红帽企业版7 后面是 Oracle Linux 7。 另外下面的 Fedora 是基于以前 Red Hat 个人版衍生而来。也是一个 Linux 发行版。 由于我这里的系统是 CentOs 7 我下载了第一个 rpm 包。

拿到包之后,我们将包添加进系统的 yum repo 列表之中。

sudo rpm -Uvh mysql80-community-release-el6-n.noarch.rpm

这个我们可以查看 CentOS 的指定路径下的文件可以看出来其安装后的效果。

我们进入 cd /etc/yum.repos.d 可以看到已经被我们安装上的 mysql-community.repo  mysql-community-source.repo 两个 repo

vi mysql-community.repo 可以查看包里面的信息。

同时我们使用

yum repolist all | grep mysql

来查看现在跟 MySQL 相关的 yum repo情况。这个时候如果使用 yum install 会默认安装现在 repo 里面最新的 MySQL 版本(To install the latest release from the latest GA series PS:GA(General Availability)),现在最新的版本是 8.0 。但是我现在只想安装 5.6 版本的,所以需要变化一下。来看下面的测试结果。

[root@iz2ze46vymskz5z22xevegz etc]# yum install mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-client.x86_64 :8.0.-.el7 will be installed
--> Processing Dependency: mysql-community-libs(x86-) >= 8.0. for package: mysql-community-client-8.0.-.el7.x86_64
--> Running transaction check
---> Package mariadb-libs.x86_64 :5.5.-.el7 will be obsoleted
--> Processing Dependency: libmysqlclient.so.()(64bit) for package: :postfix-2.10.-.el7.x86_64
--> Processing Dependency: libmysqlclient.so.(libmysqlclient_18)(64bit) for package: :postfix-2.10.-.el7.x86_64
---> Package mysql-community-libs.x86_64 :8.0.-.el7 will be obsoleting
--> Processing Dependency: mysql-community-common(x86-) >= 8.0. for package: mysql-community-libs-8.0.-.el7.x86_64
--> Running transaction check
---> Package mysql-community-common.x86_64 :8.0.-.el7 will be installed
---> Package mysql-community-libs-compat.x86_64 :8.0.-.el7 will be obsoleting
--> Finished Dependency Resolution Dependencies Resolved ==================================================================================================================================================================================================================
Package Arch Version Repository Size
==================================================================================================================================================================================================================
Installing:
mysql-community-client x86_64 8.0.-.el7 mysql80-community M
mysql-community-libs x86_64 8.0.-.el7 mysql80-community 2.2 M
replacing mariadb-libs.x86_64 :5.5.-.el7
mysql-community-libs-compat x86_64 8.0.-.el7 mysql80-community 2.1 M
replacing mariadb-libs.x86_64 :5.5.-.el7
Installing for dependencies:
mysql-community-common x86_64 8.0.-.el7 mysql80-community k Transaction Summary
==================================================================================================================================================================================================================
Install Packages (+ Dependent package) Total download size: M

可以看到 如果我 y 同意上面的信息,就会安装 8.0 的 MySQL 社区版。

现在我们需要调整成 5.6 的版本。

如果机器上有安装 yum-config-manager or dnf config-manager 这两个工具的话可以使用:

for platforms that are not dnf-enabled:

shell> sudo yum-config-manager --disable mysql80-community
shell> sudo yum-config-manager --enable mysql56-community
For dnf-enabled platforms:
shell> sudo dnf config-manager --disable mysql80-community
shell> sudo dnf config-manager --enable mysql56-community

来修改成自己想要的版本。如果像我这样。。。裸机啥都没有也有方法可以修改,我们去刚次啊提到的 /etc/yum.repos.d/ 下,找到 mysql-community.repo 编辑他。

可以看到 8.0 版本的信息是这样的

[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=
gpgcheck=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

我们将 enabled=1 改成 0

并且将我们想要使用的 5.6 改成 1即可。让我们再使用 yum install mysql-community-server 命令安装 社区版 MySQL 5.6 版本。(注意,上面提到的版本 enable。同一时间只能有一个版本处于 enable 状态)


[root@iz2ze46vymskz5z22xevegz yum.repos.d]# yum install mysql-community-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package mysql-community-server.x86_64 0:5.6.41-2.el7 will be installed
--> Processing Dependency: mysql-community-common(x86-64) = 5.6.41-2.el7 for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: mysql-community-client(x86-64) >= 5.6.10 for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: perl(Data::Dumper) for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: perl(DBI) for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.4)(64bit) for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: libaio.so.1(LIBAIO_0.1)(64bit) for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Processing Dependency: libaio.so.1()(64bit) for package: mysql-community-server-5.6.41-2.el7.x86_64
--> Running transaction check
---> Package libaio.x86_64 0:0.3.109-13.el7 will be installed
---> Package mysql-community-client.x86_64 0:5.6.41-2.el7 will be installed
--> Processing Dependency: mysql-community-libs(x86-64) >= 5.6.10 for package: mysql-community-client-5.6.41-2.el7.x86_64
---> Package mysql-community-common.x86_64 0:5.6.41-2.el7 will be installed
---> Package perl-DBI.x86_64 0:1.627-4.el7 will be installed
--> Processing Dependency: perl(RPC::PlServer) >= 0.2001 for package: perl-DBI-1.627-4.el7.x86_64
--> Processing Dependency: perl(RPC::PlClient) >= 0.2000 for package: perl-DBI-1.627-4.el7.x86_64
---> Package perl-Data-Dumper.x86_64 0:2.145-3.el7 will be installed
--> Running transaction check
---> Package mariadb-libs.x86_64 1:5.5.56-2.el7 will be obsoleted
---> Package mysql-community-libs.x86_64 0:5.6.41-2.el7 will be obsoleting
---> Package perl-PlRPC.noarch 0:0.2020-14.el7 will be installed
--> Processing Dependency: perl(Net::Daemon) >= 0.13 for package: perl-PlRPC-0.2020-14.el7.noarch
--> Processing Dependency: perl(Net::Daemon::Test) for package: perl-PlRPC-0.2020-14.el7.noarch
--> Processing Dependency: perl(Net::Daemon::Log) for package: perl-PlRPC-0.2020-14.el7.noarch
--> Processing Dependency: perl(Compress::Zlib) for package: perl-PlRPC-0.2020-14.el7.noarch
--> Running transaction check
---> Package perl-IO-Compress.noarch 0:2.061-2.el7 will be installed
--> Processing Dependency: perl(Compress::Raw::Zlib) >= 2.061 for package: perl-IO-Compress-2.061-2.el7.noarch
--> Processing Dependency: perl(Compress::Raw::Bzip2) >= 2.061 for package: perl-IO-Compress-2.061-2.el7.noarch
---> Package perl-Net-Daemon.noarch 0:0.48-5.el7 will be installed
--> Running transaction check
---> Package perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 will be installed
---> Package perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 will be installed
--> Finished Dependency Resolution


Dependencies Resolved


==================================================================================================================================================================================================================
Package Arch Version Repository Size
==================================================================================================================================================================================================================
Installing:
mysql-community-libs x86_64 5.6.41-2.el7 mysql56-community 2.0 M
replacing mariadb-libs.x86_64 1:5.5.56-2.el7
mysql-community-server x86_64 5.6.41-2.el7 mysql56-community 59 M
Installing for dependencies:
libaio x86_64 0.3.109-13.el7 base 24 k
mysql-community-client x86_64 5.6.41-2.el7 mysql56-community 19 M
mysql-community-common x86_64 5.6.41-2.el7 mysql56-community 257 k
perl-Compress-Raw-Bzip2 x86_64 2.061-3.el7 base 32 k
perl-Compress-Raw-Zlib x86_64 1:2.061-4.el7 base 57 k
perl-DBI x86_64 1.627-4.el7 base 802 k
perl-Data-Dumper x86_64 2.145-3.el7 base 47 k
perl-IO-Compress noarch 2.061-2.el7 base 260 k
perl-Net-Daemon noarch 0.48-5.el7 base 51 k
perl-PlRPC noarch 0.2020-14.el7 base 36 k


Transaction Summary
==================================================================================================================================================================================================================
Install 2 Packages (+10 Dependent packages)


Total download size: 82 M

 

我们确定后开始安装。

安装完成后使用 /bin/systemctl start mysqld.service 启动 MySQL

然后 大功告成!

[root@iz2ze46vymskz5z22xevegz yum.repos.d]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.6. MySQL Community Server (GPL) Copyright (c) , , 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.

完成安装和启动之后,我们可以在 /etc/my.conf 找到 MySQL 的配置文件, 默认数据存放位置是 /var/lib/mysql。

安装好之后默认 root 账户是没有密码的。设置 root 的密码使用

mysql> SET PASSWORD = PASSWORD('123456'); 

之后就是各自配置需要的内容即可!

下面再拿一节单独讲一下如何卸载 MySQL 因为可能因为安装错误或者版本升级各种各样的原因,我们需要卸载掉稚气啊安安装的 MySQL

使用 rpm -qa | grep mysql

找到目前已经安装的跟 MySQL 相关的软件包

rpm -e mysql-community-server-5.7.-.el7.x86_64
rpm -e mysql-community-client-5.7.26-1.el7.x86_64
如果还有一些驱动啥的就都卸载掉。

删除对应需要删除的软件包

先使用 systetmctl list-unit-files | grep mysql 查看 MySQL 相关的服务
然后使用 chkconfig -del mysql 删除相关的服务

删除对应的服务

清理相关的 MySQL 文件文件夹
find / -name mysql 找到对应的位置删除即可。 通用的五个地方是
/var/lib/mysql 存放数据的地方
/usr/share/mysql 不知道放什么的地方
/var/log/mysql/mysql-bin binlog 存放位置
/var/log/mysql 错误日志
/etc/my.cnf mysql 配置文件 其他的还是按照搜索出来的地方一一清除即可。

Reference:

https://dev.mysql.com/downloads/repo/yum/  Download MySQL Yum Repository

https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/  A Quick Guide to Using the MySQL Yum Repository

https://support.ruckuswireless.com/articles/000002490  What is a GA release?

https://blog.csdn.net/alex_bean/article/details/55656236  CentOS 下完全卸载 MySQL

如何使用 Yum Repository 安装指定版本的 MySQL的更多相关文章

  1. MySQL 三 通过yum源安装指定版本的mariadb

      1.yum源安装指定的版本     1)准备工作     下载安装当前次新版 https://downloads.mariadb.org/   选择rpm包,点击Repository Config ...

  2. Centos7根据yum源安装指定版本docker

    yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://mi ...

  3. mysql使用yum源安装各个版本的mysql数据库

    每次想用yum安装旧版本的mysql时,发现都找不到mysql的yum安装源,在官网只能找到最新版本mysql的yum源.后来才知道,原来最新的mysql的yum源也是包含了旧版本的mysql的yum ...

  4. yum 安装mysql, yum安装指定版本的mysql

    yum安装mysql: 1. 查看有没有安装过     yum list installed MySQL* (有存在要卸载yum remove MySQL*)     rpm -qa | grep m ...

  5. Linux系统CentOS使用yum方式安装指定版本的PHP 添加yum源 从PHP5.3升级到5.4/5.5/5.6

    默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 首先删除旧版本的PHP, 通过yum list installed | grep php可以查看所有已安装的php软件 使 ...

  6. CentOS 6.9/7通过yum安装指定版本的MySQL

    一.安装CENTOS 6 # wget http://repo.mysql.com/mysql57-community-release-el6.rpm && rpm -ivh mysq ...

  7. Ubuntu下安装指定版本的mysql

    1.编辑/etc/apt/sources.list和/etc/apt/sources.list.save, 手动加上deb http://archive.ubuntu.com/ubuntu trust ...

  8. centos7下安装指定版本mysql5.7.23

    现在mysql版本已经到MySQL 8.0(GA)稳定版本了,所以需求是想简单又快速在centos7下安装指定版本例如MySQL 5.7(GA)版本有下面这种方法 首先需要到mysql官网这里下载对应 ...

  9. yum 安装指定版本Docker

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/weixin_39553910/artic ...

随机推荐

  1. Error: client: etcd cluster is unavailable or misconfigured; error #0: dial tcp 127.0.0.1:4001: getsockopt: connection refused

    配置docker网络flannel时,配置etcd的key的时候出现以下错误 Error:  client: etcd cluster is unavailable or misconfigured; ...

  2. 在ASP.NET MVC中使用Redis

    一.Redis基本认知 1.含义: REmote DIctionary Server(Redis) | 是一个key-value存储系统 2.特性: 2.1 持久化:可以将内存中的数据保存在磁盘中,重 ...

  3. 【vue】vue +element 搭建项目,el-input 常用的验证

    1.el-input 常用布局 <el-input class="filter-item dialog-search" size="small" @key ...

  4. 编写第一个 Shell 脚本

    什么是 Shell 脚本? 一个 shell 脚本就是一个包含一系列命令的文件.shell 读取这个文件,然后执行 文件中的所有命令,就好像这些命令已经直接被输入到了命令行中一样. 怎样编写一个 Sh ...

  5. day25 Python __setattr__

    #__getattr__只有在使用点调用属性且属性不存在的时候才会触发 class Foo: x=1 def __init__(self,y): self.y=y def __getattr__(se ...

  6. 最长上升子序列(LIS)

    (我先扯些没用的) 我这个笨孩子 学点东西好慢好慢的 我还贪玩 于是 将自己陷入了一个超级超级超级差的境地 可 我还傻乎乎的保有着天真的梦想(理想?) 所以现在我要加倍的努力努力再努力了 只能嘎油了 ...

  7. GitHub存储库泄露了API令牌和加密密钥

    导读 北卡罗莱纳州立大学(NCSU)学者的一项研究表明,一些GitHub存储库泄漏API令牌和密码密钥.研究人员分析了分布在数百万存储库中的10亿多个GitHub文件.研究人员使用GitHub搜索AP ...

  8. 记一次InputStream引起的乱码

    项目上线一周后,正准备看新闻的我突然接到了一个任务.线上突然出现了一条乱码的数据,需要解决这个bug.于是我放下了手中的保温杯,开始解决这个bug.经过一番折腾,发现是有一个同事在处理IO流上写得有点 ...

  9. 开源工具 DotnetRSA 快速生成和转换RSA秘钥

    一.简介 DotnetRSA 是一个利用 .NET Core 2.1 开发的 .NET Global Tool,是可以想npm全局安装一样,安装在你的系统中,只需敲一行命令便可以快速生成RSA加密算法 ...

  10. vue学习笔记总结----思维导图