首先 我把所有的软件编译包都放在了soft目录下面,所以先要创建soft文件夹,然后通过ftp把所有的编译包都上传到soft下面
关闭防火墙
[root@localhost ~]# service iptables stop
创建soft目录
[root@localhost /]# service iptables stop[root@localhost /]#mkdir /soft
1、mysql安装
[root@localhost /]# yum install ncurses-devel bison gcc-c++ libtool
添加mysql用户组,mysql用户
[root@localhost /]# /usr/sbin/groupadd mysql
[root@localhost /]# /usr/sbin/useradd -g mysql mysql
从官网下载了一个最新版的mysql源码包,准备安装一下,可是解压出来,却发现无法./configure。后来才知道mysql现在用cmake了,所以安装mysql之前需要安装cmake,cmake下载链接,下载后上传到soft下,编译安装
[root@localhost cmake-2.8.5]# ./configure --prefix=/usr/local/cmake
[root@localhost cmake-2.8.5]# make
[root@localhost cmake-2.8.5]# make install
[root@localhost cmake-2.8.5]# cd /soft
开始安装mysql mysql下载链接(都放在/soft下)
[root@localhost soft]mkdir -p /usr/local/webserver
[root@localhost src]# tar -zvxf mysql-5.5.7-rc.tar.gz
[root@localhost src]# cd mysql-5.5.28
[root@localhost mysql-5.5.28]#
../cmake-2.8.5/bin/cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/data/mysql/3306/data \
-DMYSQL_TCP_PORT=3306
配置参数解析(不是很全,如果有兴趣,可以google一下):
编译完成后开始安装
[root@localhost mysql-5.5.28]# make
[root@localhost mysql-5.5.28]# make install
编译时数据存到/data/mysql/3306/data中 所以需要创建目录 并且设置权限
[root@localhost mysql-5.5.28]# mkdir -p /data/mysql/3306/data
[root@localhost mysql-5.5.28]# cd /data
[root@localhost data]# chmod 777 .
[root@localhost data]# chmod 777 mysql/
[root@localhost data]# chown -R mysql:mysql mysql/
复制配置文件 并修改配置文件
[root@localhost data]# cp /usr/local/webserver/mysql/support-files/my-medium.cnf /etc/my.cnf
[root@localhost data]# vi /etc/my.cnf
修改的配置如截图 把innodb前面的额注释去掉 在后面加上两行代码
安装系统表
[root@localhost data]# cd /usr/local/webserver/mysql/
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql
设置系统变量 并重新加载
[root@localhost mysql]# vi /root/.bash_profile
[root@localhost mysql]# source /root/.bash_profile
添加到系统服务
[root@localhost mysql]# cp /usr/local/webserver/mysql/support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# chmod +x /etc/init.d/mysql
[root@localhost mysql]# vi /etc/init.d/mysql
[root@localhost mysql]# chkconfig --add mysql
[root@localhost mysql]# chkconfig --level 345 mysql on
开启服务 修改配置
root@localhost mysql]# service mysql start
[root@localhost mysql]# mysql –uroot //数据库
mysql> use mysql;
mysql> update user set Password=password('123456') where User='root';
mysql> flush privileges;
mysql> exit;
关闭防火墙 允许外部连接
[root@localhost mysql]# iptables -F
[root@localhost mysql]# iptables –X
[root@localhost mysql]# mysql -uroot –p
输入修改过的密码:123456(若在上一步不是123456,则输入你上次输入的)
mysql> use mysql
mysql> update user set Host='%' where User='root' and Host='localhost';
mysql> flush privileges;
mysql> exit;
[root@localhost mysql]# service mysql stop
[root@localhost mysql]# mysqld_safe --skip-grant-table
执行后是以下状态
然后另外开一个putty输入
[root@localhost ~]# mysql -uroot
mysql> use mysql;
mysql> delete from user where User='';
mysql> flush privileges;
mysql>exit;
[root@localhost ~]# /etc/rc.d/init.d/mysql status;
[root@localhost ~]# service mysql start
MySQL is running but PID file is not found 解决方案
1、 查看是否是因为权限原因
2、 ps aux | grep mysql 查看进程
kill -9 进程号
2、安装一些扩展
a.安装 jpeg6 建立目录
[root@localhost ~]# mkdir -p /usr/local/jpeg6
[root@localhost ~]#mkdir -p /usr/local/jpeg6/bin
[root@localhost ~]# mkdir -p /usr/local/jpeg6/lib
[root@localhost ~]# mkdir -p /usr/local/jpeg6/include
[root@localhost ~]#mkdir -p /usr/local/jpeg6/man
[root@localhost ~]#mkdir -p /usr/local/jpeg6/man1
[root@localhost ~]#mkdir -p /usr/local/jpeg6/man/man1
[root@localhost ~]#cd /soft
[root@localhost soft]# tar -zvxf jpegsrc.v6b.tar.gz
[root@localhost soft]# cd jpeg-6b/
[root@localhost jpeg-6b]# cp /usr/share/libtool/config/config.guess .
[root@localhost jpeg-6b]# cp /usr/share/libtool/config/config.sub .
[root@localhost jpeg-6b]# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static --build=x86_6v4
[root@localhost soft]# make && make install
--build=x86_6v4
只使用在64位系统中,如果是32位的 ,不需要此参数
b. 安装zlib
[root@localhost soft]# cd /soft/
[root@localhost soft]# tar -zxvf zlib-1.2.4.tar.gz
[root@localhost soft]# cd zlib-1.2.4
[root@localhost zlib-1.2.4]# mkdir /usr/local/zlib
[root@localhost zlib-1.2.4]# ./configure
[root@localhost zlib-1.2.4]# make && make install
c. libpng包
[root@localhost soft]# cd /soft/
[root@localhost soft]# tar -zvxf libpng-1.2.31.tar.gz
[root@localhost soft]# cd libpng-1.2.31
[root@localhost libpng-1.2.31]# ./configure --prefix=/usr/local/libpng
root@localhost libpng-1.2.31]# make && make install
d. 安装 freetype
[root@localhost soft]# cd /soft/
[root@localhost soft]# tar -zvxf freetype-2.3.5.tar.gz
[root@localhost soft]# cd freetype-2.3.5
[root@localhost freetype-2.3.5]# mkdir -p /usr/local/freetype
[root@localhost freetype-2.3.5]# ./configure --prefix=/usr/local/freetype
[root@localhost freetype-2.3.5]#make && make install
e.安装GD库
[root@localhost soft]# cd /soft/
[root@localhost gd-2.0.34]# tar -zvxf gd-2.0.34.tar.gz
[root@localhost soft]# mkdir -p /usr/local/gd2
[root@localhost soft]# cd gd-2.0.34
[root@localhost gd-2.0.34]# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6 --with-zlib-dir=/usr/local/zlib --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype
[root@localhost gd-2.0.34]# make
[root@localhost gd-2.0.34]# make install
如果出错
vi gd_png.c
找到“png.h”改成“/usr/local/libpng/include/png.h”)
e.安装Curl库
[root@localhost soft]# cd /soft/
[root@localhost soft]# tar -zvxf curl-7.15.3.tar.gz
[root@localhost soft]# mkdir -p /usr/local/curl
[root@localhost soft]# cd curl-7.15.3
[root@localhost curl-7.15.3]#./configure --prefix=/usr/local/curl
[root@localhost curl-7.15.3]#make && make install
安装libxml2
[root@localhost /]# cd /soft/
[root@localhost soft]# tar -jvxf libxml2-2.6.24.tar.bz2
[root@localhost soft]# cd libxml2-2.6.24
[root@localhost libxml2-2.6.24]# mkdir -p /usr/local/libxml2
[root@localhost libxml2-2.6.24]# ./configure --prefix=/usr/local/libxml2
[root@localhost libxml2-2.6.24]# make && make install
3、Linux下安装LAMP:安装apache2
[root@localhost soft]# cd /soft/
[root@localhost soft]# tar -zvxf httpd-2.2.22.tar.gz
[root@localhost soft]# cd httpd-2.2.22
[root@localhost httpd-2.2.22]# mkdir -p /usr/local/apache2
[root@localhost httpd-2.2.22]# ./configure --prefix=/usr/local/webserver/apache2 --enable-modules=so --enable-rewrite
[root@localhost httpd-2.2.22]# make && make install
[root@localhost httpd-2.2.22]# /usr/local/webserver/apache2/bin/apachectl -k start
用浏览器查看 http://localhost ,得到it works,说明apache已设置成功了.
修改配置文件
[root@localhost httpd-2.2.22]# vi /usr/local/webserver/apache2/conf/httpd.conf
把默认文档改为
DirectoryIndex index.php index.html
ServerName 127.0.0.1:80
[root@localhost httpd-2.2.22]# /usr/local/webserver/apache2/bin/apachectl -k stop
//停止apache
[root@localhost httpd-2.2.22]# /usr/local/webserver/apache2/bin/apachectl -k stop
安装PHP
[root@localhost /]# cd /soft/
[root@localhost soft]# tar -zvxf php-5.3.3.tar.gz
[root@localhost soft]# mkdir -p /usr/local/webserver/php5
[root@localhost soft]# cd php-5.3.3
[root@localhost htdocs]# ./configure --prefix=/usr/local/webserver/php5 \
--with-apxs2=/usr/local/webserver/apache2/bin/apxs \
--with-gd=/usr/local/gd2 \
--with-jpeg-dir=/usr/local/jpeg6 \
--with-zlib-dir=/usr/local/zlib \
--with-png-dir=/usr/local/libpng \
--with-freetype-dir=/usr/local/freetype \
--with-mysql=/usr/local/webserver/mysql \
--enable-mbstring=all \
--with-curl=/usr/local/curl \
--enable-mbregex \
--with-config-file-path=/usr/local/webserver/php5 \
--enable-ftp \
--enable-soap \
--with-libxml-dir=/usr/local/libxml2
[root@localhost htdocs]# make && make install
复制php.ini 修改apache配置文件
[root@localhost php-5.3.3]# cp php.ini-development /usr/local/webserver/php5/php.ini
[root@localhost php-5.3.3]# vi /usr/local/webserver/apache2/conf/httpd.conf
在LoadModule php5_module modules/libphp5.so
添加AddType application/x-httpd-php .php
重启apache就可以了根目录在/usr/local/webserver/apache2/htdocs/
可能在访问的时候提示下载,如果是提示下载的话 把DirectoryIndex 加上index.php 就可以了 重启apache