Centos 7.6 安装mysql 5.7

卸载mysql

之前服务器上一直是mysql8,因为不经常使用,而且8的内存占用还挺高的,所以想降低到5.7,腾出点运行内存

停止服务

shell 复制代码
# 查询服务的状态
systemctl status mysqld
# 停止服务
systemctl stop mysqld

随后再次查询状态

查询文件mysql的文件所在位置:

shell 复制代码
find / -name mysql

这个时间可能会比较长,如果命令行卡住不动的话,可能需要等等(我这里大概执行了40秒左右)

删除文件(这里一个一个删掉就行了,为了安全考虑)

shell 复制代码
rm -rf /usr/lib64/mysql
rm -rf /usr/bin/mysql
rm -rf /etc/logrotate.d/mysql 
rm -rf /var/lib/mysql

删除rpm

shell 复制代码
# 查询rpm
rpm -qa | grep -i mysql


如果存在rpm源的话直接 一个一个都删除掉

shell 复制代码
# 删除 rpm 命令 (--nodeps 后面跟上自己的rpm源就可以了)
rpm -e --nodeps mysql-community-common-8.0.29-1.el7.x86_64

以防万一最后可以验证下是否删除掉了

shell 复制代码
[root@iZbp1ived2u2bflco3ty6Z mysql]# systemctl start mysql
Failed to start mysql.service: Unit not found.

表示删除成功

安装mysql5.7

首先获取mysql yum 镜像

网址:https://repo.mysql.com/

查看系统版本

shell 复制代码
cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

我这里是 centos 7.6

直接下载镜像

shell 复制代码
mkdir /usr/local/mysql
cd /usr/local/mysql
# 拉取 rpm
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
# 执行 rpm
rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
# 下载mysql 5.7
yum install -y mysql-community-server


安装完毕后可以直接启动mysql了

相关命令

shell 复制代码
# 启动服务
systemctl start mysqld.service

# 查看服务状态
systemctl status mysqld.service

# 停止服务
systemctl stop mysqld.service

# 重启服务
systemctl restart mysqld.service

登录mysql

方式一(临时密码)

启动成功之后最后会给一个临时密码,可以直接用这个临时密码登录

不过我比较点背,怎么都上不去,所以我采用了 Plan B!!!

方式二 (跳过密码skip-grant-tables)

进入 my.cnf配置文件中,随后添加跳过密码配置:skip-grant-tables

shell 复制代码
vim /etc/my.cnf
# 按下 i 之后再最后一行添加 skip-grant-tables
# 按 Esc :wq 保存并退出
# 重启数据库
systemctl restart mysqld.service
# 随后直接登录
mysql -u root -p
# 按两下回车直接登录

如下表示登录成功


但是这个时候还是不能修改密码,会提示当前处于跳过密码模式

这里直接修改数据库模式

shell 复制代码
# 设置全局只读
set global read_only=0;
# 刷新
flush privileges;
# 查看
show variables like '%read_only%';


随后就可以设置密码了,设置完成之后,退出数据库,随后将my.cnf中的跳过直接去掉,重启数据库即可!!

设置远程连接

shell 复制代码
# 登录数据库
mysql -u root -p
# 查看数据库
show databases;
# 切换mysql
use mysql;
# 设置远程登录
update user set host = '%' where user = 'root';
# 刷新
flush privileges;

开机自启

shell 复制代码
systemctl enable mysqld
systemctl daemon-reload
相关推荐
天衍四九-8 小时前
MySQL中如何定位慢查询?如果SQL语句执行很慢,如何分析和优化?
数据库·sql·mysql
尚久龙8 小时前
mysql-5.7.26-winx64的安装步骤
数据库·mysql
游戏开发爱好者88 小时前
网络连接排查指南,谁在电脑后台偷跑流量,哪些程序在联网
网络协议·计算机网络·网络安全·ios·adb·https·udp
实心儿儿8 小时前
MySQL 的安装
数据库·mysql·adb
程序员阿鹏10 小时前
为什么MySQL InnoDB选择B+树?
数据结构·数据库·b树·sql·mysql·算法·缓存
这个DBA有点耶13 小时前
非关系型数据库到底有几种?键值、文档、列族、图,一篇讲透
mysql·架构·nosql
2601_9623004713 小时前
基于Python与Tkinter的ADB Monkey自动化测试脚本开发
python·adb·tkinter·android测试·gui自动化
jyOverQ14 小时前
MySQL 事务到底是什么?ACID 四大特性与隔离级别怎么理解?
数据库·mysql
IT大白鼠16 小时前
MySQL 分布式集群系列 · 第八篇(收官)——NDB 集群面试高频题 +架构总结与未来演进
分布式·mysql·面试
IT大白鼠16 小时前
MySQL 分布式集群系列 · 第七篇——生产调优实战:NDB 性能、内存、高可用全方位优化
数据库·分布式·mysql