CentOS+Apache+Mysql+Php安装及优化配置小记

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:
     本文软件的下载地址就不列出,主要是记录安装时的步骤及相关问题的处理方法;基于安装方法目前有两种,一种是利用RPM包安装,一种源码编译安装;以下主要是以源码编译安装;因为源码安装软件的相互依赖性小,安装方式用各种unix/linux系统,维护方便。如果想去除相关服务时,直接rm –rf目录 即可;建议采用源码方式安装; 
系统环境和需要的软件: 
1、CentOS 
2、httpd-xxx.tar.gz 
3、php5-xxx.tar.gz 
4、mysql-xxx.tar.gz 
5、所有软件安装目录/usr/local/ 
服务器软件安装顺序:Apache(httpd) --> Mysql --> PHP

Apache编译安装
[root@server src]# tar -zxvf /home/soft/httpd-2.0.63.tar.gz
[root@server src]# cd httpd-2.0.63/
[root@server httpd-2.0.63]#./configure --prefix=/usr/local/apache --enable-so 
[root@server httpd-2.0.63]# make clean; make 
[root@server httpd-2.0.63]## make install 
执行完以上命令后,执行 /usr/local/apache/bin/httpd -l检查mod_so模块是否已编译,如下图:



Mysql编译安装

[root@server src]# tar -zxvf /home/soft/mysql-5.0.56.tar.gz
[root@server src]# cd mysql-5.0.56/
[root@server mysql-5.0.56]# ./configure --prefix=/usr/local/mysql
[root@server mysql-5.0.56]#make clean; make
[root@server mysql-5.0.56]#make install
[root@server mysql-5.0.56]#useradd mysql
[root@server mysql-5.0.56]#cp support-files/my-medium.cnf  /etc/my.cnf
[root@server mysql-5.0.56]#cd /usr/local/mysql
[root@server mysql]#./bin/mysql_install_db  --user=mysql //初始化数据库
[root@server mysql]#chown -R root .
[root@server mysql]#chown -R mysql var
[root@server mysql]#chgrp -R mysql .
[root@server mysql]# ./bin/mysqld_safe --user=mysql &   启动mysql
[root@server mysql]# ./bin/mysql –u root -p密码为空,直接回车

PHP编绎安装
[root@server src]# tar -zxvf /home/soft/soft/php-5.2.6.tar.gz
[root@server src]# cd php-5.2.6/
[root@server php-5.2.6]# ./configure --prefix=/usr/local/php 
-with-apxs2=/usr/local/apache/bin/apxs -with-mysql=/usr/local/mysql  //如果不先安装mysql,这一步将会出错
[root@server php-5.2.6]#make clean; make
[root@server php-5.2.6]#make install
[root@server php-5.2.6]#cp php.ini-dist /usr/local/php/lib/php.ini
在配置过程中,除了指定安装目录外,还有-with-apxs2和-with-mysql这两个选项。-with-apxs2的作用是与 apache的工具apxs配合,产生模块文件到目录/usr/local/apache/modules/,同时也会自动在apache的配置文件中写入一行"LoadModule php5_module        modules/libphp5.so";
接着需要把php与apache整合在一起,这个过程很简单,由于在安装php时已经完成了模块的加载,接下来只要在apache的配置文件 httpd.conf加上"AddType application/x-httpd-php .php"一行就行了(注:.php前面有空格)。然后在目录/usr/local/apache/htdocs下创建一个最简单的php测试文件,如下图:

保存退出后检查一下apache配置文件是否正确并启动apache服务,如下:
[root@server ~]# /usr/local/apache/bin/httpd -t
Syntax OK
[root@server ~]# /usr/local/apache/bin/apachectl start
利用WINXP客户端在浏览器输入刚配置的这个服务器的url,正常的话,将得到类似下图的页面,由于之前配置过DNS,因此这里直接输域名,并测试DNS是否正常工作;


测试PHP:

以上所有测试完成!
关于优化Apache的性能,需要对worker.c这个模块进行配置。不同配置、不同流量的服务器需要有不同的设置方式,以达到性能最优化!这里只是做简单介绍:
/usr/local/apache/conf/httpd.conf

<IfModule worker.c>
ServerLimit 20
#服务器允许配置的进程数上限。这个指令和ThreadLimit结合使用设置了MaxClients最大允许配置的数值。任何在重启期间对这个指令的改变都将被忽略,但对MaxClients的修改却会生效。
ThreadLimit 200
#每个子进程可配置的线程数上限。这个指令设置了每个子进程可配置的线程数ThreadsPerChild上限。任何在重启期间对这个指令的改变都将被忽略,但对ThreadsPerChild的修改却会生效。默认值是"64".
StartServers 5
#服务器启动时建立的子进程数,默认值是"3"。
MinSpareThreads 50
#最小空闲线程数,默认值是"75"。这个MPM将基于整个服务器监视空闲线程数。如果服务器中总的空闲线程数太少,子进程将产生新的空闲线程。
MaxSpareThreads 250
# 设置最大空闲线程数。默认值是"250"。这个MPM将基于整个服务器监视空闲线程数。如果服务器中总的空闲线程数太多,子进程将杀死多余的空闲线程。 MaxSpareThreads的取值范围是有限制的。Apache将按照如下限制自动修正你设置的值:worker要求其大于等于 MinSpareThreads加上ThreadsPerChild的和
MaxClients 2000
# 允许同时伺服的最大接入请求数量(最大线程数量)。任何超过MaxClients限制的请求都将进入等候队列。默认值是"400",16 (ServerLimit)乘以25(ThreadsPerChild)的结果。因此要增加MaxClients的时候,你必须同时增加 ServerLimit的值。
ThreadsPerChild 100
#每个子进程建立的常驻的执行线程数。默认值是25。子进程在启动时建立这些线程后就不再建立新的线程了。
MaxRequestsPerChild 10000
#设置每个子进程在其生存期内允许伺服的最大请求数量。到达MaxRequestsPerChild的限制后,子进程将会结束。如果MaxRequestsPerChild为"0",子进程将永远不会结束。
#将MaxRequestsPerChild设置成非零值有两个好处:
#1.可以防止(偶然的)内存泄漏无限进行,从而耗尽内存。
#2.给进程一个有限寿命,从而有助于当服务器负载减轻的时候减少活动进程的数量。
以上学习小记,如有不足之处,请博友们指教,THX。。。。。。










本文转自 liang831002 51CTO博客,原文链接:http://blog.51cto.com/leo0216/88422,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
26天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
75 20
|
1月前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
165 42
|
2月前
|
运维 JavaScript 应用服务中间件
os-copilot安装与多项功能测评,帮助开发人员PHP环境排查问题
本文介绍了OS Copilot在ECS上 Alibaba Cloud Linux的安装与使用,并对其多项参数进行了功能测评。OS Copilot是为操作系统提供智能化辅助的工具,支持自动化任务、智能推荐、故障排查等功能。安装时需检查是否已安装(`rpm -q os-copilot`),若未安装则用`yum install os-copilot`命令安装,并配置AccessKey信息连接阿里云服务。通过测试不同参数命令,如`-t`参数,展示了其自动化执行和智能生成回答的能力,显著提升运维效率。
os-copilot安装与多项功能测评,帮助开发人员PHP环境排查问题
|
2月前
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
251 16
|
2月前
|
关系型数据库 MySQL 应用服务中间件
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
148 7
|
3月前
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
142 14
|
3月前
|
安全 关系型数据库 MySQL
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
356 9
|
9天前
|
存储 大数据 数据处理
您有一份 Apache Flink 社区年度报告请查收~
您有一份 Apache Flink 社区年度报告请查收~
|
3月前
|
存储 SQL 人工智能
Apache Flink 2.0:Streaming into the Future
本文整理自阿里云智能高级技术专家宋辛童、资深技术专家梅源和高级技术专家李麟在 Flink Forward Asia 2024 主会场的分享。三位专家详细介绍了 Flink 2.0 的四大技术方向:Streaming、Stream-Batch Unification、Streaming Lakehouse 和 AI。主要内容包括 Flink 2.0 的存算分离云原生化、流批一体的 Materialized Table、Flink 与 Paimon 的深度集成,以及 Flink 在 AI 领域的应用。
675 13
Apache Flink 2.0:Streaming into the Future
|
3月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
428 33
The Past, Present and Future of Apache Flink