centos7源码编译LAMP架构

本博客采用的版本是httpd-2.4.16.tar.gz mysql-5.6.36.tar.gz php-5.6.8.tar.bz2

apache源码编译

下载地址链接:https://pan.baidu.com/s/1wSsZHwjM3akmNiTPBvzwjg
提取码:love

编译环境部署

编译环境

yum install apr-devel apr-util-devel -y

解压编译

#解压
tar zxf httpd-2.4.16.tar.gz 
cd  httpd-2.4.16/
#检查环境
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite
#编译&编译安装
 make&&make install

mysql 源码编译

创建数据存放目录

mkdir  -p  /data/mysql

创建mysql用户

useradd -s /sbin/nologin mysql  #创建mysql用户 | 不可登录用户
chown -R mysql:mysql /data/mysql  #赋予mysql用户数据库存放目录的权限

编译环境部署

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

解压编译

#解压
tar zxf mysql-5.6.36.tar.gz
cd mysql-5.6.36/
#检查环境
cmake  . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql56 \  #编译后的文件存放路径
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \   #MYSQL Socket通信文件位置
-DMYSQL_DATADIR=/data/mysql \   #mysql数据存放位置 | 这个是根目录下的data目录,默认是没有的需要手动创建
-DSYSCONFDIR=/etc \  #配置文件存放目录
-DMYSQL_USER=mysql \  #用户
-DMYSQL_TCP_PORT=3306 \   #端口
-DWITH_XTRADB_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EXTRA_CHARSETS=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_BIG_TABLES=1 \
-DWITH_DEBUG=0
#编译&编译安装
make&&make install

编辑/etc/my.cnf配置文件

#复制默认配置文件到etc下并改名为my.cnf
cd /usr/local/mysql56/support-files
cp my-default.cnf  /etc/my.cnf
cd /etc/
vim my.cnf
#分割线下面是配置文件
--------------------------------------------------------------------------------------------------------------------
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
 basedir = /usr/local/mysql56  #mysql源码安装位置
 datadir = /data/mysql  #mysql数据存放位置
 port = 3306  #端口
 #server_id = .....
 socket = /tmp/mysql.sock    #MYSQL Socket通信文件位置

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

初始化mysql数据库

#整个命令:
cd /usr/local/mysql56/bin/
#初始化
 /usr/local/mysql56/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql56 --datadir=/data/mysql/
解释:
 /usr/local/mysql56/scripts/mysql_install_db  #<---执行脚本
 --user=mysql     #<---用户
 --basedir=/usr/local/mysql56  #<---数据库安装路径
 --datadir=/data/mysql/    #<---数据库文件路径
 #这些参数路径要和上面的配置文件一致

拷贝启动脚本文件到init.d目录下 | 方便启动mysql

cd /usr/local/mysql56/support-files
cp mysql.server /etc/init.d/mysqld

启动mysql

service mysqld start
Starting MySQL. SUCCESS!  #有这段话表示启动成功

测试连接

cd /usr/local/mysql56/bin  #进入可执行文件目录
./mysql -hlocalhost -uroot -p #不需要密码
#嫌全路径麻烦的话可以做个软连接

创建软连接

ln  -s  /usr/local/mysql56/bin/* /usr/bin/
#这样的话不管在那个目录下都可以只输入mysql进入mysql

php源码编译

编译环境部署

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses curl gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel expat-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmcrypt-devel libmemcached-devel -y

解压编译

tar jxf php-5.6.8.tar.bz2 
cd php-5.6.8/
#检查环境
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc   --with-apxs2=/usr/local/apache/bin/apxs  --with-mysql=/usr/local/mysql56/
#解释
 --prefix=/usr/local/php5  #解压后文件存放目录
 --with-config-file-path=/usr/local/php5/etc  #配置文件存放目录
 --with-apxs2=/usr/local/apache2/bin/apxs  #apache目录
 --with-mysql=/usr/local/mysql56/   #mysql目录
 #编译&编译安装
 make&&make install
 #可能会出现编译完和安装完后/usr/local下没有php5这个目录 | 如果遇到这种情况的话重新编译和安装一次就好了

apache和php源码整合

cd /usr/local/apache/conf #进入配置文件目录
vim httpd.conf
#分割线下面是配置文件要修改的部分
--------------------------------------------------
LoadModule         php5_module modules/libphp5.so
AddType            application/x-httpd-php  .php
DirectoryIndex     index.php index.html index.htm

启动apache服务

cd /usr/local/apache/bin #进入apache执行文件目录
./apachectl start  #启动apache

测试Apache+PHP环境

#创建PHP测试页面,在/usr/local/apache/htdocs目录下创建index.php测试页面,执行如下命令自动创建:
cat >/usr/local/apache/htdocs/index.php<<EOF 
<?php
phpinfo();
?>
EOF

查看web网页

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值