LINMP搭建wordpress-数据库不分离

目录

一、nginx部署

1.安装nginx前的系统依赖环境检查

2.下载nginx源代码包

3.解压缩源码包

4.创建普通的nginx用户

5.开始编译安装nginx服务

6.创建一个软连接以供集中管理

7.配置nginx环境变量

二、mysql

1.创建普通mysql用户

2.下载mysql二进制代码包

3.创建mysql的快捷方式

4.安全性的准备工作

5.设置环境变量

6.启动mysql的配置文件

7.检查mysql所依赖的环境

8.创建mysql数据文件夹

9.初始化mysql数据库

10.使用systemctl命令管理mysql数据库

11.登录mysql数据库

三、部署php

1.依赖环境

2.下载php源码

3.配置文件

4.cp模板配置文件

5.启动php服务指定fastcgi形式

6.修改nginx支持php代码

7.创建php的首页脚本文件

8.测试验证

四、测试php和MySQL链接

1.编写php脚本

五、lnmp环境搭建wordpress

1.创建用于wordpress博客的数据库

2.下载和安装源码

3.移动博客代码到首页

4.查看下

5.初始化配置


一、nginx部署

1.安装nginx前的系统依赖环境检查

yum install pcre pcre-devel openssl openssl-devel gcc -y

2.下载nginx源代码包

wget http://nginx.org/download/nginx-1.16.0.tar.gz

3.解压缩源码包

tar -zxvf nginx-1.16.0.tar.gz mkdir /opt/nginx-1.16.0/

4.创建普通的nginx用户

用于运行nginx的进程,降低nginx的系统权限

-M选项,不自动建立用户的家目录

-u,制定用户uid

useradd nginx -u 1111 -s /sbin/nologin -M

5.开始编译安装nginx服务

cd nginx-1.16.0./configure --user=nginx --group=nginx --prefix=/opt/nginx-1.16.0/ --with-http_stub_status_module --with-http_ssl_modulemake && make install

这样就是成功了

6.创建一个软连接以供集中管理

mkdir -p /nginx/ngin116ln -s /opt/nginx-1.16.0/ /nginx/ngin116/

7.配置nginx环境变量

添加nginx的sbin目录添加到path中

vim /etc/profile 
PATH="$PATH:/nginx/ngin116/sbin"

重新打开一个tty


二、mysql

1.创建普通mysql用户

降低程序运行权限

useradd -s /sbin/nologin mysql

2.下载mysql二进制代码包

注意提前下载好wget工具

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

3.创建mysql的快捷方式

tar zxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local
cd /usr/local
ln -s mysql-5.7.26-linux-glibc2.12-x86_64 mysql

4.安全性的准备工作

卸载可能centos7存在的mariadb相关的依赖关系

rpm -e --nodeps mariadb-libs

5.设置环境变量

echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile source /etc/profile

6.启动mysql的配置文件

[root@localhost local]# mkdir -pv /data/mysql
mkdir: created directory ‘/data’
mkdir: created directory ‘/data/mysql’
[root@localhost local]# chown mysql.mysql /data/mysql
[root@localhost local]# chmod go-rwx /data/mysql

vim /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
server_id=1
port=3306
log_error=/usr/local/mysql/data/mysql_err.log[mysql]
socket=/tmp/mysql.sock

7.检查mysql所依赖的环境

yum install libaio-devel -y

8.创建mysql数据文件夹

用于初始化数据

mkdir -p /usr/local/mysql/data/
chown -R mysql.mysql /usr/local/mysql/

9.初始化mysql数据库

mkdir -p /usr/local/mysql/data/
chown -R mysql.mysql /usr/local/mysql/

10.使用systemctl命令管理mysql数据库

编写mysql启动脚本,定义一个mysqld.service

vim /etc/systemd/system/mysqld.service
[Unit]
Description=MySQL server by nginx
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target[Install]
WantedBy=multi-user.target[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=5000
systemctl restart mysqld.service

11.登录mysql数据库

先检查下以前有没有默认的MySQL

[root@localhost system]# yum remove mysql -y
Loaded plugins: fastestmirror
No Match for argument: mysql
No Packages marked for removal
[root@localhost system]# which mysql
/usr/bin/which: no mysql in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/nginx/ngin116/sbin:/root/bin)

编辑profile文件

vim /etc/profile

在最后添加

PATH="$PATH:/usr/local/mysql/bin"

重新编译一下

source /etc/profile

登录默认没有密码

mysql -uroot -p

修改密码

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> UPDATE user SET authentication_string=PASSWORD("123456") WHERE User="root";
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)


三、部署php

1.依赖环境

yum install gcc gcc-c++ make zlib-devel libxm12-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-develgd-devel libcurl-devel libxslt-devel libxslt-devel -y

2.下载php源码

wget http://mirrors.sohu.com/php/php-7.3.5.tar.gz

解压源码安装

tar -zxvf php-7.3.5.tar.gz
cd php-7.3.5./configure --prefix=/usr/local/php7.3.5 --with-mysql-sock=/tmp/mysql.sock  --with-mysqli  --with-iconv-dir=/usr/local/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath  --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --enable-short-tags --enable-static --with-xsl --with-fpm-user=nginx --with-fpm-group=nginx --enable-ftp --enable-opcache=no
make && make install

3.配置文件

vimdiff php.ini-development php.ini-production

看下两个配置文件的区别(一个用于生产,一个用于开发)

我们用开发版本的

cp php.ini-development /usr/local/php7.3.5/lib/php.ini

4.cp模板配置文件

生成新的php配置文件

有关FASTCGI配置文件

cd /usr/local/php7.3.5/etc/
cp php-fpm.conf.default php-fpm.conf
ls

cd php-fpm.d
cp www.conf.default www.conf

5.启动php服务指定fastcgi形式

cd /usr/local/php7.3.5/sbin
./php-fpm
netstat -tunlp | grep php

6.修改nginx支持php代码

vim /opt/nginx-1.16.0/conf/nginx.conf

写入

#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       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  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;include extra/my_php.conf;}

配置虚拟主机的部分

cd /opt/nginx-1.16.0/conf/
mkdir extra
cd extra/
vim /opt/nginx-1.16.0/conf/extra/my_php.conf
server {
listen 80;
server_name _;
location / {root html;index index.html;
}
#添加有关php程序的解析
location ~ .*\.(php|php5)?$ {root html/myphp;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;include fastcgi.conf;
}}

7.创建php的首页脚本文件

mkdir -p /opt/nginx-1.16.0/html/myphp
echo "<?php phpinfo(); ?>" >/opt/nginx-1.16.0/html/myphp/index.php

8.测试验证

nginx -t 
nginx -s reload

访问一下

成功


四、测试php和MySQL链接

1.编写php脚本

vim /opt/nginx-1.16.0/html/myphp/test_mysql.php
<?php
$link_id=mysqli_connect('localhost','root','123456') or mysql_error();
if($link_id){echo "mysql-server was connected by mysqli_connect";
}else{echo "something wrong this php or mysql";
}?> 


五、lnmp环境搭建wordpress

1.创建用于wordpress博客的数据库

mysql -u root -p

进入数据库创建wordpress数据库;创建wordpress专用数据库用户;给用户本地登录授权和密码

create database wordpress;create user wordpress;grant all on wordpress.* to wordpress@'localhost' identified by '123456';
FLUSH PRIVILEGES;
quit

2.下载和安装源码

wget https://wordpress.org/wordpress-5.3.2.tar.gz
tar -zxvf wordpress-5.3.2.tar.gz

3.移动博客代码到首页

 mv -rf wordpress/* /opt/nginx-1.16.0/html/myphp/cd /opt/nginx-1.16.0/html/myphp/ls
 mv -rf wordpress/* /opt/nginx-1.16.0/html/myphp/cd /opt/nginx-1.16.0/html/myphp/ls

改下权限

cd /opt/nginx-1.16.0/html/myphp/
chown -R nginx.nginx ./

4.查看下

nginx -s reload

成功

5.初始化配置

和刚刚数据库创建的库和用户名密码一样

填写博客标题和一些默认信息

完成!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/199095.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣刷题-二叉树-完全二叉树的节点个数

222.完全二叉树的节点个数 给出一个完全二叉树&#xff0c;求出该树的节点个数。 示例 1&#xff1a; 输入&#xff1a;root [1,2,3,4,5,6] 输出&#xff1a;6 示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;0 示例 3&#xff1a; 输入&#xff1a;root [1]…

鸿蒙4.0开发笔记之DevEco Studio之配置代码片段快速生成(三)

一、作用 配置代码片段可以让我们在Deveco Studio中进行开发时快速调取常用的代码块、字符串或者某段具有特殊含义的文字。其实现方式类似于调用定义好变量&#xff0c;然而这个变量是存在于Deveco Studio中的&#xff0c;并不会占用项目的资源。 二、配置代码段的方法 1、打…

微信小程序配置企业微信的在线客服

配置企业微信后台 代码实现 <button tap"openCustomerServiceChat">打开企业微信客服</button>methods: {openCustomerServiceChat(){wx.openCustomerServiceChat({extInfo: {url: 你刚才的客服地址},corpId: 企业微信的id,showMessageCard: true,});} …

力扣刷题-二叉树-二叉树最小深度

给定一个二叉树&#xff0c;找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明&#xff1a;叶子节点是指没有子节点的节点。&#xff08;注意题意&#xff09; 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#x…

【数据结构】图的简介(图的逻辑结构)

一.引例&#xff08;哥尼斯堡七桥问题&#xff09; 哥尼斯堡七桥问题是指在哥尼斯堡市&#xff08;今属俄罗斯&#xff09;的普雷格尔河&#xff08;Pregel River&#xff09;中&#xff0c;是否可以走遍每座桥一次且仅一次&#xff0c;最后回到起点的问题。这个问题被认为是图…

给大伙讲个笑话:阿里云服务器开了安全组防火墙还是无法访问到服务

铺垫&#xff1a; 某天我在阿里云上买了一个服务器&#xff0c;买完我就通过MobaXterm进行了ssh&#xff08;这个软件是会保存登录信息的&#xff09; 故事开始&#xff1a; 过了n天之后我想用这个服务器来部署流媒体服务&#xff0c;咔咔两下就部署好了流媒体服务器&#x…

7年经验之谈 —— 如何高效的开展app的性能测试?

APP性能测试是什么 从网上查了一下&#xff0c;貌似也没什么特别的定义&#xff0c;我这边根据自己的经验给出一个自己的定义&#xff0c;如有巧合纯属雷同。 客户端性能测试就是&#xff0c;从业务和用户的角度出发&#xff0c;设计合理且有效的性能测试场景&#xff0c;制定…

pytorch的backward()的底层实现逻辑

自动微分是一种计算张量&#xff08;tensors&#xff09;的梯度&#xff08;gradients&#xff09;的技术&#xff0c;它在深度学习中非常有用。自动微分的基本思想是&#xff1a; 自动微分会记录数据&#xff08;张量&#xff09;和所有执行的操作&#xff08;以及产生的新张…

什么是Mock?为什么要使用Mock呢?

1、前言 在日常开发过程中&#xff0c;大家经常都会遇到&#xff1a;新需求来了&#xff0c;但是需要跟第三方接口来对接&#xff0c;第三方服务还没好&#xff0c;我们自己的功能设计如何继续呢&#xff1f;这里&#xff0c;给大家推荐一下Mock方案。 2、场景示例 2.1、场景一…

HTTP四种请求方式,状态码,请求和响应报文

1.get请求 一般用于获取数据请求参数在URL后面请求参数的大小有限制 2.post请求 一般用于修改数据提交的数据在请求体中提交数据的大小没有限制 3.put请求 一般用于添加数据 4.delete请求 一般用于删除数据 5.一次完整的http请求过程 域名解析&#xff1a;使用DNS协议…

【技术指南资料】编码器与正交译码器

我想提出一个关于PicoScope7新的译码器功能讨论。它已经推出一段时间&#xff0c;但你可能不知道这在汽车领域是扮演相当重要的角色。 正交译码器被用在转子位置传感器来转换关于旋转轴角度及方向的信息。 举例来说&#xff0c;它在电机上采用一对二进制的信号型式。 这种传感器…

渗透测试流程是什么?7个步骤给你讲清楚!

在学习渗透测试之初&#xff0c;有必要先系统了解一下它的流程&#xff0c;静下心来阅读一下&#xff0c;树立一个全局观&#xff0c;一步一步去建设并完善自己的专业领域&#xff0c;最终实现从懵逼到牛逼的华丽转变。渗透测试是通过模拟恶意黑客的攻击方法&#xff0c;同时也…

场景交互与场景漫游-对象选取(8-2)

对象选取示例的代码如程序清单8-11所示&#xff1a; /******************************************* 对象选取示例 *************************************/ // 对象选取事件处理器 class PickHandler :public osgGA::GUIEventHandler { public:PickHandler() :_mx(0.0f), _my…

TableUtilCache:针对CSV表格进行的缓存

TableUtilCache:针对CSV表格进行的缓存 文件结构 首先来看下CSV文件的结构&#xff0c;如下图&#xff1a; 第一行是字段类型&#xff0c;第二行是字段名字&#xff1b;再往下是数据。每个元素之间都是使用逗号分隔。 看一下缓存里面存储所有表数据的字段 如下图&#xff…

【心得】基于flask的SSTI个人笔记

目录 计算PIN码 例题1 SSTI的引用链 例题2 SSTI利用条件&#xff1a; 渲染字符串可控&#xff0c;也就说模板的内容可控 我们通过模板 语法 {{ xxx }}相当于变相的执行了服务器上的python代码 利用render_template_string函数参数可控&#xff0c;或者部分可控 render_…

基于SSM的供电公司安全生产考试系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

算法之路(二)

&#x1f58a;作者 : D. Star. &#x1f4d8;专栏 : 算法小能手 &#x1f606;今日分享 : 你知道北极熊的皮肤是什么颜色的吗&#xff1f;&#xff08;文章结尾有答案哦&#xff01;&#xff09; 文章目录 力扣的209题✔解题思路✔代码:✔总结: 力扣的3题✔解题思路&#xff1a…

【计算机视觉】24-Object Detection

文章目录 24-Object Detection1. Introduction2. Methods2.1 Sliding Window2.2 R-CNN: Region-Based CNN2.3 Fast R-CNN2.4 Faster R-CNN: Learnable Region Proposals2.5 Results of objects detection 3. SummaryReference 24-Object Detection 1. Introduction Task Defin…

Android Studio常见问题

Run一直是上次的apk 内存占用太大&#xff0c;导致闪退

基于Python3的scapy解析SSL报文

scapy对于SSL的支持个人觉得不太好&#xff0c;至少在构造报文方面没有HTTP或者DNS这种常见的报文有效方便&#xff0c;但是scapy对于SSL的解析还是可以的。下面我们以一个典型的HTTPS的报文为例&#xff0c;展示scapy解析SSL报文。 一&#xff1a;解析ClientHello报文 from sc…