我已经设置了一个本地 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>”一样吗?
如果是这样,那么我怀疑该帐户需要添加到数据库中。