分步骤安装lnmp完整版(带源码)


安装mysql

安装准备

创建mysql用户:

useradd -s /sbin/nologin mysql

建立所需目录:

mkdir -p /usr/local/mysql/data

我这里存放mysql的data文件目录 可以自定义

更改目录用户组:

chown -R mysql:mysql /usr/local/mysql/data

下载源码包:

wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz

我安装的是mysql5.6版本

解压:

tar -zxvf mysql-5.6.37.tar.gz

进入解压后的目录:

cd mysql-5.6.37

执行命令:

cmake -DMYSQL_USER=mysql -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1

注意空格 这里编辑器的原因显示有误,每个属性以一个空格隔开
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8   //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all   //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=mysql //MySQL用户名
其他参数:
-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径

出现camke错误:

该报错原因是未安装ncurses-devel,安装
yum -y install ncurses-devel
删除CMakeCache.txt
find / -name CMakeCache.txt
rm -rf /usr/local/src/cmake-2.8.8/Tests/Complex/Cache/CMakeCache.txt
rm -rf /usr/local/src/cmake-2.8.8/Tests/ComplexOneConfig/Cache/CMakeCache.txt
rm -rf /usr/local/src/cmake-2.8.8/Tests/ComplexRelativePaths/Cache/CMakeCache.txt
rm -rf /usr/local/src/mysql-5.6.25/CMakeCache.txt
全部删除后再重新cmake,OK。

安装:

make && make install

更改目录用户组:

chown -R mysql:mysql /usr/local/mysql

设置配置文件目录:

mv /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
mv /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

修改配置文件执行权限:

chmod a+x /etc/init.d/mysqld

设置mysql开机启动:

chkconfig –level 345 mysqld on

设置环境变量:

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

使环境变量生效:

source /etc/profile

告诉mysql配置文件目录和配置文件目录路径:

/usr/local/mysql/scripts/mysql_install_db –user=mysql –defaults-file=/etc/my.cnf –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data

编辑mysql配置文件:

vim /etc/my.cnf

增加以下配置:

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

mysql安装完毕,可以service mysqld restart 重启mysql,再 ps aux | grep mysqld 查看mysql进程

mysql -uroot -p 默认没有密码

安装nginx+php

下载源文件 http://pan.baidu.com/s/1c19RShM

确定初始化环境

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 nss_ldap openldap-clients openldap-servers

为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装

安装nginx需要的库文件

yum -y install pcre-devel zlib-devel

PHP依赖的库文件

yum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel

安装库文件

tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure –prefix=/usr/local
make && make install

tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make && make install
/sbin/ldconfig
cd libltdl
./configure - -enable-ltdl-install
make && make install

tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./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

继续安装需要的依赖文件

cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make && make install

出现configure: error: * libmcrypt was not found解决方案
export LD_LIBRARY_PATH=/usr/local/lib: LD_LIBRARY_PATH

建立php安装目录

mkdir -p /usr/local/php

解压

tar axvf php-5.6.31.tar.gz
cd php-5.6.31

执行命令:

export LIBS=”-lm -ltermcap -lresolv”

export DYLD_LIBRARY_PATH=”/usr/local/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64”

export LD_LIBRARY_PATH=”/usr/local/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64”

这里注意文件路径 export 和后面是一条命令

编译:

./configure –prefix=/usr/local/php –with-config-file-path=/etc –with-iconv-dir=/usr/local/ –with-freetype-dir –with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –with-jpeg-dir –with-png-dir –with-zlib –with-mhash –enable-sockets –enable-ftp –with-libxml-dir –enable-xml –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –with-curlwrappers –enable-mbregex –enable-mbstring –with-mcrypt –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-ldap –with-ldap-sasl –enable-fpm –with-xmlrpc –enable-zip –enable-soap –without-pear

编译出现configure: error: Cannot find ldap libraries in /usr/lib. 错误
执行cp -frp /usr/lib64/libldap* /usr/lib/
出现 make: * [ext/fileinfo/libmagic/apprentice.lo] Error 1 表示内存不足1 G
在编译命令后 加 –disable-fileinfo 再执行编译命令

安装

make ZEND_EXTRA_LIBS=’-liconv’
make install

确定php配置文件路径

cp php.ini-production /etc/php.ini

将php-fpm 作为服务运行

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

这里的路径是解压后的php文件目录路径

cd /usr/local/php/etc
mv php-fpm.conf.default php-fpm.conf
chmod 755 /etc/init.d/php-fpm
chkconfig –add php-fpm
chkconfig –level 345 php-fpm on

服务方式启动php-fpm

service php-fpm start

如果启动失败,Starting php-fpm /usr/local/php/sbin/php-fpm: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory failed
32位系统执行:ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/
64位系统执行:ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/
启动成功

安装nginx

创建nginx运行用户

useradd www

安装pcre

tar zxvf pcre-8.32.tar.gz
cd pcre-8.32/
./configure –prefix=/usr/local/pcre
make && make install

安装nginx

tar zxvf nginx-1.0.15.tar.gz
cd nginx-1.0.15/

编译

./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module –with-http_gzip_static_module –with-ipv6 –with-http_random_index_module

安装

make && make install

nginx 加入环境变量

vi /etc/profile
在末尾加上:
#nginx configure
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:¥NGINX_HOME/sbin

注意:¥转成$ 编辑器的原因不能使用

保存退出 执行:source /etc/profile 使配置生效
nginx -v

nginx version: nginx/1.10.2

说明安装成功

将nginx 加入系统服务

vim /etc/init.d/nginx


#!/bin/sh 
# 
# nginx - this script starts and stops the nginx daemon 
# 
# chkconfig:   - 85 15 
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \ 
#               proxy and IMAP/POP3 proxy server 
# processname: nginx 
# config:      /etc/nginx/nginx.conf 
# config:      /etc/sysconfig/nginx 
# pidfile:     /var/run/nginx.pid 


# Source function library. 
. /etc/rc.d/init.d/functions 


# Source networking configuration. 
. /etc/sysconfig/network 


# Check that networking is up. 
[ "$NETWORKING" = "no" ] && exit 0 


nginx="/usr/local/nginx/sbin/nginx" 
prog=$(basename $nginx) 


NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" 


[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx 


lockfile=/var/lock/subsys/nginx 


start() { 
    [ -x $nginx ] || exit 5 
    [ -f $NGINX_CONF_FILE ] || exit 6 
    echo -n $"Starting $prog: " 
    daemon $nginx -c $NGINX_CONF_FILE 
    retval=$? 
    echo 
    [ $retval -eq 0 ] && touch $lockfile 
    return $retval 
} 


stop() { 
    echo -n $"Stopping $prog: " 
    killproc $prog -QUIT 
    retval=$? 
    echo 
    [ $retval -eq 0 ] && rm -f $lockfile 
    return $retval 
killall -9 nginx 
} 


restart() { 
    configtest || return $? 
    stop 
    sleep 1 
    start 
} 


reload() { 
    configtest || return $? 
    echo -n $"Reloading $prog: " 
    killproc $nginx -HUP 
RETVAL=$? 
    echo 
} 


force_reload() { 
    restart 
} 


configtest() { 
$nginx -t -c $NGINX_CONF_FILE 
} 


rh_status() { 
    status $prog 
} 


rh_status_q() { 
    rh_status >/dev/null 2>&1 
} 


case "$1" in 
    start) 
        rh_status_q && exit 0 
    $1 
        ;; 
    stop) 
        rh_status_q || exit 0 
        $1 
        ;; 
    restart|configtest) 
        $1 
        ;; 
    reload) 
        rh_status_q || exit 7 
        $1 
        ;; 
    force-reload) 
        force_reload 
        ;; 
    status) 
        rh_status 
        ;; 
    condrestart|try-restart) 
        rh_status_q || exit 0 
            ;; 
    *)    
      echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" 
        exit 2 
esac  
执行:

chmod 755 /etc/init.d/nginx
chkconfig –add nginx

nginx启动、停止、无间断服务重启

service nginx start
service nginx stop
service nginx reload

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LNMP一键安装包是什么?   LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。   我们为什么需要它?   编译安装需要输入大量的命令,如果是配置生产环境需要耗费大量的时间。   不会Linux的站长或Linux新手想使用Linux作为生产环境……   系统需求:   需要2 GB硬盘剩余空间   128M以上内存   安装步骤:   1、下载LNMP一键安装包:   可以选择使用下载(推荐国外或者美国VPS使用)或者完整(推荐国内VPS使用),如果使用下载执行命令 wget -c http://soft.vpser.net/lnmp/lnmp0.5.tar.gz,如果使用完整,执行命令 wget -c http://soft.vpser.net/lnmp/lnmp0.5-full.tar.gz,执行上述命令后LNMP一键安装包就会被下载到VPS上。   2、解压LNMP一键安装包:   执行tar zxvf lnmp0.5.tar.gz 或者tar zxvf lnmp0.5-full.tar.gz 就会将LNMP一键安装包解压缩。   3、CentOS下安装步骤   下载执行命令 cd lnmp0.5/ ,完整执行命令:cd lnmp0.5-full/   然后再执行./centos.sh ,输入要绑定的域名,回车,再输入要设置的MySQL root的密码,再次回车确认。程序会自动安装编译Nginx、PHP、MySQL、phpMyAdmin、Zend这几个软件。   4、Debian/Ubuntu下安装步骤   下载执行命令 cd lnmp0.5/ ,完整执行命令:cd lnmp0.5-full/   然后32位系统执行./debian.sh ,输入要绑定的域名,回车,再次输入VPS/服务器所在位置:asia、america、europe、oceania或africa,回车,再输入要设置的MySQL root的密码,回车后,再次回车确认。程序会自动安装编译Nginx、PHP、MySQL、phpMyAdmin、Zend这几个软件。安装大约10分钟左右需要设置MySQL root用户的密码。   安装其他组件   1、安装eAccelerator,执行如下命令:./eaccelerator.sh 就会自动安装并重启web服务。   2、安装ionCube,执行如下命令:./ionCube.sh 就会自动安装并重启web服务。   3、安装PureFTPd和管理面板,执行如下命令:./pureftpd.sh 就会自动安装PureFTPd,安装完PureFTPd,需要在浏览器执行http://你的域名或IP/ftp/install.php 安装PureFTPd用户管理。详细教程参考:http://www.vpser.net/manage/lnmp-pureftpd-cp.html   4、安装VsFTPD,执行如下命令:./vsftpd.sh 就会自动安装上vsftpd,只需要执行命令:useradd -d /home/wwwroot -s /sbin/nologin adminftp 添加上帐号指定好ftp帐号的根目录,再执行:passwd adminftp 设置上密码,登录就可以了。   虚拟主机管理   1、添加虚拟主机,执行如下命令:./vhost.sh 根据提示输入要绑定的域名,回车,如果需要添加更多的域名,输入y,再输入要另外绑定的域名,多个域名可以用空格隔开。再输入域名绑定的目录(绝对目录,如/home/wwwroot/lnmp,如果不填默认是/home/wwwroot/绑定的域名),再选择是否添加伪静态规则,默认已经有了Discuz、Wordpress、Sablog、emlog、dabr,可直接输入以上名称即可,如果需要添加自定义伪静态规则,直接输入一个想要的名字,程序会自动创建伪静态文件,直接在/usr/local/nginx/conf/你自定义的伪静态名字.conf 里面添加伪静态规则就行。接下来会提示是否需要启用日志功能,一般情况下不需要启动,直接输入n就行,如需启动,输入y,再输入要定义的日志文件名字,回车就会自动添加虚拟主机。     LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}   PureFTPd状态管理 /root/pureftpd {start|stop|restart|kill|status}   phpinfo : http://前面输入的域名或IP/phpinfo.php   phpMyAdmin : http://前面输入的域名或IP/phpmyadmin/   探针 : http://前面输入的域名或IP/p.php   MySQL root密码:如果不输入直接回车为root,否则为你输入的密码。     LNMP相关目录:   mysql : /usr/local/mysql   php : /usr/local/php   nginx : /usr/local/nginx   网站目录: /home/wwwroot

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值