离线安装mysql5.7(shell脚本自动安装2022-02-06更新)
2022/2/7 2:13:07
本文主要是介绍离线安装mysql5.7(shell脚本自动安装2022-02-06更新),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
背景:有时候自己搭建集群或者测试MySQL的时候,需要经常安装MySQL,之前写过离线的安装文档,但还是感觉不太方便,每次都会花费很长时间,现在改成shell脚本自动安装MySQL,直接配置好新密码和远程访问,整个过程只需要几分钟就搞定
MySQL的相关依赖包:
百度网盘中也上传了安装包,可以直接提取 2022-02-06添加
链接:https://pan.baidu.com/s/1XhrxmldLGrW9xCVRYlrUEA?pwd=ye4f
提取码:ye4f
这些是MySQL的相关依赖包
shell脚本介绍:
1.建立临时文件夹
2.解压zip文件
3.删除centos7自带的MySQL
4.按顺序安装MySQL相关的依赖包
5.修改MySQL的密码(自己用的话可以设置简单的密码,生产上用建议用复杂密码)
6.配置MySQL可以被远程访问(实际开发中也是,有些机器需要有访问这个机器MySQL的权限)
#!/bin/bash #第一步、创建一个临时的文件夹 mkdir mysql_soft #第二步、把新上传的MySQL的安装包移动到mysql_soft下 mv mysql57.zip mysql_soft #进入到mysql_soft目录下,开始执行下面的操作 cd mysql_soft #解压MySQL的安装包,在当前目录下 unzip mysql57.zip #查看集群上现有的MySQL,需要删除掉 mysql_old=`rpm -qa | grep mariadb` echo -e "当前centos中MySQL版本是: ${mysql_old}" #删除自带的MySQL rpm -e --nodeps ${mysql_old} #验证旧版本的MySQL是否被删除掉 mysql_validate=`rpm -qa | grep mariadb` echo -e "验证旧版的MySQL是否被删除干净: ${mysql_validate}" #开始安装MySQL,注意:这些包安装是有顺序的 rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm #判断安装的过程是否成功 if [ $? == 0 ];then echo -e "安装------libaio-0.3.109-13.el7.x86_64.rpm -- 第1个包------- 成功" else echo -e "安装------libaio-0.3.109-13.el7.x86_64.rpm -- 第1个包------- 失败" fi #第二个包 rpm -ivh perl-Data-Dumper-2.145-3.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------perl-Data-Dumper-2.145-3.el7.x86_64.rpm -- 第2个包------- 成功" else echo -e "安装------perl-Data-Dumper-2.145-3.el7.x86_64.rpm -- 第2个包------- 失败" fi #第三个包:安装rpm -ivh numactl* 这是安装以前缀numactl开始的所有安装包 rpm -ivh numactl* if [ $? == 0 ];then echo -e "安装------numactl* -- 第3个包------- 成功" else echo -e "安装------numactl* -- 第3个包------- 失败" fi #第四个包:解压mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar tar -xf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar if [ $? == 0 ];then echo -e "解压------mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar ------- 成功" else echo -e "解压------mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar ------- 失败" fi #第四个包:安装 mysql-community-common-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------mysql-community-common-5.7.26-1.el7.x86_64.rpm -- 第4个包------- 成功" else echo -e "安装------mysql-community-common-5.7.26-1.el7.x86_64.rpm -- 第4个包------- 失败" fi #第五个包:安装mysql-community-libs-* rpm -ivh mysql-community-libs-* if [ $? == 0 ];then echo -e "安装------mysql-community-libs-* -- 第5个包------- 成功" else echo -e "安装------mysql-community-libs-* -- 第5个包------- 失败" fi #第六个包:安装mysql-community-devel-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-devel-5.7.26-1.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------mysql-community-devel-5.7.26-1.el7.x86_64.rpm -- 第6个包------- 成功" else echo -e "安装------mysql-community-devel-5.7.26-1.el7.x86_64.rpm -- 第6个包------- 失败" fi #第七个包:安装net-tools-2.0-0.25.20131004git.el7.x86_64.rpm rpm -ivh net-tools-2.0-0.25.20131004git.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------net-tools-2.0-0.25.20131004git.el7.x86_64.rpm -- 第7个包------- 成功" else echo -e "安装------net-tools-2.0-0.25.20131004git.el7.x86_64.rpm -- 第7个包------- 失败" fi #第八个包:安装mysql-community-client-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------mysql-community-client-5.7.26-1.el7.x86_64.rpm -- 第8个包------- 成功" else echo -e "安装------mysql-community-client-5.7.26-1.el7.x86_64.rpm -- 第8个包------- 失败" fi #第九个包:安装mysql-community-server-5.7.26-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm if [ $? == 0 ];then echo -e "安装------mysql-community-server-5.7.26-1.el7.x86_64.rpm -- 第9个包------- 成功" else echo -e "安装------mysql-community-server-5.7.26-1.el7.x86_64.rpm -- 第9个包------- 失败" fi #启动MySQL service mysqld start #验证是否启动成功可以查看MySQL的启动状态 service mysqld status >start.log #查看MySQL的初始密码,把携带密码信息加载到下面这个文件中 grep 'temporary password' /var/log/mysqld.log >result.txt #读取文件中的密码,用于登录MySQL password_mysql=`cat result.txt | grep 'localhost' | awk -F ': ' '{print $2}'` echo -e "查看MySQL的原始密码是啥? ${password_mysql}" #连接MySQL的几个参数 hostname="localhost" #hostname="192.168.15.12" username="root" port="3306" #进入MySQL的交互模式,修改相应的参数,设置简单的密码为123456,为了以后自己用方便,实际上生产的密码都比较复杂一些 #mysql -h${hostname} -u${username} -P${port} -p${password_mysql} <<EOF mysql -u${username} -p${password_mysql} --connect-expired-password <<EOF set global validate_password_policy=0; set global validate_password_length=1; alter user 'root'@'localhost' identified by '123456'; quit EOF new_password="123456" #这里是配置远程访问策略 mysql -h${hostname} -u${username} -P${port} -p${new_password} <<EOF GRANT ALL PRIVILEGES ON *.*TO 'root'@'%' IDENTIFIED BY '123456'; flush privileges; quit EOF
这篇关于离线安装mysql5.7(shell脚本自动安装2022-02-06更新)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南
- 2024-10-23BinLog入门:新手必读的MySQL二进制日志指南
- 2024-10-23Binlog入门:MySQL数据库的日志管理指南