用最新MySQL 8.0的源安装MySQL 5.7版本(CentOS 7环境下)
起因:
从官网下了MySQL最新8.0版本的源,安装了MySQL 8.0.13,但是发现版本太新了跟其他软件不兼容,而且改了半天其他软件配置都没改好(囧rz)。。。算了,卸载了8.0,还是安回5.7的老版本吧。
在网上搜了一大圈,都没看到最新的源是怎么安装老版本的,最后还是在官网看了官方文档解决的。谢谢官网文档,哈哈哈。
一、操作系统和软件版本介绍
1.操作系统
CentOS Linux release 7.6.1810 (Core)
2.官网下载的MySQL源版本
mysql80-community-release-el7-1.noarch.rpm
3.安装的MySQL版本
Server version: 5.7.24 MySQL Community Server (GPL)
二、下载,详细的切换版本、安装步骤
1. 从官网下载最新的源
官网地址 https://dev.mysql.com/downloads/repo/yum/
选择适合的版本进行下载:
然后,在Linux上进行下载。等待一段时间,下载完成:
[root@localhost mysql]# wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
2.更新/安装 刚才下载下来的包
[root@localhost mysql]# rpm -Uvh mysql80-community-release-el7-1.noarch.rpm
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-h或--hash:套件安装时列出标记;
-Uvh:升级软件包--Update;
3.列出包里面所有可用的版本
列出所有可用的版本:yum repolist all
[root@localhost mysql]# yum repolist all | grep mysql
4.禁用8.0版本,启用5.7版本
从上图发现8.0版本是enabled的,5.7版本是disabled的
因为我们需要安装5.7版本的,所以把8.0的进行禁用,然后再启用5.7版本
先禁用8.0版本:
[root@localhost mysql]# yum-config-manager --disable mysql80-community
再启用5.7版本:
[root@localhost mysql]# yum-config-manager --enable mysql57-community
根据官方文档说明,当enabled=1时,是启用的;当enabled=0时,是禁用的。也可以进入/etc/yum.repos.d/mysql-community.repo 进行修改设置
5.再检查一次现在可用的版本
发现都是5.7版本的了。请确保只有一个版本启用,否则安装时会显示版本冲突
[root@localhost mysql]# yum repolist enabled | grep mysql
6.进行安装,等待一段时间,安装完成
[root@localhost mysql]# yum install mysql-community-server
7.查看MySQL的版本
确实是5.7版本的
[root@localhost mysql]# mysql --version
三、启动MySQL & 修改root连接权限(使其可用于远程连接登录)
1.启动MySQL后,查看下状态
[root@localhost mysql]# systemctl start mysqld.service
[root@localhost mysql]# systemctl status mysqld.service
2.获取MySQL的root密码
[root@localhost mysql]# grep 'temporary password' /var/log/mysqld.log
3.登录MySQL
[root@localhost mysql]# mysql -u root -p
4.重新设置MySQL的密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Sjq@123456';
5.查看数据库,进入mysql数据库
因为mysql中有user表(user表存了用户的信息)
mysql> show databases; mysql> use mysql;
6.在mysql数据库中查看user表中相关的信息
看host和user这两列,root的host为 localhost , localhost 表示只能进行本地访问,不能进行远程连接
然后更改root用户的host为通配符 % ,就可以把该用户的访问权限设置为可以远程连接了
mysql> select host, user, authentication_string, plugin from user; mysql> update user set host = "%" where user = "root";
7.刷新MySQL的系统权限相关表,退出
mysql> FLUSH PRIVILEGES; mysql> quit;
四、连接Navicat,运行一句sql进行验证
1.关闭防火墙,并查看防火墙状态
[root@localhost mysql]# systemctl stop firewalld
[root@localhost mysql]# systemctl status firewalld
2.打开Navicat,进行连接测试
显示连接成功
3.导入一个新的数据库
4.运行一行sql语句进行验证
结果显示正确,验证通过!
SELECT * FROM menus; SELECT * FROM categories;
至此,MySQL 5.7.24版本安装完成!
参考官方文档:https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/