Linux随笔一之一键配置LNMP

来源:互联网 发布:ios栈堆和数据区 编辑:程序博客网 时间:2024/06/05 15:59


 服务器配置: centos6.5(32bit)+512内存+20G硬盘

 翻来覆去折腾了好多次,虽然过程比较艰辛,但是总算是把LANP安装好了。写好之后问题还很多,比如扩展的安装。写个shell总结一下个一键包,虽然看上去比较丑陋,也没啥交互,用法也比较局限,也没什么版本之类的切换,不过总算是弄了人生第一个一键包。之后有空会继续优化。

 在安装Mysql的时候,遇上很多问题,用mysql官网提供的yum源安装后,不知道安装路径。用数据包安装却因为各种莫名其妙的依赖关系搞的晕头转向。好不容易安上去了, 却因为PHP和MYSQL挂接问题转了很久很久。试了各种方法都不奏效。每次都搞的头晕晕的。好在最后总算是比较完整的安了上去,开心。


#!/bin/sh#Author : yinggaozhen#Create : 2015-12-30#***Setup List ***NGINX_SETUP_SWITCH=0PHP_SETUP_SWICH=1MYSQL_SETUP_SWICH=0#***Setup Varibales Config***BASE_SRC_FILE_PATH="/usr/src/"BASE_SETUP_FILE_PATH="/usr/local/src/"#Step1 : Setup Nginx.#============= Setup Nginx Start =============NGINX_SRC_FILE_PATH="$BASE_SRC_FILE_PATH"nginxNGINX_SETUP_FILE_PATH="$BASE_SETUP_FILE_PATH"nginxDOWNLOAD_NGINX="nginx-1.9.7"if [ "$NGINX_SETUP_SWITCH" = 1 ]; then    if [ ! -d $NGINX_SRC_FILE_PATH ]; then        mkdir $NGINX_SRC_FILE_PATH    fi    if [ ! -e "$NGINX_SRC_FILE_PATH"/"$DOWNLOAD_NGINX".tar.gz ]; then        wget -P $NGINX_SRC_FILE_PATH http://nginx.org/download/"$DOWNLOAD_NGINX".tar.gz        if [ -e "$NGINX_SRC_FILE_PATH"/"$DOWNLOAD_NGINX".tar.gz ]; then            yum -y install *pcre*            yum -y install *zlib*            mkdir $NGINX_SETUP_FILE_PATH            tar -xvf $NGINX_SRC_FILE_PATH/$DOWNLOAD_NGINX.tar.gz -C $NGINX_SRC_FILE_PATH            cd $NGINX_SRC_FILE_PATH/$DOWNLOAD_NGINX            ./configure --prefix=$NGINX_SETUP_FILE_PATH            make && make install            cd -            ln /usr/local/src/nginx/sbin/nginx /usr/bin/        fi    fifi#============= Setup Nginx End =============#Step2 : Setup Mysql#============= Setup Mysql Start =============MYSQL_SRC_FILE_PATH=/usr/src/mysqlif [ "$MYSQL_SETUP_SWICH=1" = 1 ]; then    if [ ! -d /usr/src ];then        wget -P $MYSQL_SRC_FILE_PATH dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm    fi    if [ -e mysql-community-release-el6-5.noarch.rpm ];then        yum localinstall mysql-community-release-el6-5.noarch.rpm        yum repolist all | grep mysql        yum-config-manager --disable mysql55-community        yum-config-manager --disable mysql56-community        yum-config-manager --enable mysql57-community-dmr        yum repolist enabled | grep mysql        yum install mysql-community-server    fifi#============= Setup Mysql End =============#Step3 : Setup PHP.#============= Setup PHP Start =============if [ "$PHP_SETUP_SWICTH" = 1 ]; then    PHP_SRC_FILE_PATH="$BASE_SRC_FILE_PATH"php;    PHP_SETUP_FILE_PATH="$BASE_SETUP_FILE_PATH"php;    DOWNLOAD_PHP="php-5.6.16"     if [ ! -d "$PHP_SRC_FILE_PATH" ]; then          mkdir $PHP_SRC_FILE_PATH         fi     if [ ! -d "$PHP_SETUP_FILE_PATH" ]; then          mkdir $PHP_SETUP_FILE_PATH     fi     if [ ! -e "$PHP_SRC_FILE_PATH"/"$DOWNLOAD_PHP".tar.bz2 ]; then         wget -P $PHP_SRC_FILE_PATH http://cn2.php.net/distributions/"$DOWNLOAD_PHP".tar.bz2;         if [ -e "$PHP_SRC_FILE_PATH"/"$DOWNLOAD_PHP".tar.bz2 ]; then             yum -y install *libxml2*             yum install libicu-devel            tar xvf $PHP_SRC_FILE_PATH/$DOWNLOAD_PHP.tar.bz2 -C $PHP_SRC_FILE_PATH            cd $PHP_SRC_FILE_PATH/$DOWNLOAD_PHP            ./configure --prefix=/$PHP_SETUP_FILE_PATH\                                 --with-libdir=lib64\                                 --enable-fpm\                                 --with-fpm-user=php-fpm\                                 --with-fpm-group=www\                                 --enable-mysqlnd\                                 --with-mysql=mysqlnd\                                 --with-mysqli=mysqlnd\                                 --with-pdo-mysql=mysqlnd\                                 --enable-mbstring\                                 --enable-soap\                                 --enable-zip\                                 --enable-calendar\                                 --enable-intl\                                 --with-openssl            cd -            make && make install;        fi    fi fi #============= Setup PHP End =============


#检测mysql服务是否已添加chkconfig --list | grep mysqld#开启mysql服务service mysqld start#进入mysql#因为刚进入mysql的时候,为了系统安全,系统会随机分配额一个密码,详细查看官网http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/cat /var/log/mysqld.log | grep temporarymysql_secure_installationmysql -uroot -p#更改密码SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');#安装mysql扩展yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql#开放远程登录GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;FLUSH PRIVILEGES;

0 0