MYSQL源码安装&并且添加系统服务脚本&SHELL编程实战LNMP源码部署脚本

4 篇文章 0 订阅
2 篇文章 0 订阅

MYSQL源码安装&并且添加系统服务脚本&SHELL编程实战LNMP源码部署脚本

1、编写MYSQL源码安装&并且添加系统服务脚本

mysql_yuanma_install_v2.sh

#!/bin/bash

#2024年01月25日21:05:03

#auto install mysql

#by author lqc

#################################################

MYSQL_VER="5.5.60"

MYSQL_YUM="yum install -y"

MYSQL_DIR="/usr/local/mysql55"

MYSQL_DATA="/data/mysql55"

MYSQL_SRC="mysql-${MYSQL_VER}"

MYSQL_SOFT="mysql-${MYSQL_VER}.tar.gz"

MYSQL_URL="http://mirrors.163.com/mysql/Downloads/MySQL-5.5"

#安装依赖包

$MYSQL_YUM wget gcc gcc-c++ gzip tar libaio bison git cmake ncurses ncurses-devel openssl openssl-devel

#进入/usr/src 目录

cd /usr/src

#下载mysql5.5.60程序包、解压缩,并进入到解压缩后的目录,执行cmake预编译

wget -c $MYSQL_URL/$MYSQL_SOFT

tar -zvxf $MYSQL_SOFT

cd $MYSQL_SRC

cmake . -DCMAKE_INSTALL_PREFIX=$MYSQL_DIR/ \

 -DMYSQL_UNIX_ADDR=$MYSQL_DATA/mysql.sock \

 -DMYSQL_DATADIR=$MYSQL_DATA \

 -DSYSCONFDIR=$MYSQL_DIR \

 -DMYSQL_USER=mysql \

 -DMYSQL_TCP_PORT=3306 \

 -DWITH_XTRADB_STORAGE_ENGINE=1 \

 -DWITH_INNOBASE_STORAGE_ENGINE=1 \

 -DWITH_PARTITION_STORAGE_ENGINE=1 \

 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

 -DWITH_MYISAM_STORAGE_ENGINE=1 \

 -DWITH_READLINE=1 \

 -DENABLED_LOCAL_INFILE=1 \

 -DWITH_EXTRA_CHARSETS=1 \

 -DDEFAULT_CHARSET=utf8 \

 -DDEFAULT_COLLATION=utf8_general_ci \

 -DEXTRA_CHARSETS=all \

 -DWITH_BIG_TABLES=1 \

 -DWITH_DEBUG=0

#编译、安装

make -j4

make -j4 install

#创建mysql数据库安装路径

mkdir -p $MYSQL_DIR

#创建mysql数据库目录

mkdir -p $MYSQL_DATA

touch $MYSQL_DATA/mysql.log

#创建mysql用户,并授权

useradd -s /sbin/nologin mysql -M

chown -R mysql. $MYSQL_DATA

#拷贝mysql.server 配置文件到mysql安装目录下,并改名为my.cnf,也拷贝到init.d下

cp support-files/mysql.server $MYSQL_DIR/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

# 准备配置文件

cat > $MYSQL_DIR/my.cnf << EOF

[mysqld]

basedir=/usr/local/mysql55/

datadir=/data/mysql55/

port=3306

pid-file=/data/mysql55/mysql.pid

socket=/data/mysql55/mysql.sock

[mysqld_safe]

log-error=/data/mysql55/mysql.log

EOF

#数据库初始化

/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql55 --basedir=/usr/local/mysql55/

#添加环境变量,并是环境变量生效

echo "export PATH=/usr/local/mysql55/bin:$PATH" >> /etc/profile

source /etc/profile

#授权执行权限,设置开机启动

chmod +x /etc/init.d/mysqld

/etc/init.d/mysqld start

chkconfig --add mysqld

chkconfig --level 35 mysqld on

systemctl enable mysqld

setenforce 0

systemctl stop firewalld.service

netstat -nltp

ps -ef | grep mysqld

2、shell编程实战LNMP源码部署脚本

lnmp_yuanma_install_v2.sh

#!/bin/bash

#2024年01月25日21:05:03

#auto install lnmp

#by author lqc

################################################

MYSQL_VER="5.5.60"

YUM="yum install -y"

MYSQL_DIR="/usr/local/mysql55"

MYSQL_DATA="/data/mysql55"

MYSQL_SRC="mysql-${MYSQL_VER}"

MYSQL_SOFT="mysql-${MYSQL_VER}.tar.gz"

MYSQL_URL="http://mirrors.163.com/mysql/Downloads/MySQL-5.5"

NGX_VER="1.18.0"

NGX_DIR="/usr/local/nginx"

NGX_SRC="nginx-${NGX_VER}"

NGX_SOFT="nginx-${NGX_VER}.tar.gz"

NGX_URL=http://mirrors.sohu.com/nginx

NGX_ARGS="--user=www --group=www --with-http_stub_status_module"

PHP_VER="5.6.8"

PHP_DIR="/usr/local/php"

PHP_SRC="php-${PHP_VER}"

PHP_SOFT="php-${PHP_VER}.tar.gz"

PHP_URL="http://mirrors.sohu.com/php"

COLOR="echo -e \\033[01;31m"

END='\033[0m'

#install msyql

#安装依赖包

$COLOR"开始安装mysql..."$END

$YUM wget gcc gcc-c++ gzip tar libaio bison git cmake

$YUM ncurses ncurses-devel openssl openssl-devel pcre-devel zlib-devel

#进入/usr/src 目录

cd /usr/src

#下载mysql5.5.60程序包、解压缩,并进入到解压缩后的目录,执行cmake预编译

wget -c $MYSQL_URL/$MYSQL_SOFT

tar -zvxf $MYSQL_SOFT

cd $MYSQL_SRC

cmake . -DCMAKE_INSTALL_PREFIX=$MYSQL_DIR \

 -DMYSQL_UNIX_ADDR=$MYSQL_DATA/mysql.sock \

 -DMYSQL_DATADIR=$MYSQL_DATA \

 -DSYSCONFDIR=$MYSQL_DIR \

 -DMYSQL_USER=mysql \

 -DMYSQL_TCP_PORT=3306 \

 -DWITH_XTRADB_STORAGE_ENGINE=1 \

 -DWITH_INNOBASE_STORAGE_ENGINE=1 \

 -DWITH_PARTITION_STORAGE_ENGINE=1 \

 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

 -DWITH_MYISAM_STORAGE_ENGINE=1 \

 -DWITH_READLINE=1 \

 -DENABLED_LOCAL_INFILE=1 \

 -DWITH_EXTRA_CHARSETS=1 \

 -DDEFAULT_CHARSET=utf8 \

 -DDEFAULT_COLLATION=utf8_general_ci \

 -DEXTRA_CHARSETS=all \

 -DWITH_BIG_TABLES=1 \

 -DWITH_DEBUG=0

#编译、安装

make -j4

make -j4 install

#创建mysql数据库安装路径

mkdir -p $MYSQL_DIR

#创建mysql数据库目录

mkdir -p $MYSQL_DATA

touch $MYSQL_DATA/mysql.log

#创建mysql用户,并授权

useradd -s /sbin/nologin mysql -M

chown -R mysql. $MYSQL_DATA

#拷贝mysql.server 配置文件到mysql安装目录下,并改名为my.cnf,也拷贝到init.d下

cp support-files/mysql.server $MYSQL_DIR/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

# 准备配置文件

cat > $MYSQL_DIR/my.cnf << EOF

[mysqld]

basedir=/usr/local/mysql55/

datadir=/data/mysql55/

port=3306

pid-file=/data/mysql55/mysql.pid

socket=/data/mysql55/mysql.sock

[mysqld_safe]

log-error=/data/mysql55/mysql.log

EOF

#数据库初始化

/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql55 --basedir=/usr/local/mysql55/

#添加环境变量,并使环境变量生效

echo "export PATH=/usr/local/mysql55/bin:$PATH" >> /etc/profile

source /etc/profile

#授权执行权限,设置开机启动

chmod +x /etc/init.d/mysqld

/etc/init.d/mysqld start

chkconfig --add mysq

chkconfig --level 35 mysqld on

systemctl enable mysqld

netstat -nltp

$COLOR"MYSQL安装完成..."$END

#install nginx

#安装NGINX

$COLOR"开始安装Nginx..."$END

cd /usr/src

wget -c $NGX_URL/$NGX_SOFT

tar -zxvf $NGX_SOFT

cd $NGX_SRC

useradd -s /sbin/nologin www -M

./configure --prefix=$NGX_DIR $NGX_ARGS

make -j4

make -j4 install

$NGX_DIR/sbin/nginx

netstat -nltp

ps -ef |grep nginx

$COLOR"NGINX安装完成..."$END

#install php

#安装依赖包

$COLOR"开始安装php..."$END

$YUM gd curl curl-devel libjpeg libjpeg-devel libpng libpng-devel

$YUM freetype freetype-devel libxml2 libxml2-devel

cd /usr/src

wget -c $PHP_URL/$PHP_SOFT

tar -zxvf $PHP_SOFT

cd $PHP_SRC

./configure --prefix=$PHP_DIR  \

 --enable-fpm \

 --enable-debug \

 --with-gd \

 --with-jpeg-dir \

 --with-png-dir \

 --with-freetype-dir \

 --enable-mbstring \

 --with-curl \

 --with-mysql=mysqlnd \

 --with-mysqli=mysqlnd \

 --with-pdo-mysql=mysqlnd \

 --with-config-file-path=$PHP_DIR/etc \

 --with-zlib-dir

make -j4

make -j4 install

cp php.ini-development $PHP_DIR/etc/php-fpm.conf.ini

cp $PHP_DIR/etc/php-fpm.conf.default $PHP_DIR/etc/php-fpm.conf

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

/etc/init.d/php-fpm start

setenforce 0

systemctl stop firewalld.service

netstat -nltp

ps -ef | grep php

$COLOR"PHP安装完成..."$END

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

lqcbj_IT老混混

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

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

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

打赏作者

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

抵扣说明:

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

余额充值