我已经通过自制软件安装了PostgreSQL。
有一个名为“ postgres”的默认数据库。我还通过从终端运行命令“ create”创建了一个新数据库。但是,postgresql从未提示我设置任何用户名和密码。当我使用GUI(Datagrip)导航这些数据库时,可以在连接到这些数据库时将用户名和密码字段保留为空白。
我是Postgresql的新手,我知道MySQL。在MySQL中,有一个root帐户,我可以在其中创建具有某些特权的新帐户。 postgresql中的默认设置为NULL吗?
答案 0 :(得分:0)
默认情况下,postgres仅带有登录(对等)身份验证。您应该使用psql(postgres命令行客户端)添加新的登录名和密码。要访问psql,请运行:
sudo -u postgres psql
在psql内部,使用以下命令创建角色:
postgres=# CREATE USER myuser with password 'mypass';
最后,将某些数据库的权限授予该新角色:
GRANT ALL ON DATABASE mydb to myuser;
之后,您将可以使用DataGrip中的这个新用户访问数据库。
另一个(更高级的)选项是编辑pg_hba.conf
文件以启用本地其他身份验证方法。该页面可以为您提供帮助:https://www.postgresql.org/docs/9.1/auth-methods.html