资讯专栏INFORMATION COLUMN

CentOS7下PHP&Nginx&Mysql编译安装及sytemd配置

jubincn / 2262人阅读

摘要:闲话少叙,直接开始安装依赖复制以下内容,回车直接安装编译,,所需的依赖创建用户和组注意此处的组创建和用户创建在后面编译安装中需要,当然可以根据个人习惯自己命名想要的组名和用户名编译安装根据个人习惯去

闲话少叙,直接开始

yum安装依赖

复制以下内容,回车直接安装编译php,nginx,mysql所需的依赖

shyum install -y
 kenel-devel gcc gcc-c++ patch
 perl-Module-Install.noarch libaio pcre-devel
 openssl-devel systemd-devel libacl-devel
 systemtap-sdt-devel libxml2-devel libcurl-devel
 libpng-devel libicu-devel
创建用户和组

注意此处的组创建和用户创建在后面编译安装中需要,当然可以根据个人习惯自己命名想要的组名和用户名

groupadd php-fpm
groupadd nginx
groupadd mysql
useradd -g php-fpm php-fpm
useradd -g nginx nginx
useradd -g mysql mysql
PHP(5.6)编译安装

prefix 根据个人习惯去修改一下,with-fpm-user(group)和前面创建的php相关用户保持一致
以下是编译配置参数

./configure --prefix=/data/soft/php
 --enable-fpm
 --with-fpm-user=php-fpm
 --with-fpm-group=php-fpm
 --with-fpm-systemd
 --with-fpm-acl
 --enable-mysqlnd
 --with-mysqli=mysqlnd
 --with-pdo-mysql=mysqlnd
 --enable-opcache
 --enable-pcntl
 --enable-soap
 --enable-sockets
 --enable-phpdbg
 --enable-dtrace
 --enable-calendar
 --enable-intl
 --enable-mbstring
 --enable-gd-native-ttf
 --enable-exif
 --enable-ftp
 --with-openssl
 --with-zlib
 --with-curl
 --with-gd
 --with-gettext

执行configure之后,make及make install即可

Nginx编译安装

同理 prefix可自由修改自己习惯的路径,user和group参数为之前创建的nginx用户和组
http_stub_status_module是nginx状态监控模块,比较有用

./configure --prefix=/data/soft/nginx
 --user=nginx
 --group=nginx
 --with-threads
 --with-http_ssl_module
 --with-http_spdy_module
 --with-http_realip_module
 --with-http_gzip_static_module
 --with-http_auth_request_module
 --with-http_stub_status_module

configure执行完毕之后make 然后 make install

Mysql的安装

去这个链接地址 http://dev.mysql.com/downloads/mysql/ 选择合适的linux generic版本下载
解压下载完毕后的压缩包(假设解压后的路径是/tmp/mysql-5.xx.xx)
mv /tmp/mysql-5.xx.xx /data/soft/mysql
修改/data/soft/mysql目录权限

chown -R mysql:mysql /data/soft/mysql

执行如下命令

cd /data/soft/mysql
./scripts/mysql_install_db --basedir=/data/soft/mysql --datadir=/data/soft/mysql/data --defaults-file=/data/soft/mysql/my.conf --user=mysql
sytemd的配置

PHP-FPM的systemd配置

[Install]
#期望自启动的级别,也可以指定multi-user.target
WantedBy=default.target
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target

[Service]
Type=notify
PIDFile=/data/soft/php/var/run/php-fpm.pid
ExecStart=/data/soft/php/sbin/php-fpm --nodaemonize --fpm-config /data/soft/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

Nginx的systemd配置

[Unit]
Description= Nginx Server
After=syslog.target network.target

[Service]
Type=forking
PIDFile=/data/soft/nginx/nginx.pid
ExecStart=/data/soft/nginx/sbin/nginx -c /data/soft/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Mysql的systemd配置

[Install]
WantedBy=multi-user.target
[Unit]
# 描述
Description=Mysqld Server (prefork MPM)
# 启动顺序在网络启动之后
After=syslog.target network.target
[Service]
User=mysql
Group=mysql
Type=simple
# 进程文件目录
PIDFile=/data/soft/mysql/data/mysql.pid
# 配置文件
# 下面三个参数名称是systemd固定的
ExecStart=/data/soft/mysql/bin/mysqld_safe --defaults-file=/data/soft/mysql/my.cnf --ledir=/data/soft/mysql/bin
ExecStop=kill -s -QUIT $MAINPID
# true表示创建进程独立的临时目录
PrivateTmp=true

[Install]
#期望自启动的级别,也可以指定multi-user.target
WantedBy=default.target

ok,基本完成,感觉systemd的配置还是不够完善,有熟悉的朋友请指正

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39166.html

相关文章

  • CentOS7PHP&Nginx&Mysql编译安装sytemd配置

    摘要:闲话少叙,直接开始安装依赖复制以下内容,回车直接安装编译,,所需的依赖创建用户和组注意此处的组创建和用户创建在后面编译安装中需要,当然可以根据个人习惯自己命名想要的组名和用户名编译安装根据个人习惯去 闲话少叙,直接开始 yum安装依赖 复制以下内容,回车直接安装编译php,nginx,mysql所需的依赖 shyum install -y kenel-devel gcc gcc...

    cloud 评论0 收藏0
  • Debian9(Stretch) 编译安装LNMP环境

    摘要:下源码安装一前言之前,我的开发环境是。重新加载权限表将确保所有到目前为止所做的更改将立即生效。然后,和注意,如果是使用二进制包安装了及相应的开发库,不需要指定路径。五参考资料入门教程编译安装编译安装 Debian9下源码安装LNMP 一、前言 之前,我的开发环境是Windows-10+PHP-7.1+Nginx-1.10+MariaDB-10.1。 后面开发需要使用到memcached...

    ideaa 评论0 收藏0

发表评论

0条评论

jubincn

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<