1.下载源码包

以root目录为例:

cd ~
# 下载安装包
wget http://nginx.org/download/nginx-1.17.2.tar.gz # nginx
wget https://www.php.net/distributions/php-7.3.7.tar.gz # php
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar # mysql
# 解压
tar zxvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
tar zxvf php-7.3.7.tar.gz
tar zxvf nginx-1.17.2.tar.gz

# 安装cmake

yum install -y gcc gcc-c++ make automake
# 下载 cmake
wget https://github.com/Kitware/CMake/releases/download/v3.15.1/cmake-3.15.1.tar.gz
tar zxvf cmake-3.15.1.tar.gz
cd cmake-3.15.1
./configure --prefix=/usr/local/cmake
make && make install
创建 cmake的软连接
ln -s /usr/local/cmake/bin/cmake /usr/bin/cmake
  • 软连接    软链接仅仅包含所链接文件的路径名,因此能链接目录文件,也可以跨越文件系统进行链接。但是,当原始文件被删除后,链接文件也将失效。
  • 硬链接    可以将它理解为一个“指向原始文件inode的指针”,系统不为它分配独立的inode和文件。所以,硬链接文件与原始文件其实是同一个文件,只不过是不同的名字而已。我们每添加一个硬链接,该文件的inode链接数就会增加1;而且只有当该文件的inode连接数为0时,才算彻底将它删除。

2.安装

mysql 参考链接

# 卸载自带的 Mariadb
rpm -qa|grep mariadb # 查看当前系统自带的Mariadb
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

# 创建用户组

groupadd mysql

# 创建mysql用户,属于mysql组

useradd -g mysql mysql

# 安装

# 安装依赖
yum install -y libaio rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装common
rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装libs
rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm --nodeps --force # 安装client
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm --nodeps --force #安装server # 修改组
chown mysql:mysql /var/lib/mysql -R
# 启动
systemctl start mysqld.service
# 开机自启
systemctl enable mysqld

# 查看默认密码
cat /var/log/mysqld.log | grep password # 修改密码
alter user 'root'@'localhost' identified by '123456';

PHP 参考连接

# 安装依赖

yum install screen gcc git openssl curl
yum install gmp-devel libc-client-devel bzip2-devel enchant-devel libwebp-devel libXpm-devel openldap openldap-devel php-pspell aspell-devel readline-devel libtidy-devel libxslt-devel libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel autoconf

如果 提示Please reinstall the libzip distribution

# 先卸载原先的 libzip
yum remove libzip
# 下载 libzip 源码(去网站选择合适的版本)
wget https://libzip.org/download/libzip-1.5.1.tar.gz
# 解压
tar -zxvf libzip-1.5.1.tar.gz
cd libzip--1.5.1
# 配置
./configure
# 编译 & 安装
make & make install

# 编译安装

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/conf.d --with-sqlite3 --with-pdo-sqlite --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-posix --enable-pcntl --enable-shmop --enable-sysvshm --enable-sysvsem --enable-sysvmsg --enable-phar --enable-zip --with-zlib --with-zlib-dir --with-bz2 --with-gd --enable-gd-jis-conv --with-webp-dir --with-jpeg-dir --with-png-dir --with-xpm-dir --with-freetype-dir --enable-exif --enable-json --enable-libxml --with-libxml-dir --enable-xml --enable-xmlreader --enable-xmlwriter --enable-simplexml --with-pear --with-xsl --enable-dom --enable-soap --enable-wddx --with-xmlrpc --enable-ctype --enable-filter --with-pcre-regex --with-pcre-jit --with-enchant --with-pspell --enable-fileinfo --enable-mbstring --with-iconv --enable-hash --with-openssl --enable-bcmath --with-gmp --enable-session --enable-sockets --enable-ftp --with-curl --with-ldap --with-ldap-sasl --with-imap --with-kerberos --with-imap-ssl --enable-calendar --with-gettext --with-tidy --with-readline --enable-tokenizer --enable-opcache --enable-cli --enable-cgi --enable-fpm --enable-phpdbg

# 提示 libc-client 和 libldap 问题 重新./configure
ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so
cp -frp /usr/lib64/libldap* /usr/lib/
# 编译 collect2: error: ld returned 1 exit status 在PHP源码目录下 vi Makefile 找到 EXTRA_LIBS 行,在行末添加 ‘ -llber ‘ 保存退出再次make即可 # 安装
make -j `grep processor /proc/cpuinfo | wc -l` && make install

# 拷贝配置文件

cp php.ini-production /usr/local/php/etc/php.ini
cd /usr/local/php/etc/
cp php-fpm.conf.default ./php-fpm.conf
cd php-fpm.d/
cp www.conf.default www.conf

# 启动php-fpm,nginx需要将.php文件交给php-fpm处理

/usr/loca/php/sbin/php-fpm

Nginx安装

cd ~/nginx-1.17.2
./configure --prefix=/usr/local/nginx
make && make install
# 启动
cd /usr/local/nginx/
# 查看是否成功安装
curl 127.0.0.1 # 有welcome nginx即成功
# 修改配置
vim ./conf/nginx.conf # 修改如下
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;
include fastcgi_params;
}

# 重启

./sbin/nginx -s reload

安装完毕!

Linux CentOs下安装lnmp的更多相关文章

  1. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

  2. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  3. Linux CentOS下安装Tomcat9

    本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...

  4. [Linux]CentOS下安装和使用tmux

    前天随意点开博客园,看到了一篇关于tmux的文章 Tmux - Linux从业者必备利器,特意还点进去看了.毕竟Linux对于做游戏服务端开发的我来说,太熟悉不过了.不过我就粗略地看了一眼,就关掉了. ...

  5. Linux(CentOS)下安装git

    上个月把VPS迁到budgetVM,终于不用再受digitalOcean的气了,入手很方便,重点是支持支付宝付款——paypal的界面真是不习惯,开通速度挺快的,1G的内存够我折腾一段时间了~,额外送 ...

  6. Linux CentOS下安装、配置mysql数据库

    假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...

  7. Linux(CentOS)下安装docker

    Linux(CentOS)安装Docker 查看当前内核版本 [docker@localhost ~]$ uname -r 确保yum包更新到最新 [docker@localhost ~]$ sudo ...

  8. linux/centOS 下安装 ngnix

    Nginx 是一款轻量级的 Web 服务器/反向代理服务器,比较流行,建议在 Linux 下安装运行. Nginx 需要的依赖 它们包括:gcc,openssl,zlib,pcre(可通过rpm -q ...

  9. Linux(centos)下安装JDK

    安装 JDK是运行java程序必不可少的环境,服务器上跑程序也不例外.首先在安装之前,要知道Linux下安装软件有两种,一种是使用yum等命令直接下载,一种是使用上传下载工具,上传至Linux下使用, ...

随机推荐

  1. python2 手动安装更新pip

    现在对于python2版本,直接修改python.exe名字为python2.exe,命令python2 -m pip install --upgrade pip --force-reinstall可 ...

  2. tomcat 启动和关闭脚本

    start.sh #!/bin/sh . ~/.bash_profile echo "" > ${TOMCAT_HOME}/logs/catalina.out; sh ${T ...

  3. PAT-2019年冬季考试-甲级 7-3 Summit (25分) (邻接矩阵存储,直接暴力)

    7-3 Summit (25分)   A summit (峰会) is a meeting of heads of state or government. Arranging the rest ar ...

  4. EasyDSS高性能RTMP、HLS(m3u8)、HTTP-FLV、RTSP流媒体服务器解决方案之CDN内容分发网络

    背景分析 EasyDSS流媒体解决方案提供一站式的转码.点播.直播.录像.检索.时移回放服务,极大地简化了开发和集成的工作,并且EasyDSS支持多种特性,完全能够满足企业视频信息化建设方面的需求.其 ...

  5. ssh_exchange_identification: read: Connection reset by peer 解决思路

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/Jdk_yxs/article/deta ...

  6. salt远程实现go编译重启

    使用salt实现jenkins发版时,远程对go项目编译重启 1.go 版本1.12 使用go mod 2.设置go镜像 GOPROXY="https://goproxy.io" ...

  7. 【MongoDB学习之五】Java中使用MongoDB

    环境 MongoDB 3.0 CentOS6.5_x64 相关jar:mongo-java-driver-3.0.0.jar package com.mongodb; import java.util ...

  8. solr的创建分片的方式

    在Solr4.4之后,Solr提供了SolrCloud分布式集群的模式,它带来的主要好处是: (1)大数据量下更高的性能 (2)更好扩展性 (3)更高的可靠性 (4)更简单易用 什么时候应该使用Sol ...

  9. (CSDN 迁移) JAVA多线程实现-可回收缓存线程池(newCachedThreadPool)

    在前两篇博客中介绍了单线程化线程池(newSingleThreadExecutor).可控最大并发数线程池(newFixedThreadPool).下面介绍的是第三种newCachedThreadPo ...

  10. 使用tomcat7-maven-plugin

    2019-01-0714:16:44 功能: (使用maven中的tomcat插件,就可以将tomcat集成到项目中,效果就是:在不同平台中无需配置tomcat就可以直接运行web) 地址: tomc ...