千家信息网

LNMP架构及mysql等安装详情

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,下文内容主要给大家带来LNMP架构及mysql等安装详情,这里所讲到的知识,与书籍略有不同,都是专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。一、LNMP
千家信息网最后更新 2025年01月22日LNMP架构及mysql等安装详情

下文内容主要给大家带来LNMP架构及mysql等安装详情,这里所讲到的知识,与书籍略有不同,都是专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。

一、LNMP建构介绍

和LAMP不同的是,提供web服务的是Nginx

并且php是作为一个独立服务存在的,这个服务叫做php-fpm

Nginx直接处理静态文件请求,动态请求会转发给php-fpm

apache和nginx的区别;https://www.cnblogs.com/huangye-dream/p/3550328.html

nginx相对于apache的优点:

轻量级,同样起web 服务,比apache 占用更少的内存及资源
抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能
高度模块化的设计,编写模块相对简单
社区活跃,各种高性能模块出品迅速啊

apache 相对于nginx 的优点:
rewrite ,比nginx 的rewrite 强大
模块超多,基本想到的都可以找到
少bug ,nginx 的bug 相对较多


异步和同步:

同步:你打电话问书店老板有没有《分布式系统》这本书,如果是同步通信机制,书店老板会说,你稍等,"我查一下",然后开始查啊查,等查好了(可能是5秒,也可能是一天)告诉你结果(返回结果)。
异步:书店老板直接告诉你我查一下啊,查好了打电话给你,然后直接挂电话了(不返回结果)。然后查好了,他会主动打电话给你。在这里老板通过"回电"这种方式来回调。


阻塞和非阻塞:

你打电话问书店老板有没有《分布式系统》这本书,你如果是阻塞式调用,你会一直把自己"挂起",直到得到这本书有没有的结果,如果是非阻塞式调用,你不管老板有没有告诉你,你自己先一边去玩了, 当然你也要偶尔过几分钟check一下老板有没有返回结果。
在这里阻塞与非阻塞与是否同步异步无关。跟老板通过什么方式回答你结果无关。


二、mysql的安装

[root@lnmp mysql]# cd /usr/local/src/

[root@lnmp mysql]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

[root@lnmp mysql]# tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz (解压mysql tar包)

[root@lnmp mysql]# mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql (移动解压包并改名)

[root@lnmp mysql]# mkdir /data (创建储存的/data目录)

[root@lnmp mysql]# useradd mysql (创建mysql用户)

[root@lnmp mysql]# vim /etc/my.cnf (修改/etc/my.cnf文件)

datadir=/data/mysql

socket=/tmp/mysql.sock

[root@lnmp mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

(初始化MySQL,并且指定用户和数据库目录,第一次安装时会报错,安装下面2个包就好)

[root@lnmp mysql]# yum install autoconf -y

[root@lnmp mysql]# yum install -y libaio

[root@lnmp mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql


[root@lnmp mysql]# cp support-files/mysql.server /etc/init.d/mysqld (复制启动脚本)

[root@lnmp mysql]# vim /etc/init.d/mysqld (修改启动脚本里的basedir和datadir)

46 basedir=/usr/local/mysql

47 datadir=/data/mysql

[root@lnmp mysql]# /etc/init.d/mysqld start (启动mysql)



[root@lnmp mysql]# chkconfig --add mysqld (添加mysql到服务列表)

[root@lnmp mysql]# chkconfig mysqld on (设置MySQL开机启动)

添加到服务列表后,就可以使用以下命令:

[root@lnmp mysql]# service mysqld stop (启动MySQL)

Shutting down MySQL.. SUCCESS!

[root@lnmp mysql]# service mysqld start (关闭MySQL)

Starting MySQL. SUCCESS!


三、PHP安装

[root@lnmp ~]# cd /usr/local/src (把源码包下载到指定目录)

[root@lnmp ~]# wget http://cn2.php.net/distributions/php-5.6.30.tar.gz

[root@lnmp ~]# tar zxf php-5.6.30.tar.gz

[root@lnmp ~]# useradd -s /sbin/nologin php-fpm (添加php-fpm用户,-s指定不能登录)

[root@lnmp ~]# cd php-5.6.30

[root@lnmp ~]# ./configure --prefix=/usr/local/php-fpm --with-config-file-path=/usr/local/php-fpm/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --with-mysql-sock=/tmp/mysql.sock --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-ftp --enable-mbstring --enable-exif --with-pear --with-curl --with-openssl

(编译php包,过程中可能有需要安装的包,导致的错误)

[root@lnmp ~]# make && make install

[root@lnmp ~]# cp php.ini-production /usr/local/php-fpm/etc/php.ini (复制目录并改名字)

[root@lnmp ~]# vi /usr/local/php/etc/php-fpm.conf (修改php配置文件,以下内容)

[global] 定义全局参数

pid = /usr/local/php-fpm/var/run/php-fpm.pid

error_log = /usr/local/php-fpm/var/log/php-fpm.log

[www] 一个模块的名字

listen = /tmp/php-fcgi.sock 监听的地址

listen.mode = 666 定义sock文件的权限

user = php-fpm 用户

group = php-fpm 用户组

pm = dynamic

pm.max_children = 50

pm.start_servers = 20

pm.min_spare_servers = 5

pm.max_spare_servers = 35

pm.max_requests = 500

rlimit_files = 1024


[root@lnmp ~]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm (复制启动脚本到以下位置)


[root@lnmp ~]# chmod 755 /etc/init.d/php-fpm

[root@lnmp ~]# chkconfig --add php-fpm (添加php到服务)

[root@lnmp ~]# chkconfig php-fpm on (设置开机启动php服务)

[root@lnmp ~]# service php-fpm start (启动php服务)

四、nginx的介绍


Nginx官网 nginx.org,最新版1.13,最新稳定版1.12

Nginx应用场景:web服务、反向代理、负载均衡

Nginx著名分支,淘宝基于Nginx开发的Tengine,使用上和Nginx一致,服务名,配置文件名都一样,和Nginx的最大区别在于Tenging增加了一些定制化模块,在安全限速方面表现突出,另外它支持对js,css合并

Nginx核心+lua相关的组件和模块组成了一个支持lua的高性能web容器openresty

对于以上关于LNMP架构及mysql等安装详情,如果大家还有更多需要了解的可以持续关注我们的行业推新,如需获取专业解答,可在官网联系售前售后的,希望该文章可给大家带来一定的知识更新。


服务 老板 阻塞 模块 用户 结果 文件 书店 目录 同步 脚本 高性能 架构 详情 不同 专业 优点 内容 分布式 方式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全调查量表 梦幻西游手游江山如画服务器 阿里云服务器管理制度 北欧网络技术有限公司 dell服务器 橙色 dwr服务器推送技术 服务器游戏关服给退钱吗 计算机的应用软件开发技术 网站建设需要自己的服务器吗 沈阳运和软件开发公司 虎年出来是王者服务器崩了吗 根服务器美国能断俄罗斯的网吗 中国网络安全法律英文 数据库语言打印n层金字塔 3u服务器销售价格 网络安全教育微网文 树莓派可以当服务器吗 大学加入网络安全实验室有前途吗 如何查询服务器的生产日期 网上咖啡店数据库 融都科技互联网车险 四川维亿网络技术有限公司 光宝科技嵌入式软件开发 网络安全专业 开设院校 远程计算机如何进入服务器网关 数据库某个表某个字段的作用 vs 应用连接数据库的表 金山区节能软件开发不二之选 软件开发约束如何写 星沙科技软件开发公司
0