Centos7 yum 方式安装 Mysql 8.0.x

Posted 工程师杰哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7 yum 方式安装 Mysql 8.0.x相关的知识,希望对你有一定的参考价值。

最近需要在 CentOS 7.9.2009 中安装mysql,查网上资料都是copy and copy,如果直接按网上yum安装,要么安装的最新版,要安装低版本就不太容易。研究了一下,整理如下 :

测试系统版本:CentOS-7.9.2009 64位 安装时最小安装

mysql版本:mysql 8.0.23

安装步骤:

预先说明:安装过程中有提示y/n暂停时,都输入y回车

1、yum install yum-utils 安装yum配置管理器

2、从 https://dev.mysql.com/downloads/repo/yum/ 下载对应 操作系统版 本的yum库文件。请注意:centos属于redhat系列

实际上,可以不必下载到本地,可以点开download后,在“No thanks。。。”链接上点右键,选复制链接。

Centos7 yum 方式安装 Mysql 8.0.x

3、通过yum install 可以直接在线安装yum库

yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

如果您是下载到本地,可以上传到系统中后,上传到某个目录(比如:/opt 然后使用 yum install  /opt/mysql80-community-release-el7-3.noarch.rpm 来进行安装。

4、(如果您 要安装最新版的mysql,可以跳过步骤4,直接到步骤5)通过yum-config-manager来启用禁用需要 的版本,假如我希望安装mysql5.7版 ,那命令如下:

#启用安装mysql5.7.xshell> sudo yum-config-manager --enable mysql57-community#禁止安装最新的mysql8.0.xshell> sudo yum-config-manager --disable mysql80-community

5、yum install mysql-community-server 进行安装,基于第4步的配置后,yum会直接安装配置中所启用的版本而不需要 另行配置。

6、由于mysql8使用了caching-sha2-password的新密码认证,可能会无法进行远程管理连接或者应用程序无法连接,这种情况需要修改为旧的mysql5认证(即mysql_native_password模式 ),MySQL的配置文件默认在/etc目录下

vi /etc/my.conf 打开VI编辑器,使用快捷键 i 进入编辑器状态 找到:

 # default-authentication-plugin=mysql_native_password

 去掉表示注释的#号,变成

default-authentication-plugin=mysql_native_password

然后按esc键,输入:wq回车保存退出

7、输入 systemctl restart mysqld 启动mysql服务

8、对于mysql来说,将在启动时自动生成一个默认密码,密码保存于/var/log/mysqld.log 的日志文件中。查阅使用

cat /var/log/mysqld.log

Centos7 yum 方式安装 Mysql 8.0.x

您也可以使用SFTP下载后查看。

9、输入 mysql -uroot -p回车,输入步骤8中获得的密码,回车进入到mysql命令行环境。

10、mysql8 要求必须修改root用户密码后才可以 继续使用,那么,我们使用

ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';

来进行修改,需要说明一下,如果没有修改my.cnf,而某个用户需要设置为mysql_native_password 密码,可以 使用如下:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

来进行修改。默认策略下,您 的密码必须设置为有大小写字母+标点+数字,且必须大于等于8个长度,如果您在开发过程中,不需要这么高的策略,可以使用如下:

mysql> set global validate_password.policy=0#修改安全策略级别为 低mysql> set global validate_password.length=4#修改密码最小长度为 4mysql> flush privileges; #刷新策略表

11、Mysql有密码策略,我们在完成密码修改后,使用SHOW VARIABLES LIKE 'validate_password%'; 来查看所有的策略,感觉不合适的,可以使用类似上面的命令来修改。

 

很明显,修改的方式为 set global 修改变量=值 ;

12、开启远程访问。

网上有文章 说使用 grant 来授权远程 访问,我使用未成功,使用简单粗暴的方式,登录mysql后:

use mysql;update user set host="%" where user='root';

如果远程客户端无法连接 ,尝试使用下面指令关闭防火墙和selinux并重启操作系统:

shell> systemctl disable firewalldshell> sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

至此,应该是可以连接上了。

以上是关于Centos7 yum 方式安装 Mysql 8.0.x的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7 安装mysql(YUM方式)

Centos7 安装 mysql 8

centos7利用yum安装mysql 8.0.12

Centos7 安装mysql-8.0.13(rpm)

centos7利用yum安装mysql 8.0.12

CentOS7 yum方式 安装mysql 5.7.28步骤