CentOS上yum方式安装配置LNMP

igogo00 2019-10-20

实验环境

  1. 一台最小化安装的CentOS 7.6虚拟机

安装软件包

yum install -y epel-*
yum install -y nginx mariadb-server php php-mysql php-fpm php-pdo php-pdo_dblib php-gd php-pear php-xml php-pecl-zip php-json php-devel wget vim

配置nginx支持PHP

1.建立nginx的web主目录

mkdir /var/wwwroot
cd /var/wwwroot
echo -e hello_world >> index.html
echo -e "<?php phpinfo(); ?>" >> info.php

CentOS上yum方式安装配置LNMP

2.编辑nginx的配置文件

vim /etc/nginx/nginx.conf

CentOS上yum方式安装配置LNMP

3.修改nginx主目录和索引

  1. http下的server下的root的值修改为/var/wwwroot
  2. http下的server下添加index index.php index.html index.htm

CentOS上yum方式安装配置LNMP

4.在http下的server区块加入以下内容

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘
‘$status $body_bytes_sent "$http_referer" ‘
‘"$http_user_agent" "$http_x_forwarded_for"‘;

access_log /var/log/nginx/access.log main;

sendfile on;
#tcp_nopush on;

keepalive_timeout 65;

#gzip on;

include /etc/nginx/conf.d/*.conf;


server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
include /etc/nginx/default.d/*.conf;
location / {

}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

}

CentOS上yum方式安装配置LNMP

5.启动nginxphp-fpm

systemctl start nginx php-fpm
systemctl enable nginx php-fpm

6.关闭防火墙

setenforce 0
systemctl stop firewalld
systemctl disable firewalld

7.在宿主机访问nginx

访问http://[centos_ip]/info.php

CentOS上yum方式安装配置LNMP

配置MySQL

1

1. 下载并安装MySQL官方的 Yum Repository

1
[ /]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

1
[ /]# yum -y install mysql57-community-release-el7-10.noarch.rpm

下面就是使用yum安装MySQL了

1
[ /]# yum -y install mysql-community-server

这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

CentOS上yum方式安装配置LNMP

出现这样的提示表示安装成功

2. MySQL数据库设置

首先启动MySQL

1
[ /]# systemctl start  mysqld.service

查看MySQL运行状态,运行状态如图:

1
[ /]# systemctl status mysqld.service

CentOS上yum方式安装配置LNMP

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

1
[ /]# grep "password" /var/log/mysqld.log

CentOS上yum方式安装配置LNMP

上面标记的就是初始密码

 如下命令进入数据库:

1
[ /]# mysql -uroot -p     # 回车后会提示输入密码

输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

1
mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘new password‘;

这里有个问题,新密码设置的时候如果设置的过于简单会报错:

CentOS上yum方式安装配置LNMP

原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:

CentOS上yum方式安装配置LNMP

MySQL完整的初始密码规则可以通过如下命令查看:

1
2
3
4
5
6
7
8
9
10
11
12
13
mysql> SHOW VARIABLES LIKE ‘validate_password%‘;
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 1     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
rows in set (0.01 sec)

 密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:

1
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

 解决方法就是修改密码为规范复杂的密码:

1
2
3
4
mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘z?guwrBhH7p>‘;
Query OK, 0 rows affected (0.00 sec)
 
mysql>

CentOS上yum方式安装配置LNMP

这时候我们要把密码规则改一下,执行下面sql就可以了:

1
2
3
4
5
6
7
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
 
mysql>

 设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。

 但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

1
[ ~]# yum -y remove mysql57-community-release-el7-10.noarch

 配置算是完成了

可视化工具的登录授权:(如果授权不成功,请查看防火墙)

操作完成上面的,现在还不能用可视化的客户端进行连接,需要我们进行授权:

1
grant all on *.* to ‘%‘ IDENTIFIED BY ‘数据库密码‘;

大功告成!!!

下载WordPress测试LNMP环境

1.下载WordPress

cd /var/wwwroot
rm -rf index.html
rm -rf info.php
wget https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz
tar -zxvf wordpress-4.9.4-zh_CN.tar.gz
cp -rf /var/wwwroot/wordpress/* /var/wwwroot
cd /var/wwwroot
rm -rf wordpress
chmod -R 777 *

2.登录mysql创建数据库

mysql -uroot -p
CREATE DATABASE wordpress;

3.在宿主机访问nginx服务器

访问http://[centos_ip]/
按提示安装即可

CentOS上yum方式安装配置LNMP
CentOS上yum方式安装配置LNMP
CentOS上yum方式安装配置LNMP

本文链接:https://www.cnblogs.com/connect/p/linux-yum-install-lnmp.html

相关推荐