CentOS7下安装mysql5.7(亲测完成)

您所在的位置:网站首页 mysql57安装失败 CentOS7下安装mysql5.7(亲测完成)

CentOS7下安装mysql5.7(亲测完成)

2023-04-02 01:45| 来源: 网络整理| 查看: 265

CentOS7下安装mysql5.7 前言一、环境地址新建、清除旧安装包二、安装YUM三、使用yum命令即可完成安装问题一:如果遇到安装不成功,提示:The GPG keys listed for the "MySQL 5.7 Community Server" repository are already installed but they are not correct for this package.解决:yum添加--nogpgcheck原因办法 问题二:登录报错ERROR 1045解决:修改my.cnf文件问题三:登录报错ERROR 1820 You must reset your password using ALTER USER statement before executing this statement.解决:重新设置密码 四、navicat测试连接成功五、参考文章

前言

近期项目需要配合mysql一起记录相关数据,于是在服务器搭建了mysql,顺便记录一下搭建步骤和踩坑解决步骤

一、环境地址新建、清除旧安装包 进入到目录 /usr/local/ 中 cd /usr/local/ 创建目录 /usr/local/tools,如果有则忽略 mkdir -p tools 创建 /usr/local/mysql 目录,如果已存在则忽略 mkdir -p mysql 进入到目录 /usr/local/tools 中 cd tools/ 查看系统中是否已安装 MySQL 服务 rpm -qa | grep mysql 或 yum list installed | grep mysql 如果已安装则删除 MySQL 及其依赖的包 yum -y remove mysql-libs.x86_64

在这里插入图片描述

二、安装YUM 下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源 下载命令: wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm 然后进行repo的安装: rpm -ivh mysql57-community-release-el7-8.noarch.rpm

在这里插入图片描述 执行完成后会在/etc/yum.repos.d/目录下生成两个repo包: mysql-community.repo mysql-community-source.repo 在这里插入图片描述

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

注意:必须进入到 /etc/yum.repos.d/目录后再执行以下脚本

安装命令: 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 获取安装时的临时密码(在第一次登录时就是用这个密码): grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述

登录mysql mysql -u root -p 然后输入密码(刚刚获取的临时密码) 问题二:登录报错ERROR 1045

倘若获取临时密码,登录报错ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES) 在这里插入图片描述

解决:修改my.cnf文件 首先,停止MySQL服务 service mysqld stop 既然是密码错误,那么就先跳过密码验证的步骤,打开my.cnf文件,更改不启动授权表 vim /etc/my.cnf

在这里插入图片描述

然后,搜索mysqld,找到[mysqld],在最后加上添加一行语句:

/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)。

注:windows下修改的是my.ini。

在 [mysqld] 底下添加语句:

skip-grant-tables

(注:skip-grant-tables:不启动grant-tables授权表,作为启动参数的作用:MYSQL服务器不加载权限判断,任何用户都能访问数据库)

这是用来跳过密码验证的,添加之后保存退出。 在这里插入图片描述

问题三:登录报错ERROR 1820 You must reset your password using ALTER USER statement before executing this statement.

输入上面得到的密码进入,用该密码登录后,必须马上修改新的密码,不然会报如上述错误: 在这里插入图片描述

解决:重新设置密码

如果你想要设置一个简单的测试密码的话,比如设置为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 密码直接回车

在这里插入图片描述

mysql连接成功,修改密码

5.1、看当前所有数据库:show databases;

5.2、进入mysql数据库:use mysql;

5.3、查看mysql数据库中所有的表:show tables; 在这里插入图片描述

5.4、查看user表下的角色和密码, 注意:5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

select Host,User,authentication_string from user;

说明: % 代表任意的客户端,可替换成具体IP地址。 在这里插入图片描述

5.5、修改密码 update user set authentication_string=password(“新密码”) where user=”用户名”;

在这里插入图片描述 密码修改完毕

四、navicat测试连接成功 打开navicat配置服务器的主机、端口、用户名、密码(刚刚修改过的)测试链接成功 在这里插入图片描述 五、参考文章

CentOS7下安装mysql5.7 在 CentOS7 上安装 MySQL5.7 MySQL1045错误解决方法



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3