標籤:lnmp
搭建環境:Centos 6.8,nginx 1.9.14,mysql 5.6.23,php 5.6.17
一、目的:LNMP如今已成為主流的web伺服器搭建方案,如公司內部的ECstore,Discuz,計劃用來替代nagios+check_mk監控平台的Zabbix。均可以基於LNMP。本次單機LNMP搭建為熟悉電商叢集做準備,順便記錄下搭建過程,省的每次搭建完後,下回搭建又得重頭再來。
二、LNMP安裝環境準備:
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers make libtool* git tree bision pcre-devel perl
安裝libiconv
tar zxvf libiconv-1.14.tar.gz cd libiconv-1.14/ ./configure --prefix=/usr/local make && make install
安裝libmcrypt
tar -zxvf libmcrypt-2.5.7.tar.gzcd libmcrypt-2.5.7./configuremake make install cd libltdl/ ./configure --enable-ltdl-install make make install
安裝mhash
tar xfmhash-0.9.9.9.tar.bz2 cd mhash-0.9.9.9./configuremake&& make install
安裝mcript
cd /usr/local/srctar zxvf mcrypt-2.6.8.tar.gz cd mcrypt-2.6.8/ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH ./configure make make install
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4 ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8 ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2 ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1 ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
安裝cmake
tar zxvfcmake-3.4.1.tar.gzcd cmake-3.4.1./bootstrapmake && make install
三、MySQL編譯安裝
新增mysql使用者
groupadd -r mysqluseradd -r -g mysql mysql
建立MySQL所需目錄
mkdir -p /usr/local/mysql mkdir -p /data/mysqldb
編譯安裝
tar zxvf mysql-5.6.23.tar.gzcd mysql-5.6.23cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\ -DDEFAULT_CHARSET=utf8\ -DDEFAULT_COLLATION=utf8_general_ci\ -DWITH_INNOBASE_STORAGE_ENGINE=1\ -DWITH_ARCHIVE_STORAGE_ENGINE=1\ -DWITH_BLACKHOLE_STORAGE_ENGINE=1\ -DMYSQL_DATADIR=/data/mysqldb\ -DMYSQL_TCP_PORT=3306\ -DENABLE_DOWNLOADS=1\ -DSYSCONFDIR=/etc\ -DWITH_SSL=system\ -DWITH_ZLIB=system\ -DWITH_LIBWRAP=0make&& make install
修改mysql目錄許可權
cd /usr/local/mysql chown -R mysql:mysql .cd /data/mysqldb chown -R mysql:mysql .
初始化mysql資料庫
cd/usr/local/mysql./scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
編譯修改/etc/my.cnf
[mysql] # CLIENT #port = 3306socket = /data/mysqldb/mysql.sock [mysqld] # GENERAL #user = mysqldefault-storage-engine = InnoDBsocket = /data/mysqldb/mysql.sockpid-file = /data/mysqldb/mysql.pid # MyISAM #key-buffer-size = 32Mmyisam-recover = FORCE,BACKUP # SAFETY #max-allowed-packet = 16Mmax-connect-errors = 1000000 # DATA STORAGE #datadir = /data/mysqldb/ # BINARY LOGGING #log-bin = /data/mysqldb/mysql-binexpire-logs-days = 14sync-binlog = 1 # REPLICATION #skip-slave-start = 1relay-log = /data/mysqldb/relay-binslave-net-timeout = 60 # CACHES AND LIMITS #tmp-table-size = 32Mmax-heap-table-size = 32Mquery-cache-type = 0query-cache-size = 0max-connections = 500thread-cache-size = 50open-files-limit = 65535table-definition-cache = 4096table-open-cache = 4096 # INNODB #innodb-flush-method = O_DIRECTinnodb-log-files-in-group = 2innodb-log-file-size = 64Minnodb-flush-log-at-trx-commit = 1innodb-file-per-table = 1innodb-buffer-pool-size = 592M # LOGGING #log-error = /data/mysqldb/mysql-error.loglog-queries-not-using-indexes = 1slow-query-log = 1slow-query-log-file = /data/mysqldb/mysql-slow.log
複製MySQL開機檔案及其命令加入PATH
cp support-files/mysql.server /etc/init.d/mysqld vim /etc/profile.d/mysql.sh PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH export PATHsource /etc/profile.d/mysql.sh
啟動MySQL並增加啟動項
service mysqld start chkconfig mysqld on
設定MySQL登入許可權
drop user ‘‘@localhost;drop user ‘‘@hostname;update mysql.user set password=password(‘*******‘);flush privileges;
四、Nginx編譯安裝
本文出自 “Frank” 部落格,請務必保留此出處http://zhoufan.blog.51cto.com/4278592/1793098
Centos 6 編譯安裝LNMP