从零开始搭建LAMP环境-Centos 8.1+Apache 2.4+Php 7.2+MariaDB 10.3-从零搭建建站环境-Php7.2敲击简单安装pdo-mysql

备注:以下代码均在bash中运行测试成功过

LAMP

Linux Apache MariaDB(Mysql) Php
这里我采用的是PDO操作数据库

Linux - Centos8

这里采用的阿里云的云服务器,99一年的超轻量级入门玩耍机器。
初始化系统选择Centos - 8.1,设置密码即可

检查系统版本

cat /etc/redhat-release

-CentOS Linux release 8.1.1911 (Core)

Apache

安装

yum -y install httpd.*		

启动

systemctl enable httpd	#设置开机启动
systemctl start httpd	#启动

测试

(有安全组配置的服务器请提前放行80端口,比如现在用的阿里云)
在浏览器地址栏输入服务器的公网IP,如果出现这玩意说明安装启动成功
从零开始搭建LAMP环境-Centos 8.1+Apache 2.4+Php 7.2+MariaDB 10.3-从零搭建建站环境-Php7.2敲击简单安装pdo-mysql_第1张图片

其它常用命令

systemctl status httpd	#查看Apache的状态,正常应该是	active (running)
systemctl stop httpd	#关闭Apache
systemctl restart httpd	#重启Apache
apachectl -v  #查看版本
apachectl -l #查看编译中就加载的模块
apachectl -t -D DUMP_MODULES	#直接列出全部加载的模块

安装PHP

安装

Centos 8.1默认的yum安装的是php7 而不是centos7 默认的 php5

yum -y install php

# 安装php-pdo-mysql的插件,不安装的话php是没有驱动操作数据库的
yum -y  install php-pdo
yum -y  install php-pdo_mysql

这里安装pdo、mysql驱动真的恶心。一大堆帖子将什么配置文件,浪费了我一天的时间-.- /(ㄒoㄒ)/~~

测试

  1. 查看php版本
php -v

正常应该是这样子的

PHP 7.2.24 (cli) (built: Oct 22 2019 08:28:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
  1. phpinfo
    查看php的相关配置信息
# 进入Apache的默认网站目录
cd /var/www/html
#建立主页文件
vim index.php
#按键盘的i进入写入模式,写入主页内容如下
<?php
phpinfo();
?>
#按两次Esc后输入:wc保存退出
#重启apache服务
systemctl restart httpd

然后在浏览器地址栏输入公网IP,出现这个页面则表示PHP和Apache正常工作
从零开始搭建LAMP环境-Centos 8.1+Apache 2.4+Php 7.2+MariaDB 10.3-从零搭建建站环境-Php7.2敲击简单安装pdo-mysql_第2张图片

安装Maria DB

Centos默认支持的是MariaDB,作为mysql的替代品

安装

yum install -y mariadb-server

配置

#设置开机自启动
systemctl enable mariadb
#开启
systemctl start mariadb

密码初始化

mysql_secure_installation

1.回车后会要你输入数据库超级管理员root的密码,默认为空,回车即可
2.设置密码 回车
3.确认新密码 输入新密码 回车
4.确认新密码 再次输入新密码 回车
5.删除测试账户 回车
6.拒绝root远程登录 回车
7.删除测试数据库 回车
8.重启服务 回车

登录测试

mysql -u root -p

回车后输入密码(暗文不显示密码),输对了就会进入mysql,输错了重新输入mysql -r root -p 继续尝试
成功登录之后是这个样子的
这里用建立一个远程root账户(密码为*-123456789*-)为例子

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is xx
Server version: 10.3.17-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
MariaDB [(none)]> grant all on *.* to root@'%'  IDENTIFIED BY '*-123456789*-' with GRANT OPTION; 
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> \q
Bye

输入\q回车即可退出mysql

编码设置

由于MariaDB默认字符编码为latin1 ,如果使用默认编码的话会出现中文乱码问题.

首先查看默认字符编码,然后把不是utf8的修改为utf8

  //查看当前编码
MariaDB [mysql]> show variables like 'character_set%';show variables like "%collation%";
+--------------------------+------------------------------+
| Variable_name            | Value                        |
+--------------------------+------------------------------+
| character_set_client     | utf8                         |
| character_set_connection | utf8                         |
| character_set_database   | latin1                       |
| character_set_filesystem | binary                       |
| character_set_results    | utf8                         |
| character_set_server     | latin1                       |
| character_set_system     | utf8                         |
| character_sets_dir       | /usr/share/mariadb/charsets/ |
+--------------------------+------------------------------+
8 rows in set (0.001 sec)
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.001 sec)

(filesystem的编码不要改)我这里显示两个为latin1的,下面修改为utf8

[root@ecs ~]# vim /etc/my.cnf.d
-----
./
auth_gssapi.cnf
client.cnf
enable_encryption.preset
mariadb-server.cnf
mysql-clients.cnf

在client.cnf一行回车进入该区,在[client]下面按i建切入到输入模式加入一行 default-character-set=utf8,如下图

[client]
default-character-set=utf8
#This group is not read by mysql client library,
-----

输入完之后按Esc,输入:wq 保存退出
然后编辑mariadb-server.cnf,在[mysqld]下面按i建切入到输入模式加入一行 character-set-server = utf8,如下图

[root@ecs ~]# vim /etc/my.cnf.d
----
mariadb-server.cnf	//在这里回车
--------
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mariadb/mariadb.log
pid-file=/run/mariadb/mariadb.pid
character-set-server = utf8

输入完之后按Esc,输入:wq 保存退出
随后重启数据库即可

[root@ecs ~]# systemctl restart mariadb

参考

  • MariaDB https://www.cnblogs.com/yhongji/p/9783065.html
  • https://blog.csdn.net/daijiguo/article/details/78102622
  • https://hacpai.com/article/1582881912051
  • Apahce模块 https://blog.csdn.net/qmhball/article/details/7631384
  • Apache https://blog.csdn.net/xgrx2008/article/details/82715186

你可能感兴趣的:(Centos,centos)