前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >搭建 LNMP 环境

搭建 LNMP 环境

作者头像
剧终
发布2020-08-27 00:39:21
1.1K0
发布2020-08-27 00:39:21
举报
文章被收录于专栏:Linux学习日志Linux学习日志

LNMP是建立web应用的平台,是Linux、NGINX,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的简称。

安装编译工具及库文件

代码语言:javascript
复制
yum -y install make zlib zlib-devel gcc-c ++ libtool openssl openssl-devel

安装PCRE

PCRE作用是让Nginx支持Rewrite功能。 下载PCRE安装包,下载地址:http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

代码语言:javascript
复制
cd /usr/local/src/
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

解压安装包

代码语言:javascript
复制
tar zxvf pcre-8.35.tar.gz

进入安装包目录

代码语言:javascript
复制
cd pcre-8.35

编译安装

代码语言:javascript
复制
./configure
make && make install

查看pcre版本

代码语言:javascript
复制
pcre-config --version

安装Nginx

下载Nginx,下载地址:http : //nginx.org/download/nginx-1.6.2.tar.gz

代码语言:javascript
复制
cd /usr/local/src/
wget http://nginx.org/download/nginx-1.6.2.tar.gz

解压安装包

代码语言:javascript
复制
tar zxvf nginx-1.6.2.tar.gz

编译安装

代码语言:javascript
复制
cd nginx-1.6.2
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
make && make install

查看nginx版本

代码语言:javascript
复制
/usr/local/nginx/sbin/nginx -v

启动Nginx Nginx启动命令

代码语言:javascript
复制
/usr/local/nginx/sbin/nginx

停止nginx命令

代码语言:javascript
复制
/usr/local/nginx/sbin/nginx -s quit

安装PHP

在安装PHP之前需要安装一些依赖包,执行下面的命令就可以了

代码语言:javascript
复制
yum install vim gcc gcc++ wget libxml2-devel wget -y

访问PHP的官方下载地址:https://php.net 找到自己想要安装的版本来进行下载,我这里选择php5.6

代码语言:javascript
复制
wget http://cn2.php.net/get/php-5.6.34.tar.gz/from/this/mirror

解压文件 解压完就会在当前文件夹看到PHP的安装包

代码语言:javascript
复制
tar zxvf mirror

其中php-5.6.34就是我们需要用到的压缩包,让我们进入目录进行安装

代码语言:javascript
复制
cd php-5.6.34
./configure --prefix=/usr/local/php  --enable-fpm

./configure 就是就是编译makefile文件的工具 --prefix 就是指定安装PHP到哪个目录 执行完成之后下面的命令

代码语言:javascript
复制
make
make install

我们执行完成./configure 只是把我们的配置写入makefile文件,还没有安装,make 命令就是安装。 准备配置文件

代码语言:javascript
复制
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf

到此我们就安装完成PHP了。

配置Nginx并运行PHP程序

代码语言:javascript
复制
vim /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
            root           /home/www; //网站目录
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
请输入图片描述
请输入图片描述

然后保存退出

代码语言:javascript
复制
cd /
mkdir www
cd www
vim index.php
<?php phpinfo(); ?>

重启php和nginx

代码语言:javascript
复制
/usr/local/nginx/sbin/nginx -s reload
/usr/local/php/sbin/php-fpm

打开浏览器,输入127.0.0.1/index.php

请输入图片描述
请输入图片描述

安装mysql

同样的在安装之前先安装一些依赖工具和依赖包

代码语言:javascript
复制
yum install -y gcc gcc-c++ make tar openssl openssl-devel cmake ncurses-devel

新版的mysql都采用cmake安装,所以请务必安装这个工具 下载mysql的安装包 mysql的官方地址为:MySQL 在下载地址选择自己想要下载的版本,我选择的是mysql5.6

代码语言:javascript
复制
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.47.tar.gz

解压文件

代码语言:javascript
复制
tar -zxvf mysql-5.6.47.tar.gz

然后进入目录

代码语言:javascript
复制
cd mysql-5.6.47

编译安装mysql 设置放置位置 安装位置/usr/local/mysql 数据存放位置 /data/mysql

代码语言:javascript
复制
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DWITH_SSL=yes -DWITH_READLINE=1 -DENABLED_LOCAL_INFIL=1
make
make install

复制

代码语言:javascript
复制
cp support-files/mysql.server /etc/init.d/mysqld

赋予权限

代码语言:javascript
复制
chmod a+x /etc/init.d/mysqld
mkdir -pv /data/mysql
chown -R mysql:mysql /data/mysql

mysql环境变量

代码语言:javascript
复制
vi /etc/profile
export PATH=$PATH:/usr/local/mysql/bin/

使配置文件生效

代码语言:javascript
复制
source /etc/profile

配置初始化数据库

代码语言:javascript
复制
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
datadir=/data/mysql
user=mysql
skip-name-resolve
long_query_time=2
slow_query_log_file=/data/mysql/mysql-slow.log
expire_logs_days=2
innodb-file-per-table=1
innodb_flush_log_at_trx_commit = 2
log_warnings = 1
max_allowed_packet = 512M
connect_timeout = 60
net_read_timeout = 120

[mysql_safe]
log-error=/data/mysql/mysql.log
pid-file=/data/mysql/mysql.pid

数据库初始化

代码语言:javascript
复制
chown -R mysql:mysql /usr/local/mysql /data/mysql
yum install -y perl-Module-Install
/usr/local/mysql/scripts/mysql_install_db --user=mysql  --basedir=/usr/local/mysql --datadir=/data/mysql/
/usr/local/mysql/bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql/ --data=/data/mysql/

使用systemctl管理mysql

代码语言:javascript
复制
vi /usr/lib/systemd/system/mysqld.service
[Unit]
Desription=mysqld
After=network.target
[Service]
Type=forking
ExecStart=/etc/init.d/mysqld start
[install]
WantedBy=multi-user.target

启动MYsql

代码语言:javascript
复制
systemctl start mysqld

设置数据库密码

代码语言:javascript
复制
mysqladmin -uroot password 'Aa123456'

连接数据库

代码语言:javascript
复制
mysql -uroot -pAa123456  
请输入图片描述
请输入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装编译工具及库文件
  • 安装PCRE
  • 安装Nginx
  • 安装PHP
  • 配置Nginx并运行PHP程序
  • 安装mysql
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档