PostgreSQL是功能强大且被广泛使用的开源、多平台和高级对象关系数据库系统,凭借完善的体系结构、可靠性、数据完整性、强大的功能集和可扩展性而闻名。
pgAdmin是高级、开源、全功能且基于Web网页管理工具,对于PostgreSQL数据库来说,pgAdmin是其有效的管理工具。
在本文中,小编将简单介绍CentOS 8系统中安装PostgreSQL 12数据库服务器和pgAdmin 4的详细过程。
步骤1:在CentOS 8系统安装PostgreSQL
1、首先,通过运行以下dnf命令禁用内置的PostgreSQL模块。
# dnf -qy module disable postgresql
2、接下来,启用正式的PostgreSQL Yum存储库,命令如下:
# dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
3、接下来,安装PostgreSQL 12服务器和客户端软件包。
# dnf install postgresql12 postgresql12-server
4、安装完成后,初始化PostgreSQL数据库,然后启动PostgreSQL-12服务并使它能够在系统引导时自动启动。然后检查服务是否已启动并正在运行,并且已启用,如下所示。
# /usr/pgsql-12/bin/postgresql-12-setup initdb # systemctl start postgresql-12 # systemctl enable postgresql-12 # systemctl status postgresql-12 # systemctl is-enabled postgresql-12
步骤2:保护和配置PostgreSQL数据库
5、接下来,保护Postgres用户帐户和数据库管理用户帐户。可以使用下面所示的passwd实用程序为Postgres系统用户帐户创建密码。
#passwd postgres
6、然后切换到Postgres系统帐户,并为PostgreSQL管理数据库用户/角色创建一个安全且强度高的密码,如下所示。
# su - postgres $ psql -c "ALTER USER postgres WITH PASSWORD 'securep@sshere';" $ exit
7、现在配置Postgres服务器如何认证客户端(例如pgAdmin)。支持的身份验证方法包括基于密码的身份验证,该方法使用以下方法之一:md5,crypt或password。
在本文中,这里将在文件/var/lib/pgsql/12/data/pg_hba.conf中配置md5身份验证方法。
#vi /var/lib/pgsql/12/data/pg_hba.conf
找到以下几行,并将身份验证方法更改为md5,如下图中突出显示的那样。
host all all 127.0.0.1/32 md5 host all all ::1/128 md5
8、保存文件后,要在Postgres配置中应用最近的更改,请重新启动Postgres服务。
# systemctl restart postgresql-12
步骤3:在CentOS 8系统 中安装pgAdmin4
9、现在将安装pgAdmin 4来对PostgreSQL数据库进行管理。首先需要启用包含某些依赖项的EPEL和pgAdmin Yum存储库。
# dnf install epel-release # dnf install -y https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-redhat-repo-1-1.noarch.rpm
在Fedora系统上运行以下命令:
# dnf install -y https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-fedora-repo-1-1.noarch.rpm
10、接下来需要删除PostgreSQL官方yum存储库,以便从pgAdmin官方yum存储库安装最新稳定版本的pgAdmin。
# dnf remove -y pgdg-redhat-repo
11、现在为新安装的pgAdmin和EPEL存储库构建缓存,并使用以下命令安装pgAdmin。
# dnf makecache # yum install pgadmin4
12、接下来,启动httpd服务并使它能够在系统启动时自动启动,然后检查它是否已启动并正在运行,如图所示。
# systemctl start httpd # systemctl enable httpd # systemctl status httpd
步骤4:在CentOS 8系统中配置pgAdmin 4
13、pgadmin4包带有一个可配置脚本来对pgAdmin Web服务进行配置,这将创建的Web界面用来验证用户帐户,配置SELinux策略和Apache网络服务器部署pgAdmin的Web服务。
# /usr/pgadmin4/bin/setup-web.sh
样本输出如下
Setting up pgAdmin 4 in web mode on a Redhat-based platform... Creating configuration database... NOTE: Configuring authentication for SERVER mode. Enter the email address and password to use for the initial pgAdmin user account: Email address: admin@idccoupon.com Password: Retype password: pgAdmin 4 - Application Initialisation ====================================== Creating storage and log directories... Configuring SELinux... The Apache web server is running and must be restarted for the pgAdmin 4 installation to complete. Continue (y/n)? y Apache successfully restarted. You can now start using pgAdmin 4 in web mode at http://127.0.0.1/pgadmin4
14、如果启用并正在运行防火墙服务,请打开防火墙中的80和443端口,以允许到HTTPD Web服务器的通信,如下图所示。
# firewall-cmd --permanent --zone public --add-port 80/tcp # firewall-cmd --permanent --zone public --add-port 443/tcp # firewall-cmd --reload
步骤5:访问pgAdmin Web界面
15、要访问pgAdmin Web界面,请打开浏览器并输入以下URL地址进行访问。
http://SERVER_IP/pgadmin4 OR http://localhost/pgadmin4
登录界面加载后,请使用上面第13步中创建的电子邮件地址和密码登录。
16、接下来,通过单击“Add New Server”来添加新服务器连接。
17、然后在“General”选项卡下设置服务器名称,并可以选择留下评论用以描述连接。
18、然后通过填写以下内容定义连接配置文件:
- Host– PostgreSQL服务器的主机/ IP地址。
- Port –默认为5432。
- Maintenance Database-默认值应为Postgres。
- Username–数据库用户名,可以使用Postgres。
- Password–上述用户的密码。
然后单击“保存”按钮。
19、新服务器现在应显示在服务器列表下,如以下图中突出显示。
20、单击服务器名称时,其属性应在面板中进行加载出来,具体如下图所示:
总结
通过以上设置过程,现在已经在CentOS 8系统中成功安装了Postgresql 12和pgAdmin 4,有不清楚的小伙伴可以参考上述过程进行设置。
最后要注意的是,以上设置过程仅供参考,并且仅适用于CentOS 8系统,在安装配置过程中有任何疑问,欢迎留言评论。