如何在CentOs 7上使用phpPgAdmin安装和配置PostgreSQL

时间:2020-03-05 15:27:49  来源:igfitidea点击:

PostgreSQL是主要和重要的开源关系数据库管理系统之一,已通过高级,符合SQL的标准帮助塑造了应用程序开发的世界。
使用PostgreSQL的主要优点是,由于它的稳定性,它需要非常少的维护工作,并且与其他数据库管理系统相比,基于PostgreSQL的应用程序的拥有成本很低。
它被设计为可扩展的,可以定义自己的数据类型,索引类型,功能语言等。

使用单个SQL语句管理数据库是一项艰巨的任务,因此在本文中,我们还将向我们展示用于管理PostgreSQL数据库的最佳,最受欢迎的图形用户界面之一,即phpPgAdmin。

PhpPgAdmin是基于Web的GUI应用程序,可简化管理PostgreSQL数据库的过程。
phpPgAdmin将允许我们添加,删除和管理数据库,表和条目;运行特定的SQL查询,备份数据库,搜索和导入记录等等。

准备工作

在开始安装PotgreSQL和phpPgAdmin之前,请确保我们具有CentOS服务器上的root访问权限,并且已连接到Internet以下载软件包。

登录服务器后,运行以下命令以使用最新补丁更新centos 7服务器。

#yum update

如果要在启用了防火墙和SELinux的生产环境中设置PostgreSQL和phpPgAdmin,请确保允许以下用于postgreSQL和apache的默认端口。

# firewall-cmd --permanent --add-port=5432/tcp
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload

要允许在SELinux中运行以下命令。

# setsebool -P httpd_can_network_connect_db 1

PostgreSQL安装

默认情况下,centos 7随附于PostgreSQL 9.2.1版,可以使用简单的yum命令安装,而当前最新的PostgreSQL版本为9.4.5.
因此,在本教程中,我们将使用PostgreSQL Yum存储库安装最新版本的PostgreSQL。

安装PostgreSQL仓库
要获取最新PostgreSQL软件包的最新yum存储库,请打开PostgreSQL下载页面或者复制链接,然后运行以下wget命令。

wget http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-redhat94-9.4-1.noarch.rpm

下载完rpm存储库之后,我们必须先使用以下命令在开始PotgreSQL安装之前先安装此rpm存储库。

# rpm -i pgdg-redhat94-9.4-1.noarch.rpm
# yum install postgresql94-server postgresql94-contrib

运行上述命令后,将安装以下软件包,其中包括很少的依赖项。
要继续安装过程,请按“ Y”键继续,如图所示。

Dependencies Resolved
========================================================================================
Package Arch Version Repository Size
========================================================================================
Installing:
postgresql94-contrib x86_64 9.4.5-1PGDG.rhel7 pgdg94 610 k
postgresql94-server x86_64 9.4.5-1PGDG.rhel7 pgdg94 3.8 M
Installing for dependencies:
libxslt x86_64 1.1.28-5.el7 base 242 k
postgresql94 x86_64 9.4.5-1PGDG.rhel7 pgdg94 1.0 M
postgresql94-libs x86_64 9.4.5-1PGDG.rhel7 pgdg94 209 k
Transaction Summary
=======================================================================================
Install 2 Packages (+3 Dependent packages)
Total download size: 5.9 M
Installed size: 25 M
Is this ok [y/d/N]: y

安装完成后,运行以下命令初始化数据库。

# /usr/pgsql-9.4/bin/postgresql94-setup initdb
Initializing database ... OK

启动数据库服务

要启动PostgreSQL服务并将其配置为在启动时自动启用,请运行以下命令,然后检查状态,该服务应已启动并启用。

# systemctl start postgresql-9.4
# systemctl enable postgresql-9.4

使用PostgreSQL命令行

在安装过程中,默认情况下会创建一个名为“ postgres”的新用户,该用户将用于管理PostgreSQL数据库。

让我们将用户切换到PostgreSQL用户,并连接到PostgreSQL命令行界面来管理数据库。

# su - postgres
-bash-4.2$psql
psql (9.4.5)
Type "help" for help.

如图所示,我们可以通过键入help命令获得有关使用PostgreSQL数据库的更多帮助。

运行以下命令以更新postgres用户的默认密码。

postgres=# \password postgres
Enter new password:*
Enter it again:*

现在,我们将使用PostgreSQL命令行创建一个新的用户和数据库。
为此,我们运行以下命令。

[root@centos-7 ~]# su - postgres
Last login: Sat Oct 10 19:26:10 BST 2014 on pts/1
-bash-4.2$createuser kashif
-bash-4.2$createdb testdb
-bash-4.2$psql
postgres=# alter user kashif with encrypted password 'kashif123';
ALTER ROLE
postgres=# grant all privileges on database testdb to kashif;
GRANT

要列出系统上创建的所有数据库,请使用“ \ list”或者“ \ l”命令,并使用“ \ c db_name”连接到数据库,如下所示。

安装phpPgAdmin

在本节中,我们现在将设置基于Web的PostgreSQL管理工具。
首先,我们必须安装它的软件包,可以使用以下yum命令来完成安装。

# yum install phpPgAdmin httpd

运行此命令后,我们将看到安装phpPgadmin和apache Web服务器所需的许多依赖项。
因此,要继续进行,请选择“ Y”键以接受更改并完成安装设置。

Dependencies Resolved
=======================================================================================
Package Arch Version Repository Size
=======================================================================================
Installing:
httpd x86_64 2.4.6-31.el7.centos.1 updates 2.7 M
phpPgAdmin noarch 5.1-2.rhel7 pgdg94 658 k
Installing for dependencies:
apr x86_64 1.4.8-3.el7 base 103 k
apr-util x86_64 1.5.2-6.el7 base 92 k
httpd-tools x86_64 2.4.6-31.el7.centos.1 updates 79 k
libzip x86_64 0.10.1-8.el7 base 48 k
mailcap noarch 2.1.41-2.el7 base 31 k
php x86_64 5.4.16-36.el7_1 updates 1.4 M
php-cli x86_64 5.4.16-36.el7_1 updates 2.7 M
php-common x86_64 5.4.16-36.el7_1 updates 563 k
php-pdo x86_64 5.4.16-36.el7_1 updates 97 k
php-pgsql x86_64 5.4.16-36.el7_1 updates 84 k
Transaction Summary
=======================================================================================
Install 2 Packages (+10 Dependent packages)
Total download size: 8.5 M
Installed size: 30 M
Is this ok [y/d/N]:y

phpPgAdmin配置

安装所需的软件包后,我们将为phpPgAdmin配置所需的参数,以允许从远程位置进行访问,因为默认情况下,只能通过localhost访问。

# vim /etc/httpd/conf.d/phpPgAdmin.conf

现在,使用任何编辑器打开下面的配置文件,并在对其进行任何更改之前仔细阅读它。
大部分参数和此文件已得到很好的解释和配置,但是我们只需要更新以下一些参数即可。

# vim /var/lib/pgsql/9.4/data/pg_hba.conf
# vim /var/lib/pgsql/9.4/data/postgresql.conf
# vim /etc/phpPgAdmin/config.inc.php
//Hostname or IP address for server. Use '' for UNIX domain socket.
//use 'localhost' for TCP/IP connection on this computer
$conf['servers'][0]['host'] = 'localhost';
//Database port on server (5432 is the PostgreSQL default)
$conf['servers'][0]['port'] = 5432;
$conf['owned_only'] = true;

保存更改,然后重新启动PostgreSQL和Apache的服务。

# systemctl restart postgresql-9.4
# systemctl restart httpd

phpPgAdmin Web控制台

让我们打开下面的URL来访问phpPgAdmin控制台,如下所示。

http://your_servers_ip/phpPgAdmin /

要登录到PostgreSQL,只需单击左上角的图标(如图所示)并提供我们之前创建的凭据即可。

成功登录后,我们将可以从phpPgAdmin控制台访问创建和管理数据库的权限。