阿里云ECS实例 CentOS7 下搭建LNMP(Linux+Nginx+Mariadb+PHP)教程

一:安装Nginx
1.下载对应当前系统版本的nginx包(package)

wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2.建立nginx的yum仓库(默认yum是没有nginx的)

rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm

3.下载并安装nginx

yum install nginx

4.nginx启动

    systemctl start nginx.service

二.安装php (7.2)
1:为yum包管理添加新的镜像源文件

rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

2:安装

yum install php72w php72w-devel php72w-common php72w-process php72w-mysql php72w-pdo php72w-opcache php72w-xml php72w-gd.x86_64

5.安装PHP FPM

yum install php72w-fpm

*修改nginx配置文件之前记得备份(附带我的配置文件)
1.nginx配置文件位置:(/etc/nginx/conf.d/default.conf)
修改root目录(如果没有需求也可以不用修改,使用默认即可):

    location / {
        root   /home;
        index  index.html index.htm index.php;
        autoindex on;
        if (!-e $request_filename) {
           rewrite ^/(.*)$ /index.php?s=/$1 last;
           break;
         }
    }
    location ~ \.php$ {
        root           /home;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root/$fastcgi_script_name;
        include        fastcgi_params;
    }

2.php-fpm配置文件位置:(/etc/php-fpm.d/www.conf)
​ 修改
    user =nginx
    group=nginx
3.启动nginx服务:
    systemctl start nginx.service
如需设置开机自启使用以下命令:
    sudo systemctl enable nginx.service
4.启动PHP-FPM:
    systemctl start php-fpm.service
如需设置开机自启试用以下命令:
    sudo systemctl enable php-fpm.service
三:安装mysql

1、创建mariadb.repo

vim /etc/yum.repos.d/mariadb.repo

写入以下内容:

# MariaDB 10.2 CentOS repository list - created 2017-07-03 06:59 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.3/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1

以上是中国科学技术大学的 mariadb yum源,下载起来非常快,如果直接官网下载,非常的慢,非常的慢,因为这软件加依赖包,都有167M !!!

2、yum安装最新版本mariadb

yum install MariaDB-server MariaDB-client

3、错误处理:

若安装时遇到错误 “Failed to connect to 2001:da8:d800:95::110: Network is unreachable”,将源地址中的 mirrors.ustc.edu.cn 替换为 ipv4.mirrors.edu.cn 以强制使用 IPv4:

sudo sed -i 's#//mirrors.ustc.edu.cn#//ipv4.mirrors.ustc.edu.cn#g' /etc/yum.repos.d/mariadb.repo

4、安装之后的各种配置:

1、启动MariaDB

安装完成MariaDB,首先启动MariaDB,两条命令都可以

systemctl start mariadb

或者

service mariadb start

设置开机启动

systemctl enable mariadb

或者:

chkconfig mariadb on

2、接下来进行MariaDB的相关简单配置

设置密码

mysql -uroot -p 回车-》直接回车进入 
MariaDB [(none)]> use mysql;  
MariaDB [mysql]> UPDATE user SET password=password('12345678') WHERE user='root';  
MariaDB [mysql]> flush privileges;  
MariaDB [mysql]> exit

或者:

mysql_secure_installation

首先是设置密码,会提示先输入密码

Enter current password for root (enter for none):<–初次运行直接回车

设置密码

Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码

其他配置

Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

初始化MariaDB完成,接下来测试登录

mysql -uroot -p [回车,之后输入密码]

3、配置MariaDB的字符集

设置客户端:

vim /etc/my.cnf.d/mysql-clients.cnf

[mysql]
default-character-set=utf8

设置服务端:

vim /etc/my.cnf.d/server.cnf

[mysqld]
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake

#开启慢查询
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

全部配置完成,重启mariadb

systemctl restart mariadb

之后进入MariaDB查看字符集

mysql> show variables like "%character%";show variables like "%collation%";

MariaDB [(none)]> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

字符集配置完成。

4、添加用户,设置权限

创建用户命令

mysql>create user username@localhost identified by 'password';

直接创建用户并授权的命令

授予外网登陆权限,但不能二级授权;

mysql>grant all privileges on *.* to username@'%' identified by 'password';

授予权限并且可以二次授权

mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;

简单的用户和权限配置基本就这样了。 
其中只授予部分权限把 其中 all privileges或者all改为: 
select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file 
其中一部分。

Linux系统教程:如何检查MariaDB服务端版本 http://www.linuxidc.com/Linux/2015-08/122382.htm

MariaDB Proxy读写分离的实现 http://www.linuxidc.com/Linux/2014-05/101306.htm

Linux下编译安装配置MariaDB数据库的方法 http://www.linuxidc.com/Linux/2014-11/109049.htm

CentOS系统使用yum安装MariaDB数据库 http://www.linuxidc.com/Linux/2014-11/109048.htm

安装MariaDB与MySQL并存 http://www.linuxidc.com/Linux/2014-11/109047.htm

Ubuntu 上如何将 MySQL 5.5 数据库迁移到 MariaDB 10 http://www.linuxidc.com/Linux/2014-11/109471.htm

[翻译]Ubuntu 14.04 (Trusty) Server 安装 MariaDB http://www.linuxidc.com/Linux/2014-12/110048htm

MariaDB 的详细介绍:http://www.linuxidc.com/Linux/2012-03/56857.htm

部分信息转载自:https://blog.csdn.net/zhezhebie/article/details/74200355

阅读更多

没有更多推荐了,返回首页