Linux(Centos7)升级MySQL 5.7到8.0.31
一、下载MySQL安装包
下载地址:https://downloads.mysql.com/archives/community/
二、备份
mkdir /home/mysqlback
mysqldump -u root -p --all-databases > /home/mysqlback/mysqldback.sql
三、卸载MySQL
注:卸载之前一定要先备份好数据库
1.检查当前系统是否安装过MySQL
rpm -qa | grep mysql
[root@VM-0-6-centos mysqlback]# rpm -qa |grep mysql
mysql-community-client-5.7.41-1.el7.x86_64
mysql-community-libs-5.7.41-1.el7.x86_64
mysql-community-server-5.7.41-1.el7.x86_64
mysql80-community-release-el7-3.noarch
mysql-community-common-5.7.41-1.el7.x86_64
2.停止MySQL服务
systemctl stop mysqld
3.删除相关应用
rpm -e --nodeps mysql-community-client-5.7.41-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-5.7.41-1.el7.x86_64
rpm -e --nodeps mysql-community-server-5.7.41-1.el7.x86_64
rpm -e --nodeps mysql80-community-release-el7-3.noarch
rpm -e --nodeps mysql-community-common-5.7.41-1.el7.x86_64
4.查看文件名中含有MySQL的文件
find / -name mysql
whereis mysql
若出现结果文件,则需根据rm -rf 路径删除相关文件
5.删除其他有关MySQL服务
#删除老版本mysql的所有文件和库
rm -rf /var/lib/mysql
#mysql的配置文件
rm -rf /etc/my.cnf
#如果不删除这个文件,则重新安装的Mysql将无法设置password
rm -rf /var/log/mysqld.log
四、解压MySQL安装包并安装
1.解压
mv mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar /usr/local/
tar -xvf mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar
解压完后:
[root@VM-0-6-centos local]# tar -xvf mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar
mysql-community-client-8.0.31-1.el7.x86_64.rpm
mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm
mysql-community-common-8.0.31-1.el7.x86_64.rpm
mysql-community-debuginfo-8.0.31-1.el7.x86_64.rpm
mysql-community-devel-8.0.31-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.31-1.el7.x86_64.rpm
mysql-community-icu-data-files-8.0.31-1.el7.x86_64.rpm
mysql-community-libs-8.0.31-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm
mysql-community-server-8.0.31-1.el7.x86_64.rpm
mysql-community-server-debug-8.0.31-1.el7.x86_64.rpm
mysql-community-test-8.0.31-1.el7.x86_64.rpm
2.安装
MySQL各安装包之间有依赖关系,所以安装顺序必须按照下列来
rpm -ivh mysql-community-common-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.31-1.el7.x86_64.rpm
以上为必须要安装的包,其余可选。
五、修改配置文件(/etc/my.cnf)(必做,否则一旦启动则有些配置不能再修改了)
# 设置导入sql时文件大小限制 否则有些表导入不进去
innodb_log_file_size=1024M
innodb_strict_mode=0
# 设置大小写不敏感
lower-case-table-names=1
完整的my.cnf如下:
[mysqld]
port = 3306
##密码过期时间,为0则为永不过期
#default_password_lifetime=0
#设置导入SQL时文件大小,否则有些达标导不进去
innodb_log_file_size=1024M
innodb_strict_mode=0
## 配置表明不区分大小写
lower_case_table_names=1
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
六、初始化MySQL
mysqld --initialize --console
添加MySQL用户及用户组权限
chown -R mysql:mysql /var/lib/mysql/
启动MySQL
systemctl start mysqld
也可设置MySQL自启动
设置开机自启动:systemctl enable mysqld
禁用开机自启动:systemctl disable mysqld
查看MySQL启动时的临时密码:
cat /var/log/mysqld.log | grep localhost
#或者
cat /var/log/mysqld.log | grep password
启动MySQL后,使用临时密码登录MySQL数据库
mysql -u root -p
登录MySQL后,必须先修改用户密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
开启远程访问
#选择数据库
use mysql;
#查看用户和可以访问数据库的ip地址
select host,user from user;
#修改权限,允许所有ip均可访问
update user set host = '%' where user ='root';
#刷新权限
FLUSH PRIVILEGES;
七、导入备份数据
source /home/mysqlback/mysqldback.sql
Linux(Centos7)升级MySQL 5.7到8.0.31的更多相关文章
- Linux - centos7 下 MySQL(mariadb) 和 主从复制
目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...
- [数据库/Linux]CentOS7安装MySQL Percona版(RPM方式)
OS: CentOS7 (x86_64) MySQL: MySQL Percona 5.7.31-34 0 前置条件 已配置完成YUM源 已卸载先前可能安装的MySQL rpm -qa | grep ...
- linux centos7下mysql安装--韩国庆
首先我先给大家介绍下MariaDB和mysql的区别. 上图,“MySQL之父”的骨灰级程序员Monty,但是mysql被Oracle收购后,Monty又开始去发展另一条数据库的道路,并且以Monty ...
- linux(Centos7)安装mysql
查看系统环境 [root@localhost html]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) CentOS 7 ...
- Linux(Centos7)下Mysql的安装
1.1 查看mysql的安装路径: [root@bogon ~]# whereis mysql mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysq ...
- linux centos7 开启 mysql 3306 端口 外网访问 的实践
第〇步:思路 3306 端口能否被外网访问,主要要考虑: (1)mysql的3306 端口是否开启?是否没有更改端口号? (2)mysql 是否允许3306 被外网访问? (3)linux 是否已经开 ...
- Linux Centos7中MySql安装
(1) 安装Mysql5.7: 执行命令:rpm -ivh http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-co ...
- linux centos7安装mysql
1.下载并安装官方的 yum repository (新建了mysql文件夹) wget -i -c http://dev.mysql.com/get/mysql57-community-releas ...
- linux(CentOS7) 之 MySQL 5.7.30 下载及安装
一.下载 1.百度搜索mysql,进入官网(或直接进入官网https://www.mysql.com) 2.选择 downloads 3.翻到最下面,选择MySQL Community (GPL) D ...
- Centos/Linux 下升级python2.7至3.5.0
(一) 安装Python3.5 (1)在安装python之前,因为linux系统下默认没有安装wget,gcc,首先安装wget,gcc: [root@node6 python_scripts]# y ...
随机推荐
- C#设计模式09——组合模式的写法
1. 什么是C#组合模式? 组合模式是一种结构型设计模式,它允许将对象组合成树形结构以表示"整体/部分"层次结构.使用此模式,客户端可以按相同的方式处理单个对象和对象集合,而不必关 ...
- 分享Go书籍-《Go Web编程》
大家好,我是沙漠尽头的狼. 最近几天在看一本Go的书籍,看了100来页,感觉不错,分享给大家. 书籍基本信息 书籍信息: 书名:Go Web编程 作 者:(新加坡)郑兆雄(Sau Sheong C ...
- AMBA总线介绍-01
AMBA总线介绍 AMBA总线概述 AHB APB 不同IP之间的互连 1.系统总线简介 系统芯片中各个模块之间需要有接口连接,使用总线作为子系统之间共享的通信链路 优点:成本低,方便易用(通用协议, ...
- [转帖]资料整理——Oracle版本历史(很全面)(Releases and versions of Oracle Database)
资料来源: https://en.wikipedia.org/wiki/Oracle_Database Oracle Database Version Initial Release Version ...
- [转帖]1. awk基础,awk介绍,awk基本语法,直接使用action,打印列,初识列和行,\$0、\$NF、NF,基础示例,begin模式,end模式
文章目录 前言 awk介绍 awk基本语法 直接使用action 打印列 初识列和行 \$0.\$NF.NF 基础示例 初识模式(begin end) 总结 友情链接 前言 本小节是awk基础入门课程 ...
- [转帖]tiup cluster restart
https://docs.pingcap.com/zh/tidb/stable/tiup-component-cluster-restart 注意 重启过程中会有一段时间服务不可用. 语法 tiu ...
- [转帖]基于 Skywalking 部署应用性能监控
https://www.jianshu.com/p/50627b9ab0be 今天我们就着重讲一讲如何基于 Skywalking 来快速搭建一套应用性能监控平台 walkingfunny.com. ...
- [转帖]Traefik中诡异的502和504问题
https://zhuanlan.zhihu.com/p/156138704 我们都知道在 Kubernetes 集群中通常会使用 Ingress 方案来统一代理集群内部的流量,而常用的 Ingres ...
- Oracle12c(未更新任何补丁) 使用compression=all 参数导出之后导入失败
1. 最近使用Oracle12c 进行相关的测试工作, 平台linux 和 windows 都有一个问题 备份恢复使用的 compression=all 时导入数据库不管是oracle12c还是 or ...
- Linux上面批量更新SQLSERVER SQL文本文件的办法
1. 今天同事让帮忙更新几个SQL文件.. 本着自己虽然low 但是不能太low的想法, 简单写一个 shell 脚本来执行. 2. 因为我的linux 里面都安装了 sqlcmd 的工具 所以办法就 ...