【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证

文章目录

  • 源码安装相关理论
    • 源代码安装特点
    • 源码包安装步骤
  • 一、源码安装Apache
    • 1、编译安装依赖包 apr
    • 2、编译安装依赖包 apr-util
    • 3、编译安装依赖包 pcre
    • 4、编译安装 Apache
    • 5、重启 apache 服务
    • 6、修改网页显示内容
    • 7、访问测试
  • 二、源码安装Mysql
    • 1、把系统自带的 boost 库卸载,源码编译安装高版本
    • 2、卸载系统自带的 MySQL
    • 3、安装必要的资源包
    • 4、安装编译器及依赖包
    • 5、添加用户和组
    • 6、解压源码包
    • 7、规划安装目录
    • 8、编译安装 MySQL
    • 9、编译
    • 10、编译安装
    • 11、编辑配置文件
    • 12、添加 path 路径,让系统能读到 mysql 的命令
    • 13、使修改生效
    • 14、生成服务启动脚本
    • 15、修改权限
    • 16、初始化数据库
    • 17、启动服务
    • 18、数据库安全初始化设置
    • 19、登录数据库
    • 20、刷新权限
    • 21、查看当前数据库
    • 22、退出数据库
  • 三、源码安装PHP7.1.24
    • 1、Centos7 安装 epel 源
    • 2、安装所需依赖包
    • 3、配置相关参数
    • 4、编译&安装
    • 5、生成配置文件
    • 6、编辑 Apache 的配置文件,使其支持 php
    • 7、重启 apache 服务
    • 8、创建测试页
    • 9、测试,在浏览器输入:http://自己 IP 地址/index.php
    • 10、测试连接 mysql 是否成功
  • 四、源码LAMP部署验证
    • 1、Apache服务器验证
    • 2、Mysql验证
      • 2.1、登录数据库
      • 2.2、查看当前数据库
      • 2.3、退出数据库
    • 3、PHP验证
    • 4、PHP+Mysql验证


源码安装相关理论

源代码安装特点

源码包:即程序软件的源代码(一般也叫Tarball,即将软件的源码以tar打包后再压缩的资源包)。

开源,能看到代码并且可以按自己所需修改源代码
安装时要先在自己系统上编译再安装,所以更适合自己的系统,运行效率更高
需要编译所以比二进制包安装时间要长
编译安装过程中一旦报错新手难以解决


源码包安装步骤

  1. 官网下载源码包
  2. 解压缩
  3. 进入解压后的目录 执行命令
  4. “./config”,用于检测系统环境是否符合安装要求,此步骤会生成Makefile文件,里边写入了检测结果和一些定义好的功能选项。
  5. make 编译
  6. make clean (如果上两步执行出错了可以执行make
    clean,用于清空Makefile文件或编译产生的“.o”头文件)
  7. make install

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第1张图片
【图片转载】https://blog.csdn.net/w00347190/article/details/100770984


一、源码安装Apache

1、编译安装依赖包 apr

cd /opt/Apache 

tar xf apr-1.6.2.tar.gz -C /usr/local/src/ 

cd /usr/local/src/apr-1.6.2/ 

./configure --prefix=/usr/local/apr && make && make install 

2、编译安装依赖包 apr-util

cd /opt/Apache 

tar xf apr-util-1.6.0.tar.gz -C /usr/local/src/ 

cd /usr/local/src/apr-util-1.6.0/ 

./configure --prefix=/usr/local/apr-util –with-apr=/usr/local/apr/bin/apr-1-config && make && make install 

3、编译安装依赖包 pcre

cd /opt/Apache 

tar xf pcre-8.41.tar.gz -C /usr/local/src/ 

cd /usr/local/src/pcre-8.41/ 

./configure --prefix=/usr/local/pcre && make && make install

4、编译安装 Apache

cd /opt/Apache 

tar zxf httpd-2.4.37.tar.gz -C /usr/local/src/

cd /usr/local/src/httpd-2.4.37/ 

./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=event &&make && make install

选项说明:

–prefix=/usr/local/apache #安装路径 enable-so #支持动态加载模块 enable-rewrite #支持网站地址重写 enable-ssl #支持 SSL 加密 
–with-pcre=/usr/local/pcre #pcre 路径 
–with-apr=/usr/local/apr #apr 路径  
make install 
#(1)配置文件 
/usr/local/apache/conf/httpd.conf 
#(2)网站根目录 
/usr/local/apache/htdocs/index.html ##可以修改网页内容 
#(3)生成启动脚本 
cp /usr/local/apache/bin/apachectl /etc/init.d/ 
chmod +x /etc/init.d/apachectl 
#(4)写个 apache 系统服务脚本,754 权限保存 
vim /usr/lib/systemd/system/apache.service 
chmod 745 /usr/lib/systemd/system/apache.service 
#(5)启动服务 
systemctl enable apache 
systemctl start apache.service 
#(6)修改 Apache 的运行用户 
useradd -M -s /sbin/nologin apache #用该用户运行 Apache 
vim /usr/local/apache/conf/httpd.conf #修改配置文件改变Apache运行身份 
#(7)更改目录权限 
chown -R apache:apache /usr/local/apache/ 

5、重启 apache 服务

systemctl restart apache 

6、修改网页显示内容

vim  /usr/local/apache/htdocs/index.html

7、访问测试

在浏览器输入自己虚拟机 IP 地址:192.168.0.107
【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第2张图片


二、源码安装Mysql

1、把系统自带的 boost 库卸载,源码编译安装高版本

yum -y remove boost-* 

2、卸载系统自带的 MySQL

yum -y remove mysql mariadb-* 

3、安装必要的资源包

4、安装编译器及依赖包

yum install -y cmake make gcc gcc-c++ bison ncurses ncurses-devel 

5、添加用户和组

groupadd mysql
useradd -M -s /sbin/nologin -r -g mysql mysql 

6、解压源码包

cd /opt/Mysql 
tar xf boost_1_59_0.tar.gz -C /usr/local/src/ 
tar xf mysql-5.7.19.tar.gz -C /usr/local/src/ 
cd /usr/local/src/mysql-5.7.19 

7、规划安装目录

安装目录:/var/lib/mysql 
数据目录:/var/lib/mysql/data 
mkdir -p /var/lib/mysql/data 
chown -R mysql:mysql /var/lib/mysql 

8、编译安装 MySQL

cmake -DCMAKE_INSTALL_PREFIX=/var/lib/mysql \
-DMYSQL_DATADIR=/var/lib/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/src/boost_1_59_0
参数注释: 
DCMAKE_INSTALL_PREFIX:指定 MySQL 程序的安装目录,默认/usr/local/mysql 
DEFAULT_CHARSET:指定服务器默认字符集,默认 latin1 
DEFAULT_COLLATION:指定服务器默认的校对规则,默认 latin1_general_ci 
ENABLED_LOCAL_INFILE:指定是否允许本地执行 LOAD DATA INFILE,默认 OFF 
WITH_COMMENT:指定编译备注信息 
WITH_xxx_STORAGE_ENGINE:指定静态编译到 mysql存储引擎,MyISAM

9、编译

grep processor /proc/cpuinfo | wc -l #查看服务器 CPU 核心数 
make -j 2 
#注:-j 用来指定 CPU 核心数,可加快编译速度。例如:想使用 2 核来进行编译,则在-j 后加 2,可以提高编译速度,当然你要确定你的虚拟机CPU 多少核心 

10、编译安装

make install 

11、编辑配置文件

vim /etc/my.cnf 
[mysqld]
basedir=/var/lib/mysql
datadir=/var/lib/mysql/data
port=3306
socket=/var/lib/mysql/mysql.sock
character-set-server=utf8
log-error=/var/log/mysqld.log
pid-file=/tmp/mysqld.pid
[mysql]
socket=/var/lib/mysql/mysql.sock 
[client]
socket=/var/lib/mysql/mysql.sock

12、添加 path 路径,让系统能读到 mysql 的命令

vim /etc/profile.d/mysql.sh
export PATH=/var/lib/mysql/bin:$PATH

13、使修改生效

. /etc/profile.d/mysql.sh 

14、生成服务启动脚本

cp /var/lib/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

15、修改权限

 chown -R mysql:mysql /var/lib/mysql 

16、初始化数据库

/var/lib/mysql/bin/mysqld --initialize-insecure --user=mysql -- 
basedir=/var/lib/mysql --datadir=/var/lib/mysql/data 

17、启动服务

/etc/init.d/mysqld start 
如果启动失败,报错:
Starting MySQL… ERROR! The server quit without updating PID file 
(/tmp/mysqld.pid)
解决方法:
把数据目录删除,重新初始化:
cd /var/lib/mysql/data/
rm -rf ./*
/var/lib/mysql/bin/mysqld --initialize-insecure --user=mysql --
basedir=/var/lib/mysql --datadir=/var/lib/mysql/data
启动
/etc/init.d/mysqld start
Starting MySQL. SUCCESS!

18、数据库安全初始化设置

mysql_secure_installation  

MySQL5.7 提供了三种密码策略,可以根据需要设置复杂度不同的密码,输入两次密码,然后一直 Y 下去直至完成

19、登录数据库

mysql -u root -p  ## 密码填上一步初始化设置的密码 

20、刷新权限

mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec)

21、查看当前数据库

mysql> show databases; 

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第3张图片

22、退出数据库

mysql> exit

三、源码安装PHP7.1.24

1、Centos7 安装 epel 源

rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum clean all
yum list

2、安装所需依赖包

yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf 
freetype gd libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-
devel zlib curl curl-devel re2c php-pear
cd /opt/PHP
tar xf php-7.1.24.tar.gz -C /usr/local/src
cd /usr/local/src/php-7.1.24/

3、配置相关参数

./configure --prefix=/usr/local/php/ \
--with-apxs2=/usr/local/apache/bin/apxs \
--enable-mbstring \
--with-curl \
--with-gd \
--enable-fpm \
--enable-mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-config-file-path=/usr/local/php/etc/ \
--with-mysqli=mysqlnd \
--with-mysql-sock=/var/lib/mysql/mysql.sock \
--enable-maintainer-zts

PHP配置选项中文手册 http://php.net/manual/zh/configure.about.php

参数注释:
–with-apxs2 #将 php 编译为 Apache 的一个模块进行使用enable-mbstring #多字节字符串的支持
–with-curl #支持 cURL
–with-gd #支持 gd 库enable-fpm #支持构建 fpmenable-mysqlnd #启用 mysqlnd
–with-pdo-mysql #支持 pdo:MySQL 支持
–with-config-file-path #设置配置文件路径
–with-mysqli #支持 MySQLi
–with-mysql-sock #关联 mysql 的 socket 文件enable-maintainer-zts #如果 Apache 是 event 模型,那需要指定 zts

4、编译&安装

make -j 2 && make install

5、生成配置文件

cp php.ini-production /usr/local/php/etc/php.ini

6、编辑 Apache 的配置文件,使其支持 php

vim /usr/local/apache/conf/httpd.conf
在 393 行下面添加:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第4张图片

7、重启 apache 服务

systemctl restart apache.service

8、创建测试页

vim /usr/local/apache/htdocs/index.php

();
?>

9、测试,在浏览器输入:http://自己 IP 地址/index.php

能打开上图页面即为成功

10、测试连接 mysql 是否成功

vim /usr/local/apache/htdocs/index.php

$mysqli = new mysqli("localhost", "root", "123456");
 if(!$mysqli) {
 echo"database error";
 }else{
 echo"php env successful";
 }
 $mysqli->close();
 phpinfo();
?>

11、测试,在浏览器输入:http://自己 IP 地址/index.php
【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第5张图片

页面左上角显示字样即为连接成功


四、源码LAMP部署验证

1、Apache服务器验证

在浏览器输入自己虚拟机 IP 地址 :192.168.0.107
【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第6张图片

2、Mysql验证

2.1、登录数据库

mysql -u root -p   ##密码填上一步初始化设置的密码 

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第7张图片

2.2、查看当前数据库

mysql> show databases; 

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第8张图片

2.3、退出数据库

mysql> exit

3、PHP验证

【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第9张图片

4、PHP+Mysql验证

测试,在浏览器输入:http://192.168.0.107/index.php
【Linux】源码安装Apache、Mysql、PHP以及LAMP部署验证_第10张图片

你可能感兴趣的:(Linux,apache,linux,mysql)