一、下载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的更多相关文章

  1. Linux - centos7 下 MySQL(mariadb) 和 主从复制

    目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...

  2. [数据库/Linux]CentOS7安装MySQL Percona版(RPM方式)

    OS: CentOS7 (x86_64) MySQL: MySQL Percona 5.7.31-34 0 前置条件 已配置完成YUM源 已卸载先前可能安装的MySQL rpm -qa | grep ...

  3. linux centos7下mysql安装--韩国庆

    首先我先给大家介绍下MariaDB和mysql的区别. 上图,“MySQL之父”的骨灰级程序员Monty,但是mysql被Oracle收购后,Monty又开始去发展另一条数据库的道路,并且以Monty ...

  4. linux(Centos7)安装mysql

    查看系统环境 [root@localhost html]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) CentOS 7 ...

  5. Linux(Centos7)下Mysql的安装

    1.1 查看mysql的安装路径: [root@bogon ~]# whereis mysql mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysq ...

  6. linux centos7 开启 mysql 3306 端口 外网访问 的实践

    第〇步:思路 3306 端口能否被外网访问,主要要考虑: (1)mysql的3306 端口是否开启?是否没有更改端口号? (2)mysql 是否允许3306 被外网访问? (3)linux 是否已经开 ...

  7. Linux Centos7中MySql安装

    (1)     安装Mysql5.7: 执行命令:rpm -ivh http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-co ...

  8. linux centos7安装mysql

    1.下载并安装官方的 yum repository (新建了mysql文件夹) wget -i -c http://dev.mysql.com/get/mysql57-community-releas ...

  9. linux(CentOS7) 之 MySQL 5.7.30 下载及安装

    一.下载 1.百度搜索mysql,进入官网(或直接进入官网https://www.mysql.com) 2.选择 downloads 3.翻到最下面,选择MySQL Community (GPL) D ...

  10. Centos/Linux 下升级python2.7至3.5.0

    (一) 安装Python3.5 (1)在安装python之前,因为linux系统下默认没有安装wget,gcc,首先安装wget,gcc: [root@node6 python_scripts]# y ...

随机推荐

  1. Windows 平台 UTF-8 编码转换为本机编码

    std::string from_utf8(const std::string& src) { int n = MultiByteToWideChar(CP_UTF8, 0, src.c_st ...

  2. Angular系列教程之路由守卫

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...

  3. 【BUS】动画图解嵌入式常见的通讯协议:SPI、I²C、UART、红外 ......

    SPI传输 SPI数据传输 SPI数据传输 SPI时序信号 I2C传输 2C总线寻址 UART传输 PC-UART-MCU RS-232电平转换 红外控制 红外通信 红外信号接收.放大.整形 红外控制 ...

  4. 【面试题精讲】MySQL中覆盖索引是什么

    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 系列文章地址 在MySQL中,覆盖索引是一种特殊类型的索引,它 ...

  5. 阿里云IPV6 创建虚拟机的过程

    阿里云IPV6 创建虚拟机的过程 背景 IPV6 已经越来越广泛的应用. 想在外网开通一下IPV6,发现还有一些坑. 这里总结一下. 备忘. 开通方式 1. 登录阿里云的控制台, 打开云服务器ECS的 ...

  6. Python学习之十二_tkinter的学习与使用

    Python学习之十二_tkinter的学习与使用 摘要 本来想说会用QT5进行界面编程 但是发现比较繁琐 还是先学习使用 tkinter的方式进行界面化的编写和学习了 基础知识 tkinter是一个 ...

  7. [转帖]Prometheus Shell Exporter

    Shell Exporter can execute Powershell or Bash scripts and transform its output to Prometheus metrics ...

  8. [转帖]JVM性能提升50%,聊一聊背后的秘密武器Alibaba Dragonwell

    https://zhuanlan.zhihu.com/p/453437019 今年四月五日,阿里云开放了新一代ECS实例的邀测[1],Alibaba Dragonwell也在新ECS上进行了极致的优化 ...

  9. [转帖]Jmeter之界面语言设置

    https://developer.aliyun.com/article/1173114#:~:text=%E6%B0%B8%E4%B9%85%E6%80%A7%E8%AE%BE%E7%BD%AE%E ...

  10. [转帖]docker容器自动重启,看完这篇彻底明白了

    一. JVM内存区域的划分 1.1  java虚拟机运行时数据区 java虚拟机运行时数据区分布图: JVM栈(Java Virtual Machine Stacks): Java中一个线程就会相应有 ...