【MySQL8入门到精通】基础篇- Linux系统静默安装MySQL,跨版本升级

117 篇文章 0 订阅
110 篇文章 1 订阅

???
哈喽!大家好,我是【】,江湖人称jeames007,10年DBA工作经验
一位上进心十足的【大数据领域博主】!???
中国DBA联盟(ACDU)成员,目前从事DBA及程序编程
擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
如果有对【数据库】感兴趣的【小可爱】,欢迎关注【】???
感谢各位大可爱小可爱!

文章目录

前言

最近客户的数据要做升级,从5.7的版本升级到8.0,本文详细的概述了全过程


1.环境确认

1.1 操作系统

[root@jeames ~]# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.1 (Ootpa)

1.2 防火墻

[root@jeames ~]# systemctl status firewalld

在这里插入图片描述

??? 关闭防火墙
systemctl stop firewalld
??? 取消开机自启动
[root@jeames ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

1.3 selinux关闭

[root@jeames ~]# more /etc/sysconfig/selinux
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
???重启机器即可
[root@jeames ~]# sestatus
SELinux status: disabled
[root@jeames ~]# getenforce
Disabled

2.MySQL二进制包下载

官网:https://dev.mysql.com/downloads/mysql/

在这里插入图片描述
??? 安装包

mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

3.安装MySQL 5.7

3.1 安装包解压

[root@jeames ~]# mkdir /soft
#二进制包解压
[root@jeames ~]# mkdir -p /usr/local/mysqlsoft
[root@jeames ~]# cd /soft/
tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysqlsoft
tar -Jxf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz -C /usr/local/mysqlsoft
#快捷方式创建
[root@jeames ~]# mkdir -p /usr/local/mysql57
[root@jeames ~]# mkdir -p /usr/local/mysql80

3.2 创建用户组

groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql /usr/local/mysqlsoft
[root@jeames soft]# passwd mysql

3.3.本地yum安装依赖

# 创建挂载路径
mkdir -p /mnt/cdrom

# 挂载系统镜像光盘到指定目录
mount -t iso9660 /dev/sr0 /mnt/cdrom

cd /etc/yum.repos.d

# 修改yum源配置文件
vi rhel8-local.repo
[localREPO]
name=localhost8
baseurl=file:///mnt/cdrom/BaseOS
enable=1
gpgcheck=0

[localREPO_APP]
name=localhost8_app
baseurl=file:///mnt/cdrom/AppStream
enable=1
gpgcheck=0

##安装依赖包
yum install libaio
yum -y install perl perl-devel
yum install libncurses*
yum -y install autoconf
yum -y install numactl.x86_64

3.4 初始化(5.7版本)

chown -R mysql.mysql /usr/local/mysql50
##静默安装
/usr/local/mysql57/mysql5730/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql57/mysql5730 --datadir=/usr/local/mysql57/mysql5730/data
##配环境变量
echo “export PATH=$PATH:/usr/local/mysql57/mysql5730/bin” >> /root/.bashrc
source /root/.bashrc

3.5 启动数据库

??? mysqld_safe &
在这里插入图片描述??? 新增用户及修改密码

mysql> select user,host,authentication_string from mysql.user;
##新增远程用户
mysql> grant all on . to root@‘%’ identified by ‘root’ with grant option;
mysql> flush privileges;
##修改本地密码
set password for root@‘localhost’=password(‘root’);
mysql> flush privileges;

4.模拟数据,准备升级

mysql> show variables like ‘innodb_fast_shutdown%’;
±---------------------±------+
| Variable_name | Value |
±---------------------±------+
| innodb_fast_shutdown | 1 |
±---------------------±------+
1 row in set (0.01 sec)
内存数据全部落盘
mysql> set global innodb_fast_shutdown=0;
mysql> create database jeames;
Query OK, 1 row affected (0.00 sec)
#关闭Mysql
mysqladmin -uroot -proot shutdown

5.MySQL 5.0升级8.0

5.1 安装MySQL8.0.19

chown -R mysql.mysql /usr/local/mysql80
##静默安装MySQL
/usr/local/mysql80/mysql8019/bin/mysqld --initialize-insecure --user=mysql
–basedir=/usr/local/mysql80/mysql8019 --datadir=/usr/local/mysql80/mysql8019/data

5.2 修改mysql8配置文件

??? 指向5.7的数据文件及错误日志路径
vi /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql80/mysql8019
datadir=/usr/local/mysql57/mysql5730/data
port=3306
log-error=/usr/local/mysql57/mysql5730/data/log.err
server_id=80193306
log-bin
default_authentication_plugin=mysql_native_password
character_set_server=utf8mb4

5.3 启动Mysq8019

cd /usr/local/mysql80/mysql8019/bin
mysqld_safe &
##输入密码为:5.7版本的密码(root)
在这里插入图片描述
echo “export PATH=$PATH:/usr/local/mysql80/mysql8019/bin” >> /root/.bashrc
source /root/.bashrc
??? 此处记得要删除原来的环境变量

6.MySQL卸载

yum remove -y mysql --nodeps
yum remove -y mysql-community-* --nodeps
rpm -qa|grep mysql|xargs rpm -e --nodeps
rpm -qa | grep mysql
rpm -e mysql-community-embedded-devel-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-libs-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-embedded-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-embedded-compat-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-common-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-devel-5.7.30-1.el7.x86_64 --nodeps
rpm -e mysql-community-libs-compat-5.7.30-1.el7.x86_64 --nodeps
rm -rf /var/lib/mysql
rm -rf /var/log/mysqld.log
rm -rf /usr/lib/mysql
rm -rf /usr/include/mysql
rm -rf /etc/my.cnf
rm -rf /run/lock/subsys/mysql
find / -iname mysql

大家点赞、收藏、关注、评论啦 ???微信公众号???

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是mysql-8.0.32-linux-glibc2.17-aarch64.tar的离线安装步骤: 1. 首先下载mysql-8.0.32-linux-glibc2.17-aarch64.tar文件,并将其上传到CentOS-7-aarch64-Everything-2009系统上的某个目录。 2. 解压mysql-8.0.32-linux-glibc2.17-aarch64.tar文件,可以使用以下命令: ``` tar -xvf mysql-8.0.32-linux-glibc2.17-aarch64.tar ``` 3. 将解压后的mysql-8.0.32-linux-glibc2.17-aarch64目录移动到/usr/local目录下,可以使用以下命令: ``` mv mysql-8.0.32-linux-glibc2.17-aarch64 /usr/local/ ``` 4. 进入mysql-8.0.32-linux-glibc2.17-aarch64目录,并创建my.cnf文件。可以使用以下命令: ``` cd /usr/local/mysql-8.0.32-linux-glibc2.17-aarch64 cp support-files/my-default.cnf /etc/my.cnf ``` 5. 创建一个mysql用户和组,并设置mysql数据目录的权限。可以使用以下命令: ``` groupadd mysql useradd -r -g mysql -s /bin/false mysql mkdir /usr/local/mysql-8.0.32-linux-glibc2.17-aarch64/data chown -R mysql:mysql /usr/local/mysql-8.0.32-linux-glibc2.17-aarch64/data ``` 6. 初始化mysql数据库,可以使用以下命令: ``` bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.32-linux-glibc2.17-aarch64 --datadir=/usr/local/mysql-8.0.32-linux-glibc2.17-aarch64/data ``` 7. 启动mysql服务,可以使用以下命令: ``` bin/mysqld_safe --user=mysql & ``` 8. 设置mysql管理员密码,可以使用以下命令: ``` bin/mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; ``` 9. 配置mysql服务开机启动。可以使用以下命令: ``` cp support-files/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql chkconfig --add mysql chkconfig mysql on ``` 10. 至此,mysql-8.0.32-linux-glibc2.17-aarch64.tar的离线安装已经完成。可以使用以下命令验证mysql是否安装成功: ``` bin/mysql -u root -p SHOW DATABASES; ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值