一、安装
下载所需要安装包。放入/root/data中。
1、准备工作
1.1、关闭/卸载防火墙。命令:service iptables stop .然后卸载防火墙,先查询软件名称【rpm -qa iptables】,卸载#rpm -e 软件完整名称 --nodeps.
1.2、在linux中怎么解压压缩包
常见压缩包格式:gz、bz2. 两种解压格式不一样。
gz格式文件:tar -zxvf 需要解压的文件
bz2格式文件:tar -jxvf 需要解压的文件
2、安装zlib压缩库
#cd /root/data
#tar -zxvf zlib-1.2.5.tar.gz
#cd zlib-1.2.5
#./configure //对当前程序安装进行配置
#make && make install //编译&&安装 make 和 make install可分开
3、安装apache
查找系统中已安装的apache【rpm -qa httpd】,卸载已安装的apache【rpm -e apache软件完整名称 --nodeps】
安装apache:tar -jxvf httpd完整名称
解压完成后进入httpd目录 【./configure --prefix=usr/local/http2 --enable-modules=all -- enable-mods-shared=all --sysconfdir=/etc/httpd --enable-so】
--prefix:指定软件的安装目录,如果指定的目录不存在,则自动创建;
--enable-modules:指定加载 的模块;
--enable-mods-shared:表示模块以静态共享的方式进行安装;
--sysconfdir:指定软件的配置文件存放位置;
make && make install
修改Apache配置文件148行,去掉ServerName前的注释;
Apache启动/停止/重启命令:
apachectl start/stop/restart
通过主机浏览器访问虚拟机ip地址,查看apache是否安装成功。
4、安装libxml2
cd /root/data
tar -zxvf libxml2-2.7.2.tar.gz
cd libxml2-2.7.2
./configure --prefix=/usr/local/libcml2 --without-zlib //--without-zlib:不需要zilb依赖
make && make install
5、安装jpeg8
cd /root/data
tar -zxvf jpegsrc.v8b.tar.gz
cd jpeg-8b
./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
make && make install
6、安装libpng
cd /root/data
tar -zxvf libpng-1.4.3.tar.gz
cd libpng-1.4.3
./configure
make && make install
7、安装freetype(字体库软件)
cd /root/data
tar -zxvf freetype-2.4.1.tar.gz
cd freetype-2.4.1
./configure --prefix=/usr/local/freetype
make && make install
8、GD库(处理图片)
cd /root/data
tar -zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg/ --with-png --with-zlib --with-freetype=/usr/local/freetype
//--with-xxx:需要某扩展
make && make install
9、安装openssl(php扩展,用于https协议)
cd /root/data
tar -zxvf openssl-1.0.1t.tar.gz
cd ./openssl-1.0.1t
./config --prefix=/usr/local/openssl
make && make install
10.安装php5.3
cd /root/data
tar -jxvf php-5.3.6.tar.bz2
cd php-5.3.6
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/http2/bin/apxs --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd --with-zlib --with-libxml-dir=/usr/local/libxml2 --with-jpeg-dir=/usr/local/jpeg --with-png-dir --enable-mbstring=all --enable-mbregex --enable-shared --with-openssl-dir=/usr/local/openssl --with-openssl
make && make install
复制php配置文件到指定目录
cp phpini-development /usr/local/php/lib/php.ini
修改apache配置文件
//添加apache的mime类型(355行左右)
vim +355 /etc/http/http.conf
在mime类型模块中添加:
AddType application/x-http-php .php
在dir_modul模块添加默认文档声明(218行左右)
DirectoryIndex index.php index.html
重启apache :apachectl restart
创建文件位置:/usr/local/http2/htdocs 创建文件index.php 输入<?php phpinfo(); ?> 在浏览器访问虚拟机ip地址,如果有返回phpinfo内容则安装成功。
11、cmake
c语言编译器,mysql从5.5之后不再使用其他编译器。
cd /root/data
tar -zxvf cmake-3.6.0-rc1.tar.gz
cd ./cmake-3.6.0-rc1
./bootstrap
gmake
gmake install
运行bootstrap之后 的结果,如果有now run gmake,开始运行gmake.然后gmake install。
可以直接执行cmake查看是否安装成功。
12、安装ncurses-devel
需要从光盘镜像文件中安装,ls /mnt/dvd/Packages/ncurses-devel*
使用rpm命令进行安装:rpm -ivh ncurses-devel.xxxx
13、安装mysql
cd /root/data
tar -zxvf mysql-5.5.17.tar.gz
cd mysql-5.5.17
cmake \
-DCMAKE_INSTALL_PREFIC=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
make && make install
产生mysql配置文件(下面命令必须在mysql的解压目录中执行)
cp support-files/my-medium.cnf /etc/my.cnf
//如果提示是否覆盖,输入y
用户组及权限设置
useradd mysql
chmod u+x,g+x,o+x /usr/local/mysql
chown -R mysql.mysql /usr/local/mysql //chown 设置所有者
数据库的初始化。
/usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data & //&符号表示所在的命令后台执行 卡屏时,按回车
运行完初始化数据库后看到2个ok说明安装成功。
把mysql安装文件 (除data)的所有者都改成root,避免数据库恢复成出厂设置;
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/data
后台运行mysql服务
/usr/local/mysql/bin/mysqld_safe --user=mysql &
查看mysql是否启动:
ps -a | grep mysql
设置数据库密码:
use mysql;
UPDATE user SET Password=password('输入密码') WHERE user='root';
flush privileges;
将user表中的第一个user=root的用户host改成%就可以远程登录数据库了。
提示:如果在安装某个软件时出错,则需要重新进行安装,重新安装需要删除两个目录 ,第一个是通过 tar命令解压的目录;第二个是使用--prefix指定的目录;