我最近安装了最新版本的Ubuntu,但还不习惯。将PostgreSQL与pgadmin3连接时遇到了几个问题。
我试图遵循一些教程来创建可以在pgadmin3中使用的本地主机服务器。我并没有真正达到目标,我认为我会通过安装,卸载,安装,卸载,尝试找到的答案来使情况变得更糟...此时,我不确定PostgreSQL是否干净。我不确定我可能已经安装了两个PostgreSQL。我尝试卸载它,但是我遇到了一个错误,该错误基本上表明PostgreSQL不在sudo中。
问题是我现在在控制台中运行psql时遇到此错误:
$psql
psql: FATAL: role "user" does not exist
我找不到pg_hba.conf
,在这一点上,我太害怕通过尝试关注其他帖子来使事情变得更糟。
我该如何进行这项工作?
正如评论中指出的那样,您的pg_hba.conf看起来不错。
通常,数据库将以postgres用户身份运行(检查ps aux | grep postgres
以查找运行postgres的用户名)。
例如sudo su - postgres
,以该用户身份登录,然后创建一个与您的普通Ubuntu用户帐户(createuser username
)相匹配的用户,最后创建一个具有相同名称的数据库,并将所有者(-O
)设置为该数据库用户,如下所示:createdb -O username username
。
这应该可以使调用psql
工作正常,并且只要以默认用户名username身份启动pgadmin,它也应该可以正常工作。
编辑:默认情况下,psql
将使用Linux用户名作为数据库用户名和数据库名的默认值。您可以使用来覆盖用户名-U someotherusername
,并通过在命令行中添加该数据库名称来连接到其他数据库psql someotherdbname
。您可能还会发现psql -l
对列出现有数据库很有用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句