我刚刚安装了postgresql,并在安装过程中指定了密码x。当我尝试执行createdb
并指定任何密码时,我得到消息:
createdb:无法连接到数据库postgres: FATAL:用户密码验证失败
createuser
也是如此。
我该如何开始呢?我可以将自己作为用户添加到数据库中吗?
发布于 2009-09-24 13:25:08
在Linux下,PostgresQL通常被配置为允许根用户以postgres超级用户postgres
的身份从shell (控制台或ssh)登录。
$ psql -U postgres
然后您只需像往常一样创建一个新数据库:
CREATE ROLE myuser LOGIN password 'secret';
CREATE DATABASE mydatabase ENCODING 'UTF8' OWNER myuser;
这应该可以在不接触pg_hba.conf
的情况下工作。如果你想通过网络使用一些图形用户界面工具来做到这一点--那么你需要使用pg_hba.conf
。
发布于 2012-09-04 01:30:11
这是我的解决方案:
su root
su postgres
psql
发布于 2017-01-12 12:08:15
您可以使用两种方法。这两种方法都需要创建用户和数据库。
$ sudo -u postgres创建用户--超级用户$USER $ createdb mydatabase $ psql mydatabase
$ sudo -u postgres psql postgres
然后,在psql shell中
创建角色myuser登录密码'mypass';使用OWNER =myuser创建数据库mydatabase;
然后你就可以登录了
$ psql -h本地主机-d mydatabase -U myuser -p
如果您不知道端口,您可以通过以postgres
用户的身份运行以下命令来获取它:
显示端口;
或,
$ grep "port =“/etc/postgresql/*/main/postgresql.conf
旁注:postgres
用户
我建议不要修改postgres
用户。
postgres
身份“登录”操作系统。您应该以postgres
.postgres
(相当于SQL Server的SA
)的PostgreSQL身份登录,您必须拥有对底层数据文件的写访问权限。https://stackoverflow.com/questions/1471571
复制相似问题