CentOS 7 安装mysql 5.7(重装5.7)踩坑记录

12 篇文章 0 订阅
4 篇文章 0 订阅

一、卸载mysql数据库

1)停止运行

如果正在运行,需要停止运行

systemctl stop mysqld

在这里插入图片描述

2)删除已安装数据库服务

查看已经安装的mysql命令
在这里插入图片描述

然后使用命令将其删除掉

yum remove mysql mysql-server mysql-libs mysql-communtity

在这里插入图片描述

接下来查看剩余文件
在这里插入图片描述

如果有的话使用rpm -ev进行删除(rpm -ev +对应文件名)
在这里插入图片描述
在这里插入图片描述

卸载完成

接下来安装MySQL

二、安装MySQL服务(yum安装)

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。

1)安装mysql57-community-release-el7-9.noarch.rpm

yum -y install mysql57-community-release-el7-9.noarch.rpm

在这里插入图片描述

2)安装mysql服务器

之后安装mysql服务器

yum -y install mysql-community-server

在这里插入图片描述
安装完成之后会覆盖掉MariaDB。

等待下载
在这里插入图片描述

由于疏忽此时出现错误
在这里插入图片描述
出现此问题的原因是因为之前安装过mysql,有遗留的源key

然而GPG对于包的源key的验证没有通过,所以我们需要跳过GPG验证。

在命令后面加上—nogpgcheck
比如命令

yum -y install mysql-community-server –nogpgcheck

在这里插入图片描述
等待下载安装。
在这里插入图片描述
现在数据库已经安装完成,可以启动服务。

3)数据库设置

接下来需要进行数据库的设置。
1、 启动数据库

 systemctl start mysqld

在这里插入图片描述
2、 设置自启
查看是否自启

systemctl is-enabled mysqld

在这里插入图片描述
显示已经是自启状态。
如果没有设置自启,将其设置为自启状态。

systemctl enable mysqld

如果需要关闭自启,使用命令

systemctl disabled mysqld

在这里插入图片描述

3、 查看数据库运行状态

Systemctl命令传送门

 systemctl status mysqld

在这里插入图片描述
图上所示为已启用
4、 找出默认root密码(或者跳过密码验证)
(1)、找出默认密码

grep "password" /var/log/mysqld.log

在日志文件中找出默认密码(我没找出来)
(2)、跳过密码验证

vim /etc/my.cnf
#(注:windows下修改的是my.ini)

编辑该配置文件,在[mysqld]后面任意一行添加‘skip-grant-tables‘用来跳过密码验证。

添加完之后重启过mysql服务以生效。
(3)用root登录mysql。

5、 更改密码

update set authentication_string =password('123456') where user='root'

在这里插入图片描述
此时为修改成功。接下来重启mysql服务。

在这里插入图片描述
接下来使用账号密码登录而不是跳过登陆验证。
此时已经可以正常登录。
接下来打开所需端口
6、 开启端口
由于是阿里云服务器,需要在阿里云中开启端口,具体过程不在过多赘述
7、 开启root远程访问
登录数据库执行一下语句

grant all privileges on *.* to 'root'@'%' identified by '你的密码';

在这里插入图片描述
第一个*是数据库,可以改成允许访问的数据库名称

第二个*是数据库的表名称,代表允许访问任意的表

root代表远程登录使用的用户名,可以自定义

%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了。

但是此时报错了,是由于我们刚才加的跳过认证的代码所导致的。(其实应该是因为没有用alter更新密码导致的)
此时我们需要将刚才跳过权限的代码删除掉。

vim /etc/my.cnf

接下来为vim操作

键盘上按下 i 进入insert 模式
然后将刚才的代码删除掉。
接下来在英文状态下按下 esc 键,
并键入以下指令:

:wq

需要使用 alter user进行修改密码方可进行下一步。(需要满足复杂度要求)。(如果第五步是使用这个命令修改的密码,就不会出现刚刚的错误了)。
在这里插入图片描述
此时重启mysql服务。
然后再次执行刚刚的命令进行远程授权

grant all privileges on *.* to 'root'@'%' identified by '你的密码';

在这里插入图片描述
我们发现操作成功。
刷新权限使得修改生效

flush privileges;

在这里插入图片描述

接下来重启服务

远程登陆测试

成功!如果没成功,可能的原因有端口、数据库服务运行状态、防火墙等。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值