PostgreSQL 与 QGIS 的信任连接

PostgreSQL 与 QGIS 的信任连接

我已经设置了一个本地 postgresql 数据库,由于它是本地数据库,因此我不必担心安全性或身份验证。我目前正在将此数据库与 QGis 和 PostGIS 一起使用来存储几何数据。因此,我已将文件内的所有连接设置pg_hba.conf为受信任。当我加载 pgAdmin4 时,我可以完全访问数据库服务器,而无需输入凭据。

然而,每次我启动 QGis 时,它都会要求输入数据库的凭据,即使一切都应设置为信任。

如何让 QGis 在使用 QGis 时不要求输入 postgresql 数据库的密码?

我的pg_hba.conf文件:

# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local   all             postgres                                trust

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust

我的连接详细信息如下:dbname='gis_data' host=127.0.0.1 port=5432

我从 QGis 得到的错误是:FATAL: role "<username>" does not exist

我的系统当前运行的是 Linux Mint 19 x64 和 Postgresql 10.5。

干杯,贾斯汀

答案1

QGIS 在哪个操作系统帐户下运行?

这和您引用的“<username>”一样吗?

如果是这样,那么我怀疑该帐户需要添加到数据库中。

答案2

通常,您可以通过告诉 QGIS 将凭据“存储”在 QGIS 文件中来阻止 PostgreSQL 凭据提示。

设置

请注意,使用如上所示的“基本”身份验证,将以纯文本形式将凭据存储在 .qgs/.qgz 文件中。请使用“配置”选项来提高安全性。

相关内容