shell脚本实战:linux系统初始化和mysql8.0编译安装

2023-11-02

linux系统初始化脚本

#!/bin/bash
#version v1
#author: xingdian
cat <<-eof
===========================
=    a:关闭防火墙         =
=    b:关闭selinux        =
=    c:网络连通性检测     =
=    d:配置yum仓库        =
=    q:退出               =
===========================
eof
read -p "请输入你内容:" var
case $var in
a)
	systemctl stop firewalld && systemctl disable firewalld
	if [ $? -eq 0 ];then
		echo "firewalld is disabled"
	else
		echo "firewalld is not disabled"
		exit
	fi
;;
b)
	sed -i '/^SELINUX=/c SELINUX=disabled' /etc/selinux/config
	setenforce 0
;;
c)
	ping -c1 www.baidu.com &>/dev/null
	if [ $? -eq 0 ];then
		echo "network is successful"
	else
		echo "network is not successful"
	fi
;;
d)
	rm -rf /etc/yum.repos.d/*
	curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo &>/dev/null
#	curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo &>/dev/null
	wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo &>/dev/null
	if [ $? -eq 0 ];then
		echo "yum is successful"
	else
		yum -y install wget &>/dev/null
		wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo &>/dev/null
	fi
;;
q)
	exit
;;
*)
	echo "请输入正确的参数,参考上面的提示!"
esac

mysql8.0编译安装

#!/bin/bash
#xingdian
mem_all(){
	all=`free -m | awk NR==2'{print $2}'`
	if [ $all -ge 2048 ];then
		echo "mem is ok!"
	else
		echo "mem is low!"

		exit
	fi
}

ping_baidu(){
	ping -c1 www.baidu.com &>/dev/null
	if [ $? -eq 0 ];then
		echo " network is successful!"
	else
		echo " network is dead!"
		exit
	fi
}
yum_repo(){
	rm -rf /etc/yum.repos.d/*
	curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
	curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
	yum clean all &>/dev/null
	yum makecache fast &>/dev/null
	yum repolist &>/dev/null
	if [ $? -eq 0 ];then
		echo "yum is successful"
	else
		echo "yum is dead"
		exit
	fi
}
yum_env(){
	yum install -y wget libaio-devel libaio ncurses-devel ncurses readline-devel.x86_64 readline.x86_64 openssl openssl-devel make &>/dev/null
	yum  -y install centos-release-scl &>/dev/null
	yum -y install devtoolset-10-gcc devtoolset-10-gcc-c++ devtoolset-10-binutils &>/dev/null

}
cmake_safe(){
#	wget https://github.com/Kitware/CMake/releases/download/v3.23.0-rc4/cmake-3.23.0-rc4-linux-x86_64.sh
	if [ -f cmake-3.23.0-rc4-linux-x86_64.sh ];then
		chmod a+x cmake-3.23.0-rc4-linux-x86_64.sh
		bash cmake-3.23.0-rc4-linux-x86_64.sh --prefix=/usr/local
		echo "export PATH=$PATH:/usr/local/cmake-3.23.0-rc4-linux-x86_64/bin" >>/etc/profile
		source /etc/profile
	else
		echo "cmake file is not found"
		exit
	fi
}
mysql80(){
#	wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-8.0.28.tar.gz
	if [ -f mysql-boost-8.0.28.tar.gz ];then
		tar xf mysql-boost-8.0.28.tar.gz
		cd mysql-8.0.28
		cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql8 -DWITH_BOOST=./boost/ -DFORCE_INSOURCE_BUILD=1 -DMYSQL_TCP_PORT=3306 -DMYSQL_DATADIR=/usr/local/mysql8/data
		make -j 8
		if [ $? -eq 0 ];then
			make install
		else
			exit
		fi
	else
		echo "mysql file is not found"
		exit
	fi
}


mem_all
ping_baidu
yum_repo
yum_env
cmake_safe
mysql80

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell脚本实战:linux系统初始化和mysql8.0编译安装 的相关文章

随机推荐

  • 未名湖边的烦恼 蓝桥杯

    问题描述 每年冬天 北大未名湖上都是滑冰的好地方 北大体育组准备了许多冰鞋 可是人太多了 每天下午收工后 常常一双冰鞋都不剩 每天早上 租鞋窗口都会排起长龙 假设有还鞋的m个 有需要租鞋的n个 现在的问题是 这些人有多少种排法 可以避免出现
  • 前端配置跨域代理

    跨域时对于前后端开发中一个非常常见的问题 当我们客户端向我们的服务器请求接口数据的时候 我们可以请求到服务器当中的数据 但是我们把数据返回我们的客户端的时候就会产生跨域问题 所以 跨域是针对我们浏览器设置一个安全策略 就是当我们的协议 域名
  • Handler processing failed; nested exception is java.lang.NoClassDefFoundError

    在使用阿里云发送短信接口时出现此错误 原因是springmvcjar包和阿里云jar包出现冲突 建议使用下面两个版本
  • 【工具】VirtualBox虚拟机安装Windows操作系统

    前面的文章中介绍了VirtualBox虚拟机的安装 VirtualBox虚拟机中如何安装操作系统 是本文的重点 下面将进行详细介绍 使用VirtualBox虚拟机安装Windows操作系统有很多好处 主要包括以下几点 节省资源 通过虚拟化技
  • Spring Boot将声明日志步骤抽离出来做一个复用类

    上文Spring Boot日志基础使用 设置日志级别中我们写了个比较基本的日志操作 但也随之产生了一个问题 我们这行代码 能不能不写 具体说 我们不希望每个需要日志的类都声明一个在这 看着太不美观了 我们最简单方法当然是继承 我们找个目录创
  • 论python自动化测试(3)- 自动化框架及工具

    python自动化测试 3 自动化框架及工具 1 概述 手续的关于测试的方法论 都是建立在之前的文章里面提到的观点 功能测试不建议做自动化 接口测试性价比最高 接口测试可以做自动化 后面所谈到的 测试自动化 也将围绕着 接口自动化 来介绍
  • Linux Common Comment in Practices

    Linux中的命令的确是非常多 但是我们只需要掌握我们最常用的命令就可以了 当然你也可以在使用时去找一下man 他会帮你解决不少的问题 然而每个人玩Linux的目的都不同 所以他们常用的命令也就差异非常大 因为不想在使用是总是东查西找 所以
  • 网络安全等级保护合规一览

    公众号关注 WeiyiGeek 将我设为 特别关注 每天带你玩转网络安全运维 应用开发 物联网IOT学习 0x00 前言 0x01 等保2 0基本要求 0x02 等保定级 1 定级流程 2 定级比较 3 定级通用要求 0x03 合规流程 0
  • 自动化平台搭建之定制log系统

    log系统概述 我们搭建的自动化平台 无论是Web和Android 都少不了一个重要的模块 那就是log输出模块 该模块记录了整个自动化平台运行期间的日志记录 完成自动化测试后 我们可以通过日志追踪和分析fail项 根据自动化平台log输出
  • Intellj IDEA基础设置

    基础配置 view toolbar 配置jdk configure project defaults project structure new jdk 路径 添加插件 configure plugins 配置jvm内存 configure
  • Bootstrap的CSS类积累学习

    要看哪个的介绍 搜索关键词就行了 001 container 这是Bootstrap中定义的一个CSS类 它用于创建一个具有固定宽度的容器 比如 container类将 div 元素包装成一个固定宽度的容器 详情见 https blog c
  • STL vector的N种构造方式

    1 使用默认无参的构造函数进行构造 vector
  • 设计一算法,将已建立的单链表进行逆置

    单链表逆序有很多种方法 可是好多种方法都是逆序后就不能再使用之前定义的函数了 因为你的头结点变动了 不再是之前所定义的first或是head了 所以之前的方法都要重写 后来我终于想到了种很好的方法了 为了不重开空间 我们可以就在原来的那个单
  • leetcode:37. 解数独

    题目链接 37 解数独 文章目录 题目描述 思路 代码 题目描述 编写一个程序 通过填充空格来解决数独问题 数独的解法需 遵循如下规则 数字 1 9 在每一行只能出现一次 数字 1 9 在每一列只能出现一次 数字 1 9 在每一个以粗实线分
  • git lfs搭建 —— ubuntu20.04

    一直使用git lab 临时需要放一些pdf文档但有不需要git来版本管理 个人感觉比较占用资源 百度了一通 决定用git lfs 同时发现git lab有内置lfs使用说明 结合网上查得 总结如下 也是个人操作留档 本人使用vscode
  • 学生的姓名 ,年龄,性别,班级及爱好IDEA代码

    学生的姓名 年龄 性别 班级及爱好AIDE代码 package zy 学生类 class Person 属性 姓名 年龄 性别 班级 爱好 String name 姓名 int age 年龄 String sex 性别 int classN
  • 【数据结构】LoopQueue 循环队列

    数据结构源码 接口 public interface Queue
  • yarn安装依赖包报错 error An unexpected error occurred: “https://registry.npm.taobao.orgnpm/element-ui: get

    yarn安装依赖包报错 error An unexpected error occurred https registry npm taobao orgnpm element ui getaddrinfo ENOTFOUND registr
  • NAT(网络地址转换协议)

    目录 NAT 网络地址转换协议 作用 NAT转换内部地址范围 主要应用方向 NAT的优点 实验 1 静态NAT 一个内网地址对一个公网地址 2 动态NAT PAT 多个内网地址对多个公网地址 3 Easy ip 多个内网地址对一个接口 4
  • shell脚本实战:linux系统初始化和mysql8.0编译安装

    linux系统初始化脚本 bin bash version v1 author xingdian cat lt lt eof a 关闭防火墙 b 关闭selinux c 网络连通性检测 d 配置yum仓库 q 退出 eof read p 请