【環境構築】ubuntu 12.04+nginx+Percona 5.6.12+ph...


###       betav0.5         ###
#  root  
sudo passwd root
#  root
su root
#      ,          ,      ,      ?
gedit /etc/apt/sources.list 
apt-get update
apt-get remove -y apache2 apache2-utils apache2.2-common apache2.2-bin apache2-mpm-prefork apache2-doc apache2-mpm-worker mysql-common mysql-client mysql-server php5 php5-fpm pure-ftpd pure-ftpd-common pure-ftpd-mysql
apt-get -y autoremove

apt-get install -y gcc g++ make autoconf libltdl-dev libgd2-xpm-dev libfreetype6 libfreetype6-dev libxml2-dev libjpeg-dev libpng12-dev libcurl4-openssl-dev libssl-dev patch libmcrypt-dev libmhash-dev libncurses5-dev  libreadline-dev bzip2 libcap-dev ntpdate chkconfig diffutils sendmail iptables unzip

#####64 
ln -s /usr/lib/x86_64-linux-gnu/libpng* /usr/lib/
ln -s /usr/lib/x86_64-linux-gnu/libjpeg* /usr/lib/
#####32 
ln -s /usr/lib/i386-linux-gnu/libpng* /usr/lib/
ln -s /usr/lib/i386-linux-gnu/libjpeg* /usr/lib/

#########    
ntpdate tiger.sina.com.cn
hwclock -w

mkdir -p /data0/www/ php    
mkdir -p /data0/soft/        
mkdir -p /data0/service/etc/      
mkdir -p /data0/service/       
mkdir -p /data0/service/init.d/       
mkdir -p /data0/datas/mysql_data/       

############
/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
apt-get remove -y apparmor apparmor-utils
###       
groupadd mysql
useradd -g mysql mysql

groupadd www
useradd -g www www

####################  Percona-Server
#  cmake
tar zxvf cmake...tar.gz
./bootstrap
make
make install
apt-get install bison //     ,  cmake     

tar zxvf Percona-Server-5.6.12.rc.tar.gz
cd Percona....

#cmake . -LH               
####          -??   , 
cmake .\
 -DCMAKE_BUILD_TYPE:STRING:STRING=Release \
 -DSYSCONFDIR:PATH=/data0/service/Percona-Server-5.6.12    \
 -DCMAKE_INSTALL_PREFIX:PATH=/data0/service/Percona-Server-5.6.12 \
 -DENABLED_PROFILING:BOOL=ON \
 -DENABLE_DEBUG_SYNC:BOOL=OFF \
 -DMYSQL_DATADIR:PATH=/data0/datas/mysql_data \
 -DMYSQL_MAINTAINER_MODE:BOOL=OFF  \
 -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk,gb2312 \
 -DWITH_SSL:STRING=bundled \
 -DWITH_UNIT_TESTS:BOOL=OFF \
 -DWITH_ZLIB:STRING=bundled \
 -DWITH_PARTITION_STORAGE_ENGINE:BOOL=ON \
 -DINSTALL_LAYOUT:STRING=STANDALONE \
 -DCOMMUNITY_BUILD:BOOL=ON \
 -LH

make

make install

ln -sf /data0/service/Percona-Server-5.6.12 /data0/service/mysql

cp support-files/my-default.cnf /data0/service/etc/my.cnf
ln -sf /data0/service/etc/my.cnf /etc/my.cnf

cp support-files/mysql.server /data0/service/init.d/mysqld
chmod 755 /data0/service/init.d/mysqld 
ln -sf /data0/service/init.d/mysqld /etc/init.d/mysqld

echo "/data0/service/mysql/lib/" >> /etc/ld.so.conf
ldconfig


chown -R mysql.mysql /data0/datas/mysql_data/

chmod 700 /data0/soft/Percona-Server-5.6.12-rc60.4/scripts/mysql_install_db
/data0/soft/Percona-Server-5.6.12-rc60.4/scripts/mysql_install_db --user=mysql --basedir=/data0/service/Percona-Server-5.6.12 --datadir=/data0/datas/mysql_data/


/data0/service/mysql/bin/mysqladmin -u root password "123456"

/data0/service/mysql/bin/mysql -uroot -p"123456" -e"use mysql;update user set password=password('123456') where user='root';delete from user where user='';drop user ''@'%';flush privileges;"
##   
service mysqld start

################################  nginx
#  pcre
tar zxvf pcre-8.10.tar.gz
cd pcre-8.10
./configure --prefix=/usr
make 
make install

###    * 
tar zxvf nginx-****.tar.gz
cd nginx***
make clean
./configure --user=www --group=www --prefix=/data0/service/nginx-**** --with-http_stub_status_module --with-http_ssl_module

make && make install

ln -sf /data0/service/nginx-***** /data0/service/nginx
mkdir /data0/service/nginx/conf/vhost
mkdir /data0/service/nginx/conf/rewrite
mkdir -p /data0/www/default
###   log     ,       
mkdir -p /data0/www_logs

chown -R www.www /data0/www/

###        ,     ,         
cp ****/fcgi.conf /data0/service/nginx/conf/fcgi.conf
cp ****/nginx.conf /data0/service/nginx/conf/nginx.conf
cp ****/default.conf /data0/service/nginx/conf/vhost/000.default.conf
cp ****/init.nginxd /data0/service/init.d/nginxd

chmod 755 /data0/service/init.d/nginxd
rm -f /etc/init.d/nginxd
ln -sf /data0/service/init.d/nginxd /etc/init.d/nginxd

#     nginxd  nginx.conf default.conf    
#   
service nginxd start
#########################################  php5.5
####libiconv
tar zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr
make
make install
ldconfig
##################
http://www.bzip.org/downloads.html    bzip   。
tar zxvf bzip****.tar.gz
cd bzip***
make
make install
apt-get install libsnmp-dev
########
 tar zxvf php-5.5.1.tar.gz 

###         ...
#64
#ln -s /usr/lib/x86_64-linux-gnu/libssl.* /usr/lib/ 
#32
ln -s /usr/lib/i386-linux-gnu/libssl.* /usr/lib/ 
####  .... 

cd php-5.5.1
#####            ,  ,        ,  !
apt-get install postgresql
apt-get install install postgresql-9.1 postgresql-client-9.1 postgresql-client-common postgresql-common postgresql-server-dev-9.1
apt-get install libxslt-dev

##   --with-tidy=          tidy....      fpm ...    
./configure --enable-opcache --prefix=/data0/service/php-5.5.1 --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pgsql=/usr  --with-curl --with-openssl-dir --with-zlib-dir=/usr --with-xpm-dir=/usr --with-pdo-pgsql=/usr --with-pdo-mysql=mysqlnd --with-xsl=/usr --with-ldap --with-xmlrpc --with-iconv-dir=/usr --with-snmp=/usr --enable-exif --enable-calendar --with-bz2=/usr --with-mcrypt=/usr --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir=/usr --enable-mbstring --enable-zip --with-pear --with-libdir=/lib/i386-linux-gnu --with-config-file-path=/data0/service/etc --enable-fpm

make ZEND_EXTRA_LIBS='-liconv'

make install

ln -sf /data0/service/php-5.5.1 /data0/service/php
###       php.ini  
cp  php.ini-development   /data0/service/php/etc/php.ini
ln -sf /data0/service/php/etc/php.ini /data0/service/etc/php.ini


cd /data0/service/php/etc/ 
cp php-fpm.conf.default php-fpm.conf  
vim php-fpm.conf  
//       ,         ";"  
pid = run/php-fpm.pid  
error_log = log/php-fpm.log  
listen = 127.0.0.1:9000  
pm.max_children = 50  
pm.start_servers = 20  
pm.min_spare_servers = 5  
pm.max_spare_servers = 35  
pm.max_requests = 500
#         
user = www
group = www


cp /data0/soft/php-5.5.1/sapi/fpm/init.d.php-fpm /data0/service/init.d/php-fpm
chmod 755 /data0/service/init.d/php-fpm
ln -sf /data0/service/init.d/php-fpm /etc/init.d/php-fpm

vim php.ini
  :extension_dir="/data0/service/php-5.5.1/lib/php/extensions/no-debug-non-zts-20121212/"

######  ,  
service mysqld restart
service php-fpm start
service nginxd restart


##############################################
#                   ~    ~             #
##############################################