Centos上一键化安装MySQL、Python、Java环境的shell脚本

首先声明:该脚本并非本人全部原创,近期本人需要常对重装的服务器进行环境部署,为了便利,参考了许多大佬的攻略,集大家之长,整合出个人需要的东西。经测试,本人的服务器有效,仅供参考,不一定适应所有环境。

主要在使用脚本前,在/usr路径下创建一个文件夹,package
mkdir -p /usr/package
然后导入下载好的jdk安装包

一、MySQL

针对mysql,我测试的例子中,华为云的服务器比较特殊,无法通过下载mysql5.6镜像来安装,会报错
于是这一部分分为2个方案:
(1)针对华为云服务器centos8

# 从软件管理中直接安装mysql8.0
dnf install @mysql
# 启动mysql服务
systemctl start mysqld.service

(2)其他服务器(阿里云)

#!/bin/bash
# centos 7安装mysql
# 删除mariadb
yum remove mariadb
rm -rf /etc/my.cnf /var/lib/mysql

cd /usr/package
# 下载mysql5.6安装包
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
# 安装
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-server
# 启动mysql
systemctl start mysqld.service

二、Python

# 安装python预装的依赖
yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
yum -y install libffi libffi-devel
# 下载并解压python包
cd /usr/package
wget https://www.python.org/ftp/python/3.6.8/Pythom-3.6.8.tar.xz
tar -Jxvf Python-3.6.8.tar.xz
# 安装python
cd Python-3.6.8
mkdir -p /usr/local/python3

yum -y install gcc
# 配置
./configure --prefix=/usr/local/python3
# 编译安装
make && make install
# 软连接
ln -s /usr/local/python3/bin/python3.6 /usr/local/bin/python3
# 升级pip
pip install --upgrade pip
# 测试python3
python3 -V

三、JDK
JDK的下载无法直接通过wget下载,即使下载了,也无法解压,只能去官网上下载,再弄到服务器中
jdk1.8下载
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

#!/bin/bash
cd /usr/package
# 安装JDK
# 创建安装环境
mkdir /usr/local/java
# 解压文件
# (注意,jdk的包名需要自己调整为自己下载的包,下面的配置同理)
tar -zxvf jdk-8u281-linux-x64.tar.gz -C /usr/local/java
# 设置环境变量
# 此处的JAVA_HOME可能需要修改
echo "export JAVA_HOME=/usr/local/java/jdk1.8.0_281
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH">>/etc/profile
# 变量生效
source /etc/profile
# 软连接
ln -s /usr/local/java/jdk1.8.0_281/bin/java /usr/bin/java
# 检查版本
java -version

脚本文件整合:
Centos8 install jdk1.8_python_mysql8.sh(华为云)

#!/bin/bash
dnf install @mysql
# 启动mysql
systemctl start mysqld.service

# 初始化mysql(设置root密码:123456)
#mysql -u root -Dmysql</home/init.sql

# 安装python预装的依赖
yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
yum -y install libffi libffi-devel

cd /usr/package
wget https://www.python.org/ftp/python/3.6.8/Pythom-3.6.8.tar.xz
tar -Jxvf Python-3.6.8.tar.xz

cd Python-3.6.8
mkdir -p /usr/local/python3

yum -y install gcc

./configure --prefix=/usr/local/python3
make && make install

ln -s /usr/local/python3/bin/python3.6 /usr/local/bin/python3

pip install --upgrade pip

python3 -V

cd /usr/package
mkdir /usr/local/java

tar -zxvf jdk-8u281-linux-x64.tar.gz -C /usr/local/java

echo "export JAVA_HOME=/usr/local/java/jdk1.8.0_281
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH">>/etc/profile

source /etc/profile

ln -s /usr/local/java/jdk1.8.0_281/bin/java /usr/bin/java

java -version

Centos8 install jdk1.8_python_mysql56.sh

#!/bin/bash
# centos 7安装mysql
# 删除mariadb
#!/bin/bash
yum remove mariadb
rm -rf /etc/my.cnf /var/lib/mysql

cd /usr/package

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-server

systemctl start mysqld.service

mysql -u root -Dmysql</home/init.sql

yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
yum -y install libffi libffi-devel

cd /usr/package
wget https://www.python.org/ftp/python/3.6.8/Pythom-3.6.8.tar.xz
tar -Jxvf Python-3.6.8.tar.xz

cd Python-3.6.8
mkdir -p /usr/local/python3

yum -y install gcc

./configure --prefix=/usr/local/python3
make && make install

ln -s /usr/local/python3/bin/python3.6 /usr/local/bin/python3

pip install --upgrade pip

python3 -V

cd /usr/package
mkdir /usr/local/java

tar -zxvf jdk-8u281-linux-x64.tar.gz -C /usr/local/java

echo "export JAVA_HOME=/usr/local/java/jdk1.8.0_281
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH">>/etc/profile

source /etc/profile

ln -s /usr/local/java/jdk1.8.0_281/bin/java /usr/bin/java

java -version

一个小问题,在windows下编辑的该代码,当我上传到服务器中时,出现了’\r‘:command cannot find的错误,原因是在代码有几个命令”mkdir /usr/local/python"在这我打了一个回车,在windows中回车默认为\r,在linux中回车默认为\n,所以造成了不识别。我采用了比较笨的解决方法:在linux中用vim工具,重新在那几处mkdir敲了回车。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值