CentOS7 源码安装nginx+php+mysql+redis--shell脚本

简介: centos7源码安装 nginx+php+mysql+redis 复制文中shell脚本,登录自己的服务器保存为 install.sh 执行如下命令 chmod +x install.sh ./install.sh
#======== shell script file ============
start_time=`date +%s`
#======== shell script start ===========


echo "---- CentOS7.x install mysql + php + nginx + redis + phpmyadmin----"
sleep 3
cd ~
mkdir download
cd download
yum -y install wget unzip gcc gcc-c++ make cmake autoconf automake openssl openssl-devel openssl-perl openssl-static zlib zlib-devel pcre pcre-devel ncurses ncurses-devel bison bison-devel curl curl-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel libxml2 libxml2-devel gd gd-devel freetype freetype-devel libjpeg libjpeg-devel libpng libpng-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libXpm libXpm-devel t1lib t1lib-devel libxslt libxslt-devel net-snmp net-snmp-devel

wget http://nginx.org/download/nginx-1.16.0.tar.gz
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.44.tar.gz
wget https://www.php.net/distributions/php-7.1.29.tar.gz
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
wget https://pecl.php.net/get/event-2.5.0.tgz
wget https://github.com/phpredis/phpredis/archive/4.3.0.tar.gz
wget https://files.phpmyadmin.net/phpMyAdmin/4.8.5/phpMyAdmin-4.8.5-all-languages.zip

cd /root/download/
groupadd www
useradd -g www www
groupadd mysql
useradd -g mysql mysql

chmod 755 /home/www /home/mysql
chown www:www /home/www
chown mysql:mysql /home/mysql

clear
echo "---- install mysql ----"
sleep 2

tar zxvf mysql-5.6.44.tar.gz
cd mysql-5.6.44
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/home/mysql -DSYSCONFDIR=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_USER=mysql -DWITH_DEBUG=0 -DMYSQL_TCP_PORT=3306 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=1 -DWITH_SSL=yes
make
make install

cp /usr/local/mysql/support-files/my-default.cnf /usr/local/mysql/my.cnf
rm -f /etc/my.cnf
ln -s /usr/local/mysql/my.cnf /etc/my.cnf
ln -s /usr/local/mysql/bin/mysql* /usr/local/bin
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql



echo "---- install nginx ----"
sleep 2
cd /root/download/
tar zxvf nginx-1.16.0.tar.gz 
cd nginx-1.16.0
./configure --user=www --group=www --prefix=/usr/local/nginx --pid-path=/tmp/nginx.pid --with-http_stub_status_module --with-http_ssl_module
make
make install

cd /root/download
mkdir /usr/local/nginx/conf/vhosts/
#\cp ./nginx.conf /usr/local/nginx/conf/
ln -s /usr/local/nginx/conf/nginx.conf /etc/nginx.conf

clear
echo "---- install php ----"
sleep 2
cd /root/download/
tar -xzvf curl-7.64.1.tar.gz
cd curl-7.64.1
./configure --prefix=/usr/local/curl
make && make install

cd /root/download/
tar -xzvf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8-stable
./configure --prefix=/usr/local/libevent-2.1.8
make && make install

cd /root/download/
tar -zxvf php-7.1.29.tar.gz
cd php-7.1.29
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-iconv-dir --with-freetype-dir --with-png-dir --with-jpeg-dir --with-zlib --with-mhash --with-gd --enable-bcmath --with-curl=/usr/local/curl --with-bz2 --enable-zip --with-openssl --with-openssl-dir --without-pear --enable-mbstring --enable-soap --enable-xml --enable-pdo --enable-ftp --enable-bcmath --enable-sockets --with-xmlrpc --with-xsl --enable-sysvsem --enable-sysvshm --enable-maintainer-zts --enable-calendar --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-wddx --enable-shmop --enable-exif --enable-pcntl
make
make install

cp php.ini-development /usr/local/php/etc/php.ini
sed -i "s/;date.timezone =/date.timezone = PRC/" /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
ln -s /usr/local/php/etc/php.ini /etc/php.ini
ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf
ln -s /usr/local/php/bin/php* /usr/local/bin/
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

cd ./ext/pdo_mysql
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
make && make install
echo extension=pdo_mysql.so >> /usr/local/php/etc/php.ini

cd /root/download
tar -zxvf event-2.5.0.tgz
cd event-2.5.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-event-libevent-dir=/usr/local/libevent-2.1.8
make && make install
echo extension=event.so >> /usr/local/php/etc/php.ini


clear
echo "---- install redis ----"
sleep 2
cd /root/download

tar -zxvf redis-5.0.5.tar.gz
redis-5.0.5
make
cd src
make install
mkdir -p /usr/local/redis/bin /usr/local/redis/etc /usr/local/redis/logs  /usr/local/redis/rdb
cp mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb /usr/local/redis/bin/
cd ../../
cp redis.conf /usr/local/redis/etc/
sed -i "s/daemonize no/daemonize yes/" /usr/local/redis/etc/redis.conf

clear
echo "---- install phpredis ----"
sleep 2
cd /root/download
tar -zxvf 4.3.0.tar.gz
cd phpredis-4.3.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
echo extension=redis.so >> /usr/local/php/etc/php.ini


clear
echo "---- install phpmyadmin ----"
sleep 2
cd /root/download


unzip phpMyAdmin-4.8.5-all-languages.zip
mv phpMyAdmin-4.8.5-all-languages /home/www/phpmyadmin
chown -R www:www /home/www/phpmyadmin
cd

echo "
pkill nginx
pkill redis
pkill php

/usr/local/php/sbin/php-fpm -d start
/usr/local/mysql/support-files/mysql.server stop
/usr/local/mysql/support-files/mysql.server start
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

netstat -antp | grep php
netstat -antp | grep redis
netstat -antp | grep mysql
netstat -antp | grep nginx
" > /root/lnmp.sh
chmod +x /root/lnmp.sh

sh /root/lnmp.sh

echo "---------------------------------------------"
echo "---- source dir: /root/download/   ----------"
echo "---- php dir: /usr/local/php/      ----------"
echo "---- nginx dir: /usr/local/php/    ----------"
echo "---- mysql dir: /usr/local/php/    ----------"
echo "---- redis dir: /usr/local/php/    ----------"
echo "---- start lnmp: ~/lnmp.sh         ----------"
echo "---------------------------------------------"

#======== shell script over ===========
over_time=`date +%s`

use_time=$[$over_time-$start_time]

if [ $use_time -le 60 ]
then

use_second=$use_time
use_minutes=0

else

use_second=$[$use_time%60]
use_minutes=$[$use_time/60]

fi

echo When you use shell script:$use_minutes minutes $use_second second
目录
相关文章
|
10月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
2521 16
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
3421 26
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
605 20
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
1552 16
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
848 3
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
257 0
|
监控 Linux Apache
CentOS7.0源码安装Apache
CentOS7.0源码安装Apache
1796 0
|
关系型数据库 测试技术 PHP
CentOS下源码安装Apache2.4+PHP5.4+MySQL5.5
一、准备(把所有的源文件放在‘/home/yuanjun’目录下) apr http://mirror.bjtu.edu.cn/apache/apr/apr-1.4.6.tar.gz apr-util http://mirror.
872 0