我正在开发一个以PostgreSQL作为默认DBMS的开源应用程序。现在,当我在我的系统上安装它时,它的配置是这样的,PostgreSQL也可以和它一起安装
我的问题是访问已安装的PostgreSQL数据库。在安装过程中创建的数据库名为iviewdb
。
我在很多论坛上读到,默认的超级用户是postgres
,但当我试图通过命令提示符使用这个用户名访问数据库时,它会提示我输入我没有的密码。
我想知道PostgreSQL安装目录中的位置存储默认用户名和密码以及访问数据库的端口号。我甚至尝试过更改pg_hba.conf
文件,但这会给应用程序带来问题,并且无法启动。
如何查找此数据库的密码?我在Windows环境中工作。
密码不是以易于恢复的方式存储的,如果更改密码,应用程序可能无法正确访问数据库。不过,您可以在应用程序设置或文档中找到密码。
如果您决定冒险更改postgres用户的密码,请停止应用程序和PostgreSQL服务,然后编辑pg_hba.conf。添加(或更改(如果它已经存在)一行(如果它不存在,请在任何其他"主机…"行之前添加):
host all all 127.0.0.1/32 trust
并重新启动PostgreSQL服务。这应该允许您从localhost访问,在那里您可以更改postgres用户的密码,或者为自己添加另一个具有所需权限的用户。然后将pg_hba.conf文件设置回原来的状态,然后重新启动。
我遇到过类似的问题,我注意到在我的案例中,PostgreSQL在安装时设置的默认值如下:
username=postgres
password=''