CentOS 7下安装mysql5.7(亲测安装成功)

前言

近期项目需要搭配mysql一起存储相关数据,但对mysql的版本有要求,于是在服务器搭建了mysql5.7,顺便记录一下搭建步骤和踩坑解决步骤

目录

一、清除旧安装包

二、安装YUM

三、使用yum命令即可完成安装

问题一:如果遇到安装不成功:

四、重新设置密码

五、创库

问题二:设置密码时报错:

六、项目连接数据库

问题三:Mysql:SQL 错误 [08S01]:

一、清除旧安装包

1、查看系统中是否已安装 MySQL 服务

rpm -qa | grep mysql 或 yum list installed | grep mysql

2、如果已安装则删除 MySQL 及其依赖的包

yum -y remove mysql-libs.x86_64

二、安装YUM

1、下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源
下载命令:

wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

2、然后进行repo的安装:

rpm -ivh mysql57-community-release-el7-8.noarch.rpm

执行完成后会在/etc/yum.repos.d/目录下生成两个repo包:
mysql-community.repo
mysql-community-source.repo

Linux的配置文件为/etc/my.cnf(windows的配置文件为my.ini)

三、使用yum命令即可完成安装

注意:必须进入到 /etc/yum.repos.d/目录后再执行以下脚本这里我没在此目录中安装,最后安装完没有client.cnf两个文件,可能是这个原因

安装命令:

yum install mysql-server

(此时会有一个报错,说安装失败)

问题一:如果遇到安装不成功:

The GPG keys listed for the “MySQL 5.7 Community Server” repository are already installed but they are not correct for this package.

Check that the correct key URLs are configured for this repository.

解决

yum添加–nogpgcheck

原因

软件开发商在释出 RPM 文件时,会在其中添加数字签名,并释出用于验证数字签名的公钥。使用 rpm 安装软件时,rpm 会首先根据系统中已有的公钥去验证 RPM 文件的数字签名。gpg keys 就是公钥。

详细办法

yum安装的时候就会校验软件包是否是官方发布的。当然可以给yum添加–nogpgcheck来强制安装,如下命令即可

yum install mysql-server --nogpgcheck

所以在安装的时候会比对已有的公钥,发现不正确,报错了

2. 启动msyql:

systemctl start mysqld #启动MySQL

3、获取安装时的临时密码(在第一次登录时就是用这个密码):

grep 'temporary password' /var/log/mysqld.log

4、登录mysql

mysql -u root -p

然后输入密码(刚刚获取的临时密码)

————————————————————end—————————————————————

如果登录mysql时再发现报错(报错ERROR 1045)如下图:

则参考这个链接解决

CentOS7下安装mysql5.7(亲测完成)_centos 安装mysql5.7.13-CSDN博客

四、重新设置密码

如果你想要设置一个简单的测试密码的话,比如设置为123456,会提示这个错误,报错的意思就是你的密码不符合要求:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

必须修改两个全局参数:

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)

validate_password_length(密码长度)参数默认为8,我们修改为1

mysql> set global validate_password_length=1;

Query OK, 0 rows affected (0.00 sec)

完成之后再次执行修改密码语句即可成功

mysql> alter user 'root'@'localhost' identified by '654321';

Query OK, 0 rows affected (0.00 sec)

重新启动MySQL服务

systemctl start mysqld #启动MySQL

进入MySQL

出现密码输入时,不用输入直接按回车,就可以不用密码就能登录

mysql -u root -p

密码直接回车

五、创库

创建新的数据库后,就可以给新库设置单独的用户和密码

举个例子:

为Confluence创建对应的数据库、用户名和密码

mysqld [(none)]> create database confluence default character set utf8 collate utf8_bin;Query OK, 1 row affected (0.00 sec)

mysqld [(none)]> grant all on confluence.* to 'confluence'@'%' identified by 'confluencepasswd';Query OK, 0 rows affected (0.00 sec)

mysqld [(none)]> flush privileges;Query OK, 0 rows affected (0.00 sec)

问题二:设置密码时报错:

在第二步在mysql中给confluence设置密码时会有报错,提示密码不和要求,需要设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,

进入mysql中,输入设值语句 “ set global validate_password_policy=LOW; ” 进行设值即可解决。

六、项目连接数据库

在连接数据库时可能会有两种报错,这里也用confluence举例,一种是说字符集不是utf8(我当时用kali自带的数据库配置的,连接不上,最后还是用centos7安装mysql避坑的),一种是下面这种问题:

SQLState - 08S01 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 2 milliseconds ago. The last packet sent successfully to the server was 2 milliseconds ago(解决办法如下):

问题三:Mysql:SQL 错误 [08S01]:

Communications link failure, Bad handshake,idea 连接mysql,报08S01

原因大致如下:

在5.7.28之后,useSSL是true,这个需要配置SSL证书

因为此版本之后已经默认支持 SSL,所以连接实际应用会使用 SSL

解决方法:

mysql的配置文件/etc/my.cnf的[mysqld] 下面添加
skip_ssl

(这里以搭建confluence举例)

完美解决问题,测试连接成功!

至此mysql5.7已安装配置好了。

参考:

https://blog.csdn.net/ic_xcc/article/details/121425926

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值