MySQL数据库安装、更新

该文详细介绍了在CentOS7系统上安装和升级MySQL5.7的步骤,包括创建目录、上传安装包、解压、安装、配置启动参数、启动服务以及如何进行无数据丢失的快速升级。同时,文章提供了一个自动更新数据库的脚本,确保在不改变数据文件的情况下进行版本升级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、环境&安装包

1.环境

  • CentOS 7.9.x
  • MySQL5.7x

2.安装包

自动化安装包: mysql-anzhuang-v38.tar.gz【点击下载】

官方网站下载: https://downloads.mysql.com/archives/community/【点击访问】

二、安装

1.创建脚本必须路径

[root@localhost ~]# mkdir /srv/{program,soft}       #创建program、soft目录
[root@localhost ~]# ls /srv/                        #查看/srv目录内容
program  soft
[root@localhost ~]# cd /srv/soft                    #进入/srv/soft目录

2.上传、解压tar包

[root@localhost ~]# cd /srv/soft

在这里插入图片描述

[root@localhost soft]# ls
jdk-11.0.9_linux-x64_bin.tar.gz  jdk1.8.0_181.tar.gz  jenkins-2.375.2-1.1.noarch.rpm  jenkins-io.tar  jenkins-plugin.tar.gz  mysql-anzhuang-v38.tar.gz  pgsqlanzhuang-10.20.tar.gz  sonarqube-9.3.0.51899.zip
[root@localhost soft]# du -h mysql-anzhuang-v38.tar.gz          #查看tar包大小
2.4G    mysql-anzhuang-v38.tar.gz
[root@localhost soft]# tar -xvf mysql-anzhuang-v38.tar.gz       #解压tar包

在这里插入图片描述

3.安装

[root@localhost ~]# yum remove libnuma.so.1
[root@localhost ~]# yum -y install numactl.x86_64
[root@localhost ~]# yum -y install libaio
[root@localhost ~]# cd /srv/soft/mysql-anzhuang
[root@localhost mysql-anzhuang]# ./mysql-anzhang.sh                         #执行安装脚本
[root@localhost mysql-anzhuang]# ls /srv/program/mysql-3307/mysql-5.7/      #查看安装路径

依赖环境:
1.如果已经安装了libnuma.so.1,先yum remove libnuma.so.1
2.yum -y install numactl.x86_64
3.yum -y install libaio

在这里插入图片描述
在这里插入图片描述

4.启动

[root@localhost mysql-anzhuang]# cd /srv/program/mysql-3307/mysql-5.7/      #进入安装路径
[root@localhost mysql-5.7]# vim my3307.cnf                                  #修改配置文件
...
innodb_buffer_pool_size = 10000M
...
:wq                             #退出并保存
[root@localhost mysql-5.7]# ./startup.sh

在这里插入图片描述

可以使用free -h查看当最后一列 available数值,即innodb_buffer_pool_size = [available x 0.7]M

在这里插入图片描述

5.查看进程

[root@localhost mysql-5.7]# netstat -ntlupa |grep mysql     #查看Mysql端口
[root@localhost mysql-5.7]# ps -ef |grep mysql              #查看Mysql进程

在这里插入图片描述

三、更新

1.下载最新安装包

访问:mysql官网

在这里插入图片描述
在这里插入图片描述

2.使用更新数据库

[root@localhost soft]# vim MySQLupdate.sh
#!/bin/bash
#===========================================================================
#           FileName: MySQL-Update
#
#           Author  : WangXinKun
#
#           Created : 17:53,03/03/2022
#===========================================================================
#不改变数据文件,升级速度快;但,不可以跨操作系统,不可以跨大版本(5.5—>5.7)
#注:升级不同版本替换二进制包即可
SysBase=`pwd`
 
read -p "Please input mysql port: " port
read -p "Please input package name: " package
 
echo "停止数据库..."
cd /srv/program/mysql-${port}/mysql-5.7
./bin/mysqladmin -S ./mysql.sock -uroot  shutdown >/dev/null 2>&1
 
sleep 10
 
echo "备份..."
cd .. && mv mysql-5.7 mysql-5.7_bak
 
echo "替换二进制包..."
cd /srv/soft/ && tar -xf   $package
 
mysql_path=`echo $package | awk -F "." '{print $1"."$2"."$3}'`
mv $mysql_path mysql-5.7 && mv mysql-5.7   /srv/program/mysql-${port}/
 
echo "替换配置文件..."
cd /srv/program/mysql-${port}/mysql-5.7 # && rm -rf startup.sh shutdown.sh my7777.cnf
cp ../mysql-5.7_bak/{startup.sh,shutdown.sh,my${port}.cnf} .
 
echo "赋予权限..."
chown -R mysql.root /srv/program/mysql-${port}/mysql-5.7
 
echo "启动数据库..."
sed -i '/myisam_repair_threads/d' my${port}.cnf
./startup.sh
 
echo "数据库检查..."
./bin/mysqld_safe --defaults-file=/srv/program/mysql-${port}/mysql-5.7/my${port}.cnf & >/dev/null 2>&1 && sleep 10
./bin/mysql_upgrade -S ./mysql.sock  &&
 
echo "升级成功,当前数据库版本:"
./bin/mysql -S ./mysql.sock -P${port}  -uroot  -e"select version();"
 
 
rm -rf /srv/soft/mysql-anzhuang
rm -rf ${SysBase}/MySQLupdate.sh
:wq     #保存退出
[root@localhost soft]# chmod +x MySQLupdate.sh                          #赋予脚本执行权限
[root@localhost soft]# ./MySQLupdate.sh                                 #执行脚本
Please input mysql port: 3307                                           #mysql端口号
Please input package name: mysql-5.7.40-el7-x86_64.tar.gz               #更新包

在这里插入图片描述

可以看到途中提示”This installation of MySQL is already upgraded to 5.7.40, use --force if you still need to run mysql_upgrade“
翻译:MySQL的安装已经升级到5.7.40,如果您仍然需要运行MySQL_upgrade,请使用–force

四、结束语

  本次MySQL安装、升级就结束了,感谢认真读完,如果觉得还可以,那么给作者点赞、收藏、关注吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cs阿坤dn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值