WordPress与PostgreSQL集成详解及实战指南

内容概要:本文详细介绍了如何在 Ubuntu 虚拟机环境中配置 PostgreSQL 和 MySQL,以及如何将 WordPress 集成到 PostgreSQL 中。主要包括设置 PostgreSQL 访问权限、修改配置文件、安装必要的 PHP 扩展、克隆 GitHub 项目并调整 WordPress 配置文件等内容。
适合人群:具备一定 Linux 和数据库基础的技术人员,特别是对 WordPress 和 PostgreSQL 集成有兴趣的开发者。
使用场景及目标:本文适用于希望将 WordPress 后端数据库从 MySQL 迁移到 PostgreSQL 的场景,旨在提升系统性能和安全性。
阅读建议:本文涉及多个步骤和技术细节,建议按部就班地操作,并仔细检查每个命令和配置项。对于初学者,可以先熟悉每一步骤的具体意义再进行实际操作。

wordpress

WordPress是一个开源的内容管理系统(CMS)和博客平台,它使用PHP和MySQL构建。该平台提供了一个直观和用户友好的界面,使用户能够轻松地创建、编辑和管理网站内容。WordPress拥有庞大的主题和插件库,用户可以根据需求选择适合自己网站风格的主题,并通过添加插件来扩展网站的功能。它支持多种语言,包括中文,并且足够灵活,可以适应从个人博客到大型企业网站的各种需求。由于其易用性、可扩展性和强大的社区支持,WordPress已成为世界上最受欢迎的网站构建器之一。

在安装之前,你需要准备以下环境: 搭建LAMP环境

安装apache

sudo apt update
sudo apt install apache2

安装完成后,启动并检查Apache是否运行:

sudo systemctl start apache2
sudo systemctl status apache2

安装PHP及其相关扩展:

sudo apt install php libapache2-mod-php php-mysql

安装MySQL并进行简单配置(只有MySQL在另一台虚拟机下载):

sudo apt install mysql-server
sudo mysql_secure_installation
mysql -u root -p

在MySQL命令行中运行以下命令:

#创建数据库
CREATE DATABASE wordpressdb;

#创建用户
CREATE USER 'wordpressuser'@'localhost' IDENTIFIED BY 'password';

#为用户添加访问数据库的权限
GRANT ALL PRIVILEGES ON wordpressdb.* TO 'wordpressuser'@'localhost';
#修改mysql配置文件
vi /etc/mysql/mysql.conf.d/mysqld.cnf
将bind-address  =127.0.0.1改成10.0.2.4(本机IP地址)

#重新加载数据库
FLUSH PRIVILEGES;
EXIT;

下载并安装WordPress

先进入目录/var/www/html/

cd /var/www/html
#使用以下命令下载最新版本的WordPress
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz

配置WordPress

为WordPress目录设置合适的权限:

sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

复制并配置WordPress配置文件:

cd /var/www/html/wordpress
#备份wordpress配置文件
cp wp-config-sample.php wp-config.php

编辑wp-config.php文件:

sudo  vi wp-config.php

将以下部分替换为你创建的数据库信息:

define( 'DB_NAME', 'wordpressdb' );
define( 'DB_USER', 'wordpressuser' );
define( 'DB_PASSWORD', 'changeme' );
define( 'DB_HOST', 'localhost(数据库所在虚拟机的IP地址)' );

两台虚拟机执行如下相同操作

grant all privileges on test.* to root@'%';(UPDATE mysql.user SET Host = '%' WHERE User = 'root' AND Host = 'localhost';)

SELECT user, host FROM mysql.user;

FLUSH PRIVILEGES;

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

FLUSH PRIVILEGES;

vi /etc/mysql/mysql.conf.d/mysqld.cnf

将bind-address改为0.0.0.0

更改完成后进入navicat进行测试连接

由于默认安装完postgresql只允许本机访问,如果需要其他方式使用(后端连接、navicat)需要修改配置文件postgresql.conf和pg_hba.conf。文件位置一般为/etc/postgresql/12/main/postgresql.conf和/etc/postgresql/12/main/pg_hba.conf。

修改配置文件

重启postgresql数据库

环境准备

PHP 8.1

PostgreSQL 14或兼容版本

WordPress 最新稳定版

Wordpress

进到ubuntu1里面的wordpress的/var/www/html/wordpress/wp-config.php修改配置文件,,如下图,修改成相应创建的内容

(1)进到wordpress里面的wp-content目录

cd wp-content

(2)下载pg4wp

git clone https://github.com/PostgreSQL-For-Wordpress/postgresql-for-wordpress.git pg4wp-temp

(3)将文件里面pg4wp-temp/pg4wp的pg4wp放到和wp-content目录同级

mv pg4wp-temp/pg4wp Pg4wp

(4)删除文件

rm -rf pg4wp-temp

(5)将文件PG4(在wp-content)里面的db.php放到和wp-content目录同级

cp Pg4wp/db.php db.php

(6)下载php8.1的扩展包

apt-get install php8.1-pgsql php8.1-pdo-pgsql

(7)修改php的配置文件/etc/php/8.1/apache2/php.ini,将下面两个(在939和941行前面)的分号去掉extension=pdo_pgsql和extension=pgsql

(8)进到wordpress登录界面可能还出现Connection Information的情况,只需要在/var/www/html/wordpress/wp-config.php里面添加define(‘FS_METHOD’, direct;);即可登录进去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值