LAMP源码编译安装及部署phpmyadmin

一、安装Apache

1、为了避免和之前安装的Apache端口发生冲突 我们先用RPM将之前的http卸载 ,然后安装httpd服务器编译安装时所需要的依赖包。

rpm -e httpd -nodeps
yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

2、源码编译安装

tar xf apr-1.6.2.tar.gz
tar xf apr-util-1.6.0.tar.gz
tar xf httpd-2.4.29.tar.bz2
mv apr-1.6.2 httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
#将解压缩后的包放到httpd-2.4.29/srclib/apr-util目录下。httpd在安装的时候会自动读取里面的依赖包
cd /opt/httpd-2.4.29/
./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi
make && make install
ln -s /usr/local/httpd/conf/httpd.conf /etc/
#建立软连接指到环境变量里面  让apache命令文件够让系统识别  不指 每次都需要敲绝对
ln -s /usr/local/httpd/bin/* /usr/local/bin/
httpd -v

3、添加Apache系统服务 方便启动停止Apache
在/lib/systemd/system/目录下,建立一个以.service 结尾的单元(unit)配置文件,用于控制由 systemd 管理或监控的 httpd 服务

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
cd /lib/systemd/system/
vim httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart= /usr/local/bin/apachectl $OPTIONS
ExecrReload= /bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
#下面来测试安装的systemctl控制是否启作用
systemctl start httpd.service
systemctl enable httpd.service         ###开机自启http
systemctl is-enabled httpd.service   ###检查HTTP单元是否启动

二、安装MySQL

1、为了避免端口冲突先用rpm先确认没有用rpm安装mysql,并安装mysql环境依赖包。

rpm -q mysql-server mysql
yum -y install \
ncurses \
ncurses-devel \
bison \
cmake
#下面创建一个mysql运行用户
useradd -s /sbin/nologin  mysql

2、解包,安装相关配置 编译安装

tar xf mysql-boost-5.7.20.tar.gz
cd /opt/mysql-5.7.20/
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_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=boost \
-DWITH_SYSTEMD=1
make && make install

3、建立配置环境

#数据库目录进行权限调整
chown -R mysql:mysql /usr/local/mysql/
vi /etc/my.cnf
[client]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock

[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZER \ O,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES
#保存退出后进行权限调整
chown mysql:mysql /etc/my.cnf

4、设置环境变量

echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile
echo 'export PATH' >> /etc/profile
source /etc/profile
cd /usr/local/mysql/
bin/mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
systemctl enable mysqld
systemctl start mysqld
systemctl status mysqld
netstat -anpt | grep 3306

5、设置一个用户的密码
mysqladmin -u root -p password ###刚开始密码是空的直接回车输入密码即可
mysql -u root -p ##输入刚才设置的密码就可进入数据库

三、PHP安装

1、安装环境依赖包

yum -y install \
libjpeg \
libjpeg-devel \
libpng libpng-devel \
freetype freetype-devel \
libxml2 \
libxml2-devel \
zlib zlib-devel \
curl curl-devel \
openssl openssl-devel

2、解包 安装配置 编译安装

tar xjvf php-7.1.10.tar.bz2
cd php-7.1.10
./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/httpd/bin/apxs \
--with-mysql-sock=/usr/local/mysql/mysql.sock \
--with-mysqli \
--with-zlib \
--with-curl \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-openssl \
--enable-mbstring \
--enable-xml \
--enable-session \
--enable-ftp \
--enable-pdo \
--enable-tokenizer \
--enable-zip
make && make install

3、优化路径并设置相关的配置

扫描二维码关注公众号,回复: 11945832 查看本文章
cp php.ini-development /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini
mysqli.default_socket = /usr/local/mysql/mysql.sock
date.timezone = Asia/Shanghai
#退出配置后验证安装模块
/usr/local/php/bin/php -m

4、修改一定的配置

vi /etc/httpd.conf
#在合适的位置添加下面的命令
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#添加目录中的php的索引
DirectoryIndex index.php index.html
#退出后删除无用的配置
rm -f /usr/local/httpd/htdocs/index.html
#添加测试页
vi /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
#退出后重启
systemctl restart httpd

5、之后可以去自己的网页输入IP地址后看到PHP
在这里插入图片描述

四、下面做一个LAMP架构应用实例 部署phpmyadmin系统

1、去数据库给设置一个用户并授权

mysql -u root -p       ##进入数据库需要输入之前设置的密码
CREATE DATABASE myadm;                    ##创建一个用户myadm
GRANT all ON myadm.* TO 'myadm'@'%' IDENTIFIED BY 'admin123';    ##设置用户密码及适用月任何ip的权限
GRANT all ON myadm.* TO 'myadm'@'localhost' IDENTIFIED BY 'admin123';
flush privileges;        ##刷新一下
exit         ##退出

2、更改测试页

vi /usr/local/httpd/htdocs/index.php
<?php
$link=mysqli_connect('20.0.0.87','myadm','admin123');
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
?>

###然后去网页看一下是否测试页能适用 

在这里插入图片描述
3、解压并安装phpmyadmin

unzip phpMyAdmin-4.7.6-all-languages.zip -d /opt/
mv phpMyAdmin-4.7.6-all-languages /usr/local/httpd/htdocs/myadm
cd /usr/local/httpd/htdocs/myadm
cp config.sample.inc.php config.inc.php
#下面是更改相应的配置
vi config.inc.php
$cfg['Servers'][$i]['host'] = '127.0.0.1'; ##把localhost 改成IP 大概在31行

4、重启后去网页测试 如下图说明成功
在这里插入图片描述
输入账户密码后执行可以进去
在这里插入图片描述
这样就算成功了 你可以在里面进行操作

感谢浏览!!

猜你喜欢

转载自blog.csdn.net/Laiyunpeng666/article/details/108545727