如何在ubuntu 20.04 lts上安装PostgreSQL和phpPgAdmin
PostgreSQL或Postgres是一个功能强大的高性能对象关系数据库管理系统(ORDBMS),在灵活的BSD风格的许可下发布。PostgreSQL非常适合于大型数据库,并且具有许多高级特性。
PostgreSQL可用于许多操作系统,包括Linux、FreeBSD、Solaris和Microsoft Windows。PhpPgAdmin是一个基于PHP的web应用程序,用于管理PostgreSQL数据库。使用Phppgadmin,可以很容易地在Postgres中创建数据库、创建角色和创建表。
本教程将展示在Ubuntu20.04LTS(Bionic Beaver)上安装PostgreSQL及其基于web的管理界面phpPgAdmin。
安装PostgreSQL和phpPgAdmin步骤
安装PostgreSQL和phpPgAdmin
创建新用户PostgreSQL
配置Apache2
设置UFW防火墙
测试
步骤1-安装PostgreSQL、phpPgAdmin和所有依赖项
在Ubuntu系统上安装任何包之前,请使用下面的apt命令更新和升级所有包。
sudo apt update sudo apt upgrade
现在我们已经准备好安装PostgreSQL、phpPgAdmin和Apache2包。
PostgreSQL和PhpPgAdmin可以在Ubuntu存储库中找到。所以你只需要用apt命令安装它们。
sudo apt -y install PostgreSQL PostgreSQL-contrib phppgadmin
所有安装完成后,启动PostgreSQL服务并将其添加到系统引导。
systemctl start PostgreSQL systemctl enable PostgreSQL
接下来,使用以下命令检查PostgreSQL服务。
systemctl status PostgreSQL
现在,PostgreSQL服务已经启动并运行。
PostgreSQL和phpPgAdmin的所有包安装已经完成。
步骤2-创建新用户PostgreSQL
PostgreSQL使用角色进行用户身份验证和授权,就像Unix风格的权限一样。
默认情况下,PostgreSQL为基本身份验证创建一个名为“postgres”的新用户。
在这一步中,我们将创建一个新的PostgreSQL用户,该用户具有超级用户的权限、创建数据库、创建角色和登录。新用户将被用来通过“phpPgAdmin”登录到PostgreSQL,为此,我们必须以默认的“postgres”用户身份登录到PostgreSQL的shell上。
使用下面的命令登录到PostgreSQL shell。
sudo -i -u postgres psql
接下来,使用以下查询创建一个新角色“Hyman”,密码为“Hymanpasspgsql”。
CREATE ROLE Hyman WITH SUPERUSER CREATEDB CREATEROLE LOGIN ENCRYPTED PASSWORD 'Hymanpasspgsql';
现在检查PostgreSQL系统上所有可用的用户。
\du
我们将在列表中获得一个新用户“Hyman”,现在键入“\q”退出PostgreSQL shell。
我们已经创建了一个名为“Hyman”的新用户,它将能够通过phpPgAdmin登录到PostgreSQL服务器。
步骤3-配置apache web服务器
在这一步中,我们将为phpPgAdmin配置Apache配置,这是在安装包期间自动生成的。
转到 '/etc/apache2/conf-available' 目录并编辑配置文件phppgadmin.conf :
cd /etc/apache2/conf-available/ vim phppgadmin.conf
默认情况下,可以通过路径 “phpPgAdmin”来访问phpPgAdmin。出于安全原因,我们将通过更改“Alias”选项来更改phppgadmin的默认URL路径。
用我们自己的路径更改默认URL“phppgadmin”路径,如下所示。
Alias /pgsqladminlogin /usr/share/phppgadmin
将'#Require local'行前面的#号去掉,即取消注释。 并在行下方添加allow from all,以便我们可以从浏览器访问。
Require all granted
保存并关闭。
接下来,测试Apache配置并确保没有错误,然后重新启动Apache服务。
apachectl configtest systemctl restart apache2
phpPgAdmin的Apache配置已经完成。
步骤4-设置UFW防火墙
在本教程中,我们将在UFW防火墙下运行PostgreSQL和Apache服务。
使用以下命令将ssh、http和https端口添加到ufw防火墙。
for svc in ssh http https do ufw allow $svc done
接下来,启动UFW防火墙并设置开机自启动。
ufw enable
UFW防火墙已经启动并运行,上面有ssh、http和https协议。
使用下面的命令检查UFW防火墙状态。
ufw status numbered
步骤5-测试
在继续之前,请使用下面的ss命令检查PostgreSQL和Apache端口服务。
ss -plnt
我们将看到PostgreSQL的端口“5432”和Apache端口“80”处于侦听状态,这两个服务都已启动并正在运行。
下一步,打开web浏览器并键入服务器IP地址,然后键入自定义路径phpPgAdmin。
http://192.168.1.200/pgsqladminlogin/
我们将得到默认的phpPgAdmin页面
现在点击“ 服务器选项卡,我们将获得phpPgAdmin登录页面。
输入PostgreSQL用户和密码,然后单击“ 登录按钮。
进入phpPgAdmin控制面板界面。
在Ubuntu 20.04 LTS上使用phpPgAdmin安装PostgreSQL数据库已经成功完成。
总结
PostgreSQL是一个先进的对象关系数据库管理系统(ORDBMS)。它是开源的,有一个庞大而活跃的社区。PostgreSQL提供psql命令行程序作为主要的前端,可用于直接输入SQL查询或从文件执行它们。phpPgAdmin是一个用PHP编写的PostgreSQL的基于web的管理工具,它使Postgres数据库的管理更加容易。