首页 > 其他 > 详细

编译安装LNMP

时间:2016-02-17 20:39:08      阅读:225      评论:0      收藏:0      [点我收藏+]

1. MySQL的编译安装:

1. 增加一个mysql用户:-M就不生成家目录

# useradd -s /sbin/nologin -M mysql

2. 在data目录下面建立一个mysql目录,并修改权限:-p创建级联目录,-R继承权限

# mkdir -p /data/mysql
# chown -R mysql:mysql /data/mysql

3. 下载MySQL安装包:下载地址选择的是搜狐镜像:mirrors.sohu.com,需要其余版本的可以在里面自己找。源码包的大小目前不超过100M(2016年)。

# cd /usr/local/src
# wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.11.tar.gz

4. 下载完成后,将mysql解压并进行cmake和后续操作:

# tar zxvf mysql-5.7.11.tar.gz
# cd mysql-5.7.11 # cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/-DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

# make && make install

因为MySQL本身很大,所以,make的时间会非常长。

5. 下面进行初始化:

./scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql

出现错误: bash: ./scripts/mysql_install_db: 权限不够;查询./scripts/mysql_install_db的权限,发现没有x:

# ll ./scripts/mysql_install_db
-rw-r--r-- 1 mysql mysql 33853 12月  3 18:24 ./scripts/mysql_install_db

添加x权限,重新初始化:

# chmod a+x ./scripts/mysql_install_db
# ./scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql

6. 初始化成功,出现两个 OK,说明初始化成功。拷贝配置文件到相应位置:

# cp my.cnf /etc/my.cnf
## 覆盖原来的my.cnf
# cd support-files/
# cp mysql.server /etc/init.d/mysqld
# chmod 755 !$
# /etc/init.d/mysqld start
# ps aux |grep mysqld

启动MySQL服务以后,在进程里面可以看到mysqld。

 

2. php的编译安装

针对Nginx的php安装和针对apache的php安装是有区别的。区别在于,Nginx中的php是以fastcgi的方式结合nginx的。可以理解为nginx代理了php的fastcgi,而apache是把php作为自己的模块来调用的。
PHP官方下载地址: http://www.php.net/downloads.php,以5.4版本为例:

php和nginx的安装没有顺序,下面就先安装php。

1. 下载和建立用户

# cd /usr/local/src
# wget http://au1.php.net/distributions/php-5.4.44.tar.bz2
# tar jxf php-5.4.44.tar.bz2
# useradd -s /sbin/nologin php-fpm

2. 配置编译参数:

# cd php-5.4.44
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --enable-zend-multibyte --disable-ipv6 --with-pear --with-curl --with-openssl

3. 安装 

# make && make install

4.修改配置文件:

# cp php.ini-production /usr/local/php/etc/php.ini
# vim /usr/local/php/etc/php-fpm.conf
## 添加如下配置:
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
## 保存配置文件后,检验配置是否正确的方法为:
# /usr/local/php/sbin/php-fpm -t,可以设立一个alias。

5. 启动php
首先要拷贝一个启动脚本到/etc/init.d/下

# cp /usr/local/src/php-5.3.27/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod 755 /etc/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig php-fpm on
## 上面添加开机启动
# useradd -s /sbin/nologin -M php-fpm
## 在LNMP环境中,php是以一个服务方式来提供的,配置的时候,user = php-fpm; group = php-fpm就指定了这个用户,因此,需要建立一个php-fpm不可登录的账户来运行php-fpm服务。
# service php-fpm start
# ps aux |grep php-fpm

 

编译安装LNMP

原文:http://www.cnblogs.com/llius/p/5196305.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!