LNMP搭建

NGINX_VERSION=1.14.0
yum -y install pcre-devel openssl-devel
cd /usr/src
tar -zxf nginx-${NGINX_VERSION}.tar.gz
cd nginx-${NGINX_VERSION}
useradd -M -s /sbin/nologin nginx
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-pcre
make && make install
mkdir /usr/local/nginx/vhosts
mkdir /usr/local/nginx/upstream
#mysql安装
#mysql5.7.13下载地址
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz
#安装mysql之前必须安装boost库,mysql5.7.13要求的boost版本是boost1.59.0或以上版本。
#下载地址
wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
tar -xzvf boost_1_59_0.tar.gz 
cd boost_1_59_0 
./bootstrap.sh --with-libraries=system,filesystem,log,thread --with-toolset=gcc 
./b2 toolset=gcc
./b2 install --prefix=/usr/local/boost
MYSQL_VERSION=5.7.13
yum -y install cmake ncurses-devel readline-devel bison libaio-devel openssl-devel gcc-c++
cd /usr/src
useradd -M -s /sbin/nologin mysql
tar -zxf mysql-${MYSQL_VERSION}.tar.gz
cd mysql-${MYSQL_VERSION}
#注意,6.8版本cmake不成功的话把LAMP(yum)里面的东西除了开头两个都卸载试试
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDOWNLOAD_BOOST=1 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=/usr/local/boost
make && make install
make clean
rm CMakeCache.txt
chown -R mysql:mysql /usr/local/mysql
cd /usr/local/mysql/bin
#数据库初始化
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 
#这条命令执行后会产生一个初始密码
#A temporary password is generated for root@localhost: tj+/Yssvc9Gb (要记下来)
mv /etc/my.cnf /etc/my.cnf.old
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig mysqld on
service mysqld start
echo '/usr/local/mysql/lib/' >> /etc/ld.so.conf  #指定mysql库文件位置
ldconfig
echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile
source /etc/profile
#修改root密码
mysql -uroot -p
#密码为之前随机生成的初始密码,使用alter语句修改默认密码
mysql>alter user 'root'@'localhost' identified by 'root';
-------------
PHP_VERSION=7.1.22
yum -y install libxml2-devel curl-devel libjpeg-devel libpng-devel freetype-devel openldap-devel  libmcrypt libmcrypt-devel mcrypt mhash libxslt-devel libxslt
cp -frp /usr/lib64/libldap* /usr/lib/
cd /usr/src
tar -zxf php-${PHP_VERSION}.tar.gz
cd php-${PHP_VERSION}
./configure \
--prefix=/usr/local/php \
--with-curl \
--with-pdo-mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-config-file-path=/usr/local/php/etc \
--with-freetype-dir \
--with-ldap \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \
--with-openssl \
--with-pcre-regex \
--with-pdo-sqlite \
--with-pear \
--with-png-dir \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--enable-fpm \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-gd-native-ttf \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-xml \
--enable-zip
make && make install
#make ZEND_EXTRA_LIBS='-liconv' && make install
cp php.ini-production /usr/local/php/etc/php.ini
echo 'export PATH=$PATH:/usr/local/php/bin' >> /etc/profile
source /etc/profile
cp /usr/local/php/etc/php-fpm.conf.default  /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm 
echo '[global]' > php-fpm.conf
echo 'pid = run/php-fpm.pid' >> php-fpm.conf
echo 'error_log = log/php-fpm.log' >> php-fpm.conf
echo 'log_level = error' >> php-fpm.conf
echo 'daemonize = yes' >> php-fpm.conf
echo '' >> php-fpm.conf
echo '[www]' >> php-fpm.conf
echo 'user = nginx' >> php-fpm.conf
echo 'group = nginx' >> php-fpm.conf
echo 'listen = 127.0.0.1:9000' >> php-fpm.conf
echo 'pm = dynamic' >> php-fpm.conf
echo 'pm.max_children = 128' >> php-fpm.conf
echo 'pm.start_servers = 32' >> php-fpm.conf
echo 'pm.min_spare_servers = 32' >> php-fpm.conf
echo 'pm.max_spare_servers = 64' >> php-fpm.conf
#
echo 'fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /usr/local/nginx/conf/fastcgi_params
#简单配置
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }
#php简单配置
<?php
phpinfo();
?>
#mysql配置文件
[mysql]
socket = /tmp/mysql.sock
[mysqld]
#skip-grant-tables
secure_file_priv="/usr/local/mysql"
port = 3306
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
pid-file = /usr/local/mysql/data/mysql.pid
log-error = /usr/local/mysql/data/error.log
character_set_server = utf8
user = mysql
max_connections = 1500
symbolic-links=0
posted @ 2018-10-11 18:13  lnsix  阅读(170)  评论(0编辑  收藏  举报