本文用最新的CentOS5.6+Nginx1.0+PHP5.3.6+Mysql5.5.11构建LNMP(X64)平台。
文档以[Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)为蓝本。
一、获取相关开源程序
1、本文基本以源码编译为主,首先需要安装基础编译环境所需要的软件和库。本文安装CentOS系统时只安装最基础的包(安装时软件套件选择时只选了Server一项),下面的所需要的包可根据自己系统环境情况自行调整。
a)、通过CentOS光盘安装(以光盘作为Yum源)
1 2 3 4 5 6 7 8 9 10 | mkdir /media/CentOS/ mount /dev/cdrom /media/CentOS/ yum -y --disablerepo=\* --enablerepo=c5-media 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 libtool libtool-libs \ libevent-devel libevent openldap openldap-devel nss_ldap openldap-clients \ openldap-servers libtool-ltdl libtool-ltdl-devel bison |
b)、通过mirrors.163.com安装(以mirrors.163.com为Yum源)
1 2 3 4 5 6 7 8 9 10 11 | mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget http://mirrors.163.com/.help/CentOS5-Base-163.repo yum makecache yum -y --enablerepo=c5-media 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 libtool libtool-libs \ libevent-devel libevent openldap openldap-devel nss_ldap openldap-clients \ openldap-servers libtool-ltdl libtool-ltdl-devel bison |
2、下载最新的Nginx、Mysql、PHP程序及相关库的源码包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | mkdir -p /data0/software cd /data0/software wget http://nginx.org/download/nginx-1.0.0.tar.gz wget http://cn.php.net/get/php-5.3.6.tar.gz/from/this/mirror wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.11.tar.gz/from/http://mysql.ntu.edu.tw/ wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0" wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0" wget http://pecl.php.net/get/memcache-2.2.6.tgz wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0" wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.12.tar.gz wget http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2 wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz wget ftp://mirror.aarnet.edu.au/pub/imagemagick/ImageMagick-6.6.9-9.tar.gz wget http://pecl.php.net/get/imagick-3.0.0.tgz wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz |
二、安装MySQL 5.5.11
1、首先安装CMAKE(Mysql5.5.11已经采用CMAKE编译)
1 2 3 4 5 6 | tar zxvf cmake-2.8.4.tar.gz cd cmake-2.8.4 ./configure --prefix=/usr make make install cd .. |
2、安装MySQL 5.5.11
a)新建一个用于运行MySQL的用户
1 2 | /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql |
b)解包并编译安装MySQL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | tar xvf mysql-5.5.11.tar.gz cd mysql-5.5.11 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ \ -DMYSQL_DATADIR=/data0/mysql/data \ -DMYSQL_UNIX_ADDR=/data0/mysql/mysqld.sock \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_TCP_PORT=3306 \ -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DMYSQL_UNIX_ADDR=/data0/mysql/mysql.sock \ -DWITH_DEBUG=0 \ -DWITH_READLINE=1 \ -DWITH_SSL=yes \ -DSYSCONFDIR=/data0/mysql make make install cd .. |
c)将MySQL安装目录的权限赋予mysql用户
1 2 | chmod +w /usr/local/webserver/mysql chown -R mysql:mysql /usr/local/webserver/mysql |
d)创建MySQL数据库存放目录
1 2 3 4 | mkdir -p /data0/mysql/data/ mkdir -p /data0/mysql/binlog/ mkdir -p /data0/mysql/relaylog/ chown -R mysql:mysql /data0/mysql/ |
e)以mysql用户帐号的身份建立数据表
1 | /usr/local/webserver/mysql/scripts/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/data0/mysql/data --user=mysql |
[...] 转载自:http://www.mike.org.cn/articles/centos56-x64-compile-install-lemp/ [...]
[...] 由于某个深夜里,我突发的一个想法所致,导致我那天深夜买了一个美国的vps和现在的域名 weiguoqing.me ,之后的安装环境把我这个没有正式接触过lnmp的新手给弄得水里来火里去的,不过经过这次的折腾,好歹也学习了挺多的知识。比较郁闷的是由于我刚得到vps的时候太兴奋,完全忘了是在工作时间,所以导致那天我工作效率极其低,另外更郁闷的是第二天的时候,我负责的一个站点有在搞一个活动,导致站点的访问量突然大增,站点就悲惨的挂了,顺带还把同一个站群的所有站点弄挂,于是我在各方领导的指示下就开始漫长而又艰苦的苦干之中,十分符合当下流行的 “唱红歌,艰苦奋斗”的精神。在搞了一个1天半后,终于稍微恢复了,由于这个突发事件的影响,今天的我博客才上线。话说本来想把自己安装整个lnmp的过程记录下来,但是由于发现这边文章写的更加详细,好吧,就只要参照那篇文章就好了。总结下这两天遇到的事情就是 “高并发的尼玛伤不起,通宵修改代码的尼玛伤不起,菜鸟的尼玛更加伤不起!!!! 此条目发表在 未分类 分类目录。将固定链接加入收藏夹。 [...]
[...] 文档以上次写的[CentOS 5.6(X64)下编译安装LNMP平台(Nginx1.0+PHP5.3.6+Mysql5.5.11)]为基础,将相关内容修改成了Unbutu的方式。 [...]
[...] 文章来源:http://www.mike.org.cn/articles/centos56-x64-compile-install-lemp/ 本文用最新的CentOS5.6+Nginx1.0+PHP5.3.6+Mysql5.5.11构建LNMP(X64)平台。 [...]
谢谢博主!我按您的方法成功装好了,可是效果不知道为什么很差。我买的是万网的云主机,默认的环境是CentOS5.4+AMP, 换成博主的EMP后性能只有原来的三分之一了。默认的AMP下,webbench 100 clients, running 30 sec.Speed=109076 pages/min, -58875016 bytes/sec.(不知道这个数为什么是负的),换成EMP后,100 clients, running 30 sec.Speed=62654 pages/min, 18369618 bytes/sec.这些数字我都是测了有十次以上,每次的结果都相差不大,测试的页面内容都是phpinfo,百思不得其解,EMP居然不敌AMP,不知道是什么原因。
[回复]
easylife
Google Chrome 15.0.874.106
Windows 7回复:
十一月 12th, 2011 at 13:06
@七彩旋律, 国内的云主机大多数都是虚拟化产品,这个和环境有很大关系!
[回复]