源码编译安装LAMP (上)

前言

目录

前言

一、LAMP概述

(一)LAMP平台述

(二)、构建LAMP平台顺序

(三)编译安装的优点

(四)各组件的主要作用

二、安装Apache

(一)Apache特点

(二)环境准备

(三)编译安装过程

1、解压组件包和源码包

2、将件包移动到源码包目录下

3、安装编译器和依赖工具

4、confingure配置

5、make编译

6、创建软连接优化配置文件路径

7、设置启动脚本

8、修改地址文件

9、开启服务

三、 MySQL源码编译安装

1、MySQL概述

2、MySQL编译安装过程

1、安装插件与依赖环境

 2、创建程序用户管理

3、解压组件包

3、cmake编译

4、创建普通用户管理mysql

5、更改管理主/组

6、修改配置文件

7、初始化数据

8、开启服务Mysq验证是否安装成功

总结


Linux操作系统之所以能够在十余年的时间里发展壮大以至于风靡全球,其开放源代码的特性是很重要的原因之一,及Linux操作系统中包括内核在内的所有软件都可以获得源代码,并且可以经过定制修改后编译安装。

虽然现代的Linux发行版本大部分采用包管理机制对软件进行打包安装,可以省去软件的编译安装过程,但是还有些情况需要使用源代码编译的方式为系统安装新的应用程序。

一、LAMP概述

(一)LAMP平台述

LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整台系统和相关软件,能够提供动态web站点服务及其应用开发环境LAMP是一个缩写词,具体包括Linux操作系统,Apache网站服务器,MySQL数据库服务器,PHP(或perl,Python)网页编程语言
 

(二)、构建LAMP平台顺序

在构建LAMP平台时,各组件的安装顺序依次为Linux,Apache,MySQL,PHP

其中Apache和MySQL的安装并没有严格的顺序要求,而PHP环境的安装一般放到最后,负责沟通web服务器和数据库系统以协同工作

(三)编译安装的优点

1、具有较大的自由度,功能可定制
2、可及时获得最新的软件版本
3、普遍适用于大多数Linux版本,便于一直使用

(四)各组件的主要作用

(平台)Linux:作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性(AMP组件也支持Windows、UNIX等平台) 。

(前台)Apache:作为LAMP架构的前端,是一款功能强大,稳定性好的Web服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容。

(后台)MySQL:作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些信息。

二、安装Apache

(一)Apache特点

开放源代码,跨平台应用

支持多种网页编程语言

模块化设计,运行稳定,良好的安全性





(二)环境准备

VMware软件

centos7操作系统

准备Apache服务的源码包

Apache跨平台组件包准备

(三)编译安装过程

1、解压组件包和源码包

[root@localhost opt]# tar zxvf apr-1.6.2.tar.gz 

[root@localhost opt]# tar zxvf apr-util-1.6.0.tar.gz

2、将件包移动到源码包目录下

[root@localhost opt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr

[root@localhost opt] mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

3、安装编译器和依赖工具

yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl


gcc
##C语言的编译器

gcc-c++ 
##C++的编译器

make 
##源代码编译器(源代码转换成二进制文件)

pcre 
##pcre是一个Perl函数库,包括perl 兼容的正则表达式库

pcre-devel 
##perl的接口开发包

expat-devel ##用于支持网站解析HTML、XML文件

perl
##perl语言编译器




4、confingure配置

./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi


--prefix=/usr/local/httpd 
##指定 httpd 服务程序的安装路径

--enable-so 
##启用动态加载核心模块支持,使 httpd 具备进一步扩展功能的能力

--enable-rewrite 
##启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护

--enable-charset-lite 
##启动字符集支持,以便支持使用各种字符集编码的页面

--enable-cgi					
##启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力

5、make编译

make && make install

6、创建软连接优化配置文件路径

ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/

7、设置启动脚本

vim /etc/init.d/httpd

在开头插入
# chkconfig: 35 85 21  //35级别自动运行  第85个启动 第21个关闭
# description: Apache is a World Wide Web server


chkconfig --add httpd
##将httpd加入到系统管理器

8、修改地址文件

vim /usr/local/httpd/conf/httpd.conf

#--52行--修改
#Listen 192.168.200.50:80               主机节点
--197行--取消注释,修改
ServerName www.kgc.com:80               可以修改域名

--221行--默认首页存放路径
DocumentRoot "/usr/local/httpd/htdocs"  默认加载站点目录
--255行--默认首页文件名设置
DirectoryIndex index.html               默认加载首页文件名

9、开启服务

[root@localhost opt]# service httpd restart

[root@localhost opt]# netstat -anpt | grep 80
tcp6       0      0 :::80                   :::*       
             LISTEN      4840/httpd          

或者在浏览器输入主机IP

三、 MySQL源码编译安装

1、MySQL概述

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。

MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。

MySQL是一个真正的多线程,多用户的SQL数据库服务,凭借其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择


 

2、MySQL编译安装过程

1、安装插件与依赖环境

yum -y install \
gcc \
gcc-c++ \
ncurses \				#字符终端下图形互动功能的动态库
ncurses-devel \			#ncurses开发包
bison \					#语法分析器
cmake					#mysql需要用cmake编译安装


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


 2、创建程序用户管理
 

useradd -s /sbin/nologin mysql

3、解压组件包

tar zxvf mysql-5.7.17.tar.gz -C /opt
tar zxvf boost_1_59_0.tar.gz -C /usr/local/
mv /usr/local/boost_1_59_0 /usr/local/boost

3、cmake编译

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1

make && make install



-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \		
#指定mysql的安装路径

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ 
#指定mysql进程监听套接字文件(数据库连接文件)的存储路径

-DSYSCONFDIR=/etc \                             
#指定配置文件的存储路径

-DSYSTEMD_PID_DIR=/usr/local/mysql \           
 #指定进程文件的存储路径

-DDEFAULT_CHARSET=utf8  \                       
#指定默认使用的字符集编码,如 utf8

-DDEFAULT_COLLATION=utf8_general_ci \			
#指定默认使用的字符集校对规则

-DWITH_EXTRA_CHARSETS=all \						
#指定支持其他字符集编码

-DWITH_INNOBASE_STORAGE_ENGINE=1 \              
#安装INNOBASE存储引擎

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \               
#安装ARCHIVE存储引擎 

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \             
#安装BLACKHOLE存储引擎 

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \            
#安装FEDERATED存储引擎 

-DMYSQL_DATADIR=/usr/local/mysql/data \         
#指定数据库文件的存储路径

-DWITH_BOOST=/usr/local/boost \          
#指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost

-DWITH_SYSTEMD=1								
#生成便于systemctl管理的文件

4、创建普通用户管理mysql

[root@lamp ~]# useradd -s /sbin/nologin mysql
[root@lamp ~]# chown -R mysql:mysql /usr/local/mysql/

5、更改管理主/组

[root@lamp ~]# chown mysql:mysql /etc/my.cnf

6、修改配置文件

vim /etc/my.cnf	

7、初始化数据

cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \				#生成初始化密码为空
--user=mysql \                      #指定管理用户
--basedir=/usr/local/mysql \        #指定数据库的安装目录
--datadir=/usr/local/mysql/data		#指定数据库文件的存储路径

8、开启服务Mysq验证是否安装成功

systemctl daemon-reload         #刷新识别     
systemctl start mysqld.service  #开启服务
systemctl enable mysqld         #开机自启动
netstat -anpt | grep 3306       #查看端口

 端口已经开启

给root账号设置密码

mysqladmin -u root -p password "123456" 

以上Mysq就安装完成了

总结

以上只是Apache和MySQL的安装,对于LAMP架构还需要安装动态页面PHP。下篇将解释如何安装PHP和搭建点单的论坛。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值