所需的源码包请自行下载 , 可能编译时会报错gcc版本太低可参考https://www.cnblogs.com/lzpong/p/5755678.html
一、编译环境
yum -y install make apr* autoconf automake curl-devel gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel gd kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch cmake wget vim lrzsz pcre pcre-devel
二、 安装MySQL
1.安装一些MySQL所需依赖
yum -y install cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel
2.下载MySQL源码包 可以下载到本地之后再用rz命令上传 如果没有rz命令, 下载 yum -y install lrzsz
之后解压, 进入解压之后的mysql目录
3. 执行命令
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data/ -DSYSCONFDIR=\etc\mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=/tmp/boost_1_60_0/
执行成功之后
make
make install
// 若是需要权限控制
设置权限
使用下面的命令查看是否有mysql用户及用户组
cat /etc/passwd 查看用户列表
cat /etc/group 查看用户组列表
如果没有就创建
groupadd mysql
useradd -g mysql mysql
修改/usr/local/mysql权限
chown -R mysql:mysql /usr/local/mysql
进入安装目录
cd /usr/local/mysql
进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!
注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。
启动MySQL
添加服务,拷贝服务脚本到init.d目录,并设置开机启动
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start --启动MySQL
// 修改密码 再/usr/local/mysql目录下
./bin/mysqladmin -u root password 123456
MySQL启动成功后,root默认没有密码,我们需要设置root密码。
设置之前,我们需要先设置PATH,要不不能直接调用mysql
修改/etc/profile文件,在文件末尾添加
PATH=/usr/local/mysql/bin:$PATH
export PATH
关闭文件,运行下面的命令,让配置立即生效
source /etc/profile
在终端内直接输入mysql进入,mysql的环境了
mysql -uroot -p
参考:https://www.cnblogs.com/itafter/p/4764857.html
https://blog.csdn.net/nowzhangjunzhe/article/details/83687521
三、安装apache
1. 下载源码包 我自己的源码包都是下载到了本地windows,之后再rz上传 、解压,解压之后的目录为httpd-2.4.20
2.下载apr和apr-util 源码包 解压复制到 httpd-2.4.34/srclib/ 目录下
tar -zvxf apr-1.6.3.tar.gz
cp apr-1.6.3 httpd-2.4.20/srclib/ apr
tar -zvxf apr-util-1.6.1.tar.gz
cp apr-util-1.6.1 httpd-2.4.20/srclib/ apr-util
3.安装依赖pcre 要先下载pcre源码包 解压 切换到解压之后的目录 再安装到指定目录
tar -zvxf pcre-8.42.tar.gz
cd pcre-8.42
./configure --prefix=/usr/local/src/pcre/ 指定安装目录
make && make install 编译安装
4.安装apache
cd httpd-2.4.34
./configure --prefix=/usr/local/apache --with-pcre=/usr/local/src/pcre/bin/pcre-config --with-included-apr --enable-module=so --enable-rewrite --enable-cgid --enable-cgi
--libdir=/usr/lib64 操作系统是64位时加上
make
make install
5.开启apache服务
/usr/local/apache/bin/apachectl -k start
6. 防火墙允许访问80端口
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT #开启80端口
/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT #开启22端口
/etc/rc.d/init.d/iptables save #保存配置
/etc/rc.d/init.d/iptables restart #重启服务
四、安装PHP
1.下载PHP源码包 官网下载 之后rz命令从本地上传 tar -zxvf 压缩包名称 解压
2.进入解压之后的目录 执行
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --enable-fpm
4.make
make install
5.一般在源码包解压之后的目录中有 php.ini-development 文件 可复制到php/etc/php.ini
php -i | grep php.ini 查看php.ini需要放置的目录 一般编译安装时不指定config路径则指向php/lib,若是指向php/lib,则php.ini-development 文件 复制到php/lib/php.ini
五、apache支持PHP
编辑 /usr/local/apache/conf/httpd.conf
找到:
AddType application/x-gzip .gz .tgz
在后面添加:
AddType application/x-httpd-php .php
找到: <IfModule dir_module> DirectoryIndex index.html </IfModule>
修改为: <IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
找到: #ServerName www.example.com:80
修改为: ServerName 127.0.0.1:80
重启apache服务