Debian中源代码方式安装Mysql+PHP+Nginx

. 安装依赖包

sudo apt-get install gcc make gdb autoconf g++ libncurses5-dev curl libssl-dev libcurl4-gnutls-dev libjpeg62-dev libpng12-dev libfreetype6-dev libsasl2-dev libperl-dev libtool libxml2-dev libtidy-dev libpcre3 libpcre3-dev libmcrypt-dev libmhash-dev

. mysql 安装

1. 下载mysql-5.1.40.tar.gz ,即mysql-5.1.40 的源代码压缩包。

2. 进入压缩包所在的目录,执行tar zxvf mysql-5.1.40.tar.gz

3. cd mysql-5.1.40

4. autoreconf --force --install

5. aclocal

6. libtoolize --automake --force

7. automake --force --add-missing

8. CFLAGS="-O3 -mpentiumpro -mstack-align-double" CXX=gcc CXXFLAGS="-O3 -mpentiumpro -mstack-align-double -felide-constructors -fno-exceptions -fno-rtti"

9. ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --enable-thread-safe-client --with-extra-charsets=all --with-client-ldflags=-all-static -with-mysqld-ldflags=-all-static --enable-assembler --with-unix-socket-path=/usr/local/mysql/var/mysql.sock --sysconfdir=/usr/local/mysql/etc --disable-shared --without-debug --enable-largefile --with-big-tables --without-uca --with-mysqld-user=mysql --with-pthread --with-pstack --with-plugins=all

10. make

11. sudo make install

12. cd /usr/local/mysql

13. sudo chown -R mysql .

14. sudo chgrp -R mysql .

15. sudo gedit /etc/mysql/my.cnf skip-bdb 一行注释掉

16. sudo bin/mysql_install_db --user=mysql -- --basedir=/usr/local/mysql

17. sudo chown -R root .

18. sudo ln -s /usr/local/mysql/share/mysql /usr/share/

16,18 也可以通过修改/etc/mysql/my.cnf 中相关参数解决。

经过以上安装步骤,mysql 安装成功。

mysql 服务器管理

启动mysql: sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

root 用户设定密码: sudo /usr/local/mysql/bin/mysqladmin -u root password 'new-password'

连接mysql 服务器: sudo /usr/local/mysql/bin/mysql -u root -p

关闭mysql: sudo /usr/local/mysql/bin/mysqladmin shutdown -p

设置 mysql 服务器开机自启动

cp support-files/mysql.server /etc/init.d/mysqld

ln -s /etc/init.d/mysqld /etc/rc2.d/S99mysql

ln -s /etc/init.d/mysqld /etc/rc0.d/K01.mysql

php 安装

1. 下载php-5.3.1.tar.gz ,即php-5.3.1 的源代码压缩包。

2. 进入压缩包所在的目录,执行tar zxvf php-5.3.1.tar.gz

3. cd php-5.3.1

4. ./configure --prefix=/usr/local/php \

--with-openssl \

--enable-bcmath \

--enable-safe-mode \

--with-curl \

--with-gd \

--enable-mbstring \

--with-mysql=/usr/local/mysql \

--with-mysql-sock=/var/run/mysqld/mysqld.sock \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--with-pdo-mysql=/usr/local/mysql \

--with-tidy \

--with-mcrypt \

--with-config-file-path=/etc

5. make

6. sudo make install

7. cp php.ini-development /etc/php.ini

nginx 安装

  1. 下载nginx-0.7.64.tar.gz ,即nginx-0.7.64 的源代码压缩包。

  2. 进入压缩包所在的目录,执行tar zxvf nginx-0.7.64.tar.gz

  3. cd nginx-0.7.64

  4. ./configure –prefix= /usr/local/nginx

  5. make;

  6. sudo make install

     

使 nginx 支持 php

sudo gedit /usr/local/nginx/conf/nginx.cnf

在文件中增加如下配置:

location ~ \.php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

nginx 管理

启动Nginx: sudo /usr/local/nginx/sbin/nginx

重启Nginx: sudo kill -HUP `cat /usr/local/nginx/logs/nginx.pid`

停止Nginx: sudo killall nginx

 

四 安装spawn-fcgi

Php 使用fastcgi 方式配置,但是直接使用php-cgiFastCGI 运行方式有两个问题

  1. 如果进程崩溃,难以配置重新启动

  2. 单进程的效率低

所以,我们使用Lighttpdspawn-fcgi 来控制进程的运行。本来spawn-fcgiLighttpd 的一个模块,现在已经成为一个独立的开源项目。

  1. 下载spawn-fcgi-1.6.3.tar.gz ,即spawn-fcgi-1.6.3 的源代码压缩包。

  2. 进入压缩包所在的目录,执行tar zxvf spawn-fcgi-1.6.3.tar.gz

  3. cd spawn-fcgi-1.6.3

  4. ./configure –prefix= /usr/local/spawn-fcgi

  5. make;

  6. sudo make install

 

spawn-fcgi 的管理

监听PHP

sudo /usr/local/spawn-fcgi/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/local/php/bin/php-cgi

参数含义如下

* -f <fcgiapp> 指定调用FastCGI 的进程的执行程序位置,根据系统上所装的PHP 的情况具体设置

* -a <addr> 绑定到地址addr

* -p <port> 绑定到端口port

* -s <path> 绑定到unix socket 的路径path

* -C <childs> 指定产生的FastCGI 的进程数,默认为5 (仅用于PHP

* -P <path> 指定产生的进程的PID 文件路径

* -u -g FastCGI 使用什么身份( -u 用户 -g 用户组)运行, Debian 下可以使用 www-data ,其他的根据情况配置,如 nobody apache

五 安装phpMyAdmin

  1. 下载phpMyAdmin-3.2.3-all-languages.tar.gz

  2. 进入压缩包所在的目录,执行sudo tar zxvf phpMyAdmin-3.2.3-all-languages.tar.gz -C /usr/local/nginx/html/

  3. sudo mv /usr/local/nginx/html/phpMyAdmin-3.2.3-all-languages /usr/local/nginx/html/mysqlAdmin

你可能感兴趣的:(nginx,mysql,PHP,Debian,lighttpd)