MySQL5.6.30升级到8.0.33

本文档详细介绍了从MySQL 5.6.30逐步升级到8.0.33的步骤,包括升级路线、环境准备和每个阶段的具体操作。首先,说明了必须从5.7 GA版本升级到8.0,并且不支持跳过版本升级。接着,分别阐述了从5.6.30升级到5.7.30,再从5.7.30升级到8.0.33的过程。
摘要由CSDN通过智能技术生成

升级路线

1、支持从 MySQL 5.7 升级到 8.0。但是,仅在通用 (GA) 版本之间支持升级。对于 MySQL 8.0,需要从 MySQL 5.7 GA 版本(5.7.9 或更高版本)升级。不支持从 MySQL 5.7 的非 GA 版本升级。
2、建议在升级到下一个版本之前升级到最新版本。例如,在升级到 MySQL 8.0 之前升级到最新的 MySQL 5.7 版本。
3、不推荐:不支持跳过版本的升级(in-place),例如:不支持直接从 MySQL 5.6 升级到 8.0

环境准备

1、下载安装包
[root@mysql56 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz
[root@mysql56 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
[root@mysql56 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
[root@mysql56 ~]# ll -h mysql*
-rw-r--r--. 1 root root 301M Mar  3  2016 mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz
-rw-r--r--. 1 root root 630M Mar 24  2020 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
-rw-r--r--. 1 root root 587M Mar 17 15:46 mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz

2、关闭防火墙
[root@mysql56 ~]# systemctl stop firewalld.service 
[root@mysql56 ~]# systemctl disable firewalld.service

3、安装依赖包libaio
[root@mysql56 ~]# rpm -qa libaio
libaio-0.3.109-13.el7.x86_64

安装MySQL5.6.30

1、创建mysql用户
[root@mysql56 ~]# groupadd mysql
[root@mysql56 ~]# useradd -r -g mysql -s /bin/false mysql
[root@mysql56 ~]# id mysql
uid=998(mysql) gid=1000(mysql) groups=1000(mysql)

2、解压缩
[root@mysql56 ~]# tar -zxf mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
[root@mysql56 ~]# tar -zxf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@mysql56 ~]# tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz -C /usr/local

3、创建软链接
[root@mysql56 ~]# ln -s /usr/local/mysql-5.6.30-linux-glibc2.5-x86_64/ /usr/local/mysql
[root@mysql56 ~]# ll -h /usr/local/

4、创建数据目录
[root@mysql56 ~]# mkdir -p /data/mysql/3306/data
[root@mysql56 ~]# chown -R mysql:mysql /data/mysql/3306/data

5、创建配置文件
[root@mysql56 ~]# vim /etc/my.cnf

[client]
port=3306
default-character-set=utf8
socket=/data/mysql/3306/data/mysql.sock

[mysql]
prompt="\\u@\\h [\\d]> "
default-character-set=utf8

[mysqld]
character-set-server=utf8
basedir=/usr/local/mysql
datadir=/data/mysql/3306/data
user=mysql
port=3306
server-id=3306
pid-file=/data/mysql/3306/data/mysql.pid
socket=/data/mysql/3306/data/mysql.sock
log-error=/data/mysql/3306/data/mysql.err
log-bin=mysql-bin
lower_case_table_names=1

6、初始化,5.6初始化使用的是mysql_install_db,它是一个Perl脚本,需要安装perl依赖包
[root@mysql56 ~]# yum install perl* -y
[root@mysql56 ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data
Installing MySQL system tables...2023-08-19 08:01:30 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2023-08-19 08:01:30 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.30-log) starting as process 12786 ...
OK

Filling help tables...2023-08-19 08:01:32 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2023-08-19 08:01:32 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.30-log) starting as process 12809 ...
OK

7、启动数据库
[root@mysql56 ~]# /usr/local/mysql/bin/mysqld_safe &
[1] 12995
[root@mysql56 ~]# 230819 08:08:52 mysqld_safe Logging to '/data/mysql/3306/data/mysql.err'.
230819 08:08:52 mysqld_safe Starting mysqld daemon with databases from /data/mysql/3306/data

8、查看进程
[root@mysql56 ~]# ps -ef | grep mysql
root      12995   1595  0 08:08 pts/2    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe
mysql     13196  12995  1 08:08 pts/2    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/localmysql --datadir=/data/mysql/3306/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/3306/data/mysql.err --pid-file=/data/mysql/3306/data/mysql.pid --socket=/data/mysql/3306/data/mysql.sock --port=3306
root      13219   1595  0 08:09 pts/2    00:00:00 grep --color=auto mysql

9、添加环境变量
[root@mysql56 ~]# vim .bash_profile
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
[root@mysql56 ~]# source .bash_profile 

10、登录数据库,5.6初始化默认没有密码
[
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值