天翼云代理,天翼云代理商,北京代理商
天翼云折扣专线:400-150-1900(全国市话)

在PostgreSQL中创建用户的两种简单方法

2023-11-07 03:26:30

在PostgreSQL中创建用户的两种简单方法

       PostgreSQL,通常称为Postgres,是一个开源的关系数据库管理系统(RDBMS),提供强大的功能,可扩展性和行业标准合规性。用户管理是管理员用于创建新用户以及为现有用户分配或撤销权限的一组关键Postgres功能。这对于数据库和更大的应用程序基础设施的整体平稳操作和安全性至关重要。


在这个综合教程中,我们将讨论在PostgreSQL中创建用户的几种方法。我们还将详细介绍如何设置密码和列出用户。
让我们从先决条件开始,然后进入在PostgreSQL中创建用户的细节。

内容表

1. PostgreSQL中创建用户

2. PostgreSQL中创建新用户

方法#1:使用安装工具

1. 使用用户交互模式

方法2:使用PostgreSQL Shell(PSQL)

3. PostgreSQL中创建超级用户

1. 方法#1:使用安装工具

2. 方法2:使用PSQL

4. User Management in PostgreSQLPostgreSQL用户管理

1. 为用户创建密码

2.方法#1:使用安装工具

3. 方法2:使用PSQL

4. 授予用户权限

5. 列出PostgreSQL中的所有用户

5.结论

6. 常见问题
PostgreSQL中创建用户
PostgreSQL中创建用户之前,请确保:

· 工作安装。

· 命令行或终端访问服务器。

· Working knowledge of SQL.SQL的工作知识。

PostgreSQL中创建新用户

您需要访问postgres用户才能在PostgreSQL中创建新用户。一旦你验证了这个用户的访问权限,让我们看看在PostgreSQL中创建一个新用户的两种方法。

方法#1:使用安装工具
PostgreSQL提供了一个专门用于创建新用户的实用程序。唯一的问题是,您需要以超级用户身份登录才能使用此实用程序。您也不需要为此方法连接到PSQL命令行。
启动终端并运行以下命令切换到postgres用户:

# sudo su - postgres

接下来,执行命令行用户命令:

# createuser -e <name>
您可以将这两个命令联合收割机合并为一个命令,如下所示:

# sudo -u postgres createuser -e <name>
例如,下面的命令使用MySQL用户实用程序创建一个名为steve的新用户:

# sudo -u postgres createuser -e steve

使用用户交互模式
除了这些命令之外,您还可以使用PostgreSQL用户交互模式,该模式简化了在PostgreSQL中创建用户的过程。
输入以下命令以启用交互模式: 

# sudo -u postgres createuser --interactive
在会议期间,您需要回答以下问题:

· 角色的名称。

· 角色是否应拥有超级用户权限。

· 创建数据库的权限。

· 授权创建其他角色。

方法2:使用PostgreSQL Shell(PSQL)
PSQL提供了在PostgreSQL中创建新用户的替代方法。
启动终端并输入以下命令切换到postgres用户并启动PSQL shell:

# sudo -u postgres psql

您可以看到提示符更改为postgres=#,表明我们现在处于PSQL而不是终端中。 
现在,使用以下命令创建一个新用户: 

postgres=# CREATE USER <name>;
实际上,这个命令是较长的CREATEROLE<名称>WITHLOGIN;命令的简写。

让我们使用命令来创建一个新用户,其名称为mark:

postgres=# CREATE USER mark;

PostgreSQL中创建超级用户
现在您已经知道如何在PostgreSQL中创建用户,下一步是创建超级用户角色。
超级用户角色在PostgreSQL环境中拥有最多的权限。超级用户角色拥有对所有数据和用户的完全访问权限,并且可以在命令执行期间绕过大多数用户权限检查。
请注意,只有超级用户可以将超级用户权限授予其他用户。
让我们讨论在PostgreSQL中创建超级用户角色的两种方法:
方法#1:使用安装工具
启动终端,使用以下命令切换到postgres用户,并使用带有-superuser标志的javascript用户实用程序创建一个超级用户。

# sudo -u postgres createuser --superuser <name>

或者,使用简写标记-s而不是

# sudo -u postgres createuser -s <name>
如果您在命令中提到的用户名已经存在,您将收到一条错误消息。在成功的情况下,你不会看到任何状态消息。

方法2:使用PSQL
启动PSQL并输入以下语句:

postgre=# CREATE ROLE <name> LOGIN SUPERUSER;

您将看到CREATE ROLE作为成功执行的输出。
除了这个冗长的语句,您还可以使用以下别名: 

postgres=# CREATE USER <name> SUPERUSER;
Ubuntu上安装PostgreSQL是一个简单的过程。阅读我们的全面教程,让您的RDBMS在几分钟内启动并运行!

User Management in PostgreSQLPostgreSQL用户管理
现在您已经清楚地了解了如何在PostgreSQL中创建用户,让我们看看如何管理这些用户。

用户管理涉及更改或更新用户密码以及分配和撤销权限。

Create a Password for the User为用户创建密码
您可以使用以下任一方法为新用户创建密码。& nbsp;你好

Method #1: Use the createuser Utility方法#1:使用安装工具
当使用用户界面实用程序创建新用户时,请使用-用户界面提示标志。您将看到输入用户密码的提示: 

# sudo -u postgres createuser <name> --pwprompt
您还可以使用-P标志作为-P提示标志的简写。例如,我们使用命令sudo -u postgres configurator steve -P 创建一个名为steve的新用户,并要求configurator实用程序提示输入用户的密码。
在命令执行期间,Postgres将加密并存储用户的密码。

Method #2: Use PSQL方法2:使用PSQL
重要:我们不建议使用此方法,因为用户密码在屏幕上可见,并且以明文形式传输。
还可以使用CREATEUSER语句创建用户并设置其密码。该语句的语法为: 

postgres=# CREATE USER <name> WITH PASSWORD '<password>';

如果用户已经存在,可以使用ALTER USER添加密码:

postgres=# ALTER USER <name> WITH PASSWORD '<password>';

设置健壮的密码只是安全PostgreSQL操作的几个推荐做法之一

Grant User Privileges授予用户权限
Postgres仅允许新用户帐户的登录权限。默认情况下,PostgreSQL中新创建的用户只有登录权限。
您可以在创建新用户帐户时通过在命令中提及他们来为他们分配特定权限。这既适用于SQL用户实用程序,也适用于PSQL。
MySQL用户实用程序 的语法为

# createuser <option> <name>

在PSQL中:

postgres=# CREATE USER <name> WITH <option>;
例如,如果您希望创建一个用户并为该帐户设置10个连接限制,请在终端中使用以下命令(默认情况下,PostgreSQL不会对用户可以创建的连接数设置任何限制)

# sudo -u postgres createuser -c 10 -e <username>
或者,如果您使用PSQL,请运行以下语句:

postgres=# CREATE USER <username> WITH CONNECTION LIMIT 10;

列出PostgreSQL中的所有用户
数据库管理员经常需要列出用户及其分配的角色和权限。这是数据库安全检查中的一个常见活动,用于检查用户权限。
按照以下步骤列出PostgreSQL安装中的所有用户。
首先以postgres用户的身份启动PSQL。

# sudo -u postgres psql
接下来,在PSQL中,输入以下命令以列出所有用户:

postgres=# \du

输出应该类似于以下内容,您可以在其中看到名称、属性列表(定义权限)以及用户所属的组:

您可以使用\du+命令获取更多详细信息: 

postgres=# \du+

您可以看到显示角色描述的附加列。
下面的表格列出了PostgreSQL中一些常见的用户角色:

Conclusion结论
管理用户是PostgreSQL数据库管理的一个重要方面。本指南提供了多种创建用户的方法,确保了用户管理过程的灵活性和控制。
对于一流的PostgreSQL托管,请选择RedSwitches的裸机服务器托管-您可靠的高性能解决方案。联系我们专用服务器托管即时专用服务器和10 Gbps专用服务器量身定制的解决方案

FAQs常见问题

Q. 什么是PostgreSQL中的超级用户?

PostgreSQL中的超级用户拥有所有权限,可以在数据库中执行任何操作。
Q.是否必须为PostgreSQL用户设置密码?

是的,出于安全原因,强烈建议为PostgreSQL用户设置强密码。

Q. How can I remove a user in PostgreSQL?Q.如何在PostgreSQL中删除用户?

您可以通过在PSQLshell中执行DROP USER username;命令来删除用户。优先考虑安全用户管理以保护数据的安全性和完整性至关重要。

Q. 如何在PostgreSQL中创建新用户?

要在PostgreSQL中创建新用户,可以在命令行或SQL客户端(如pgAdmin)中使用CREATE USER命令。下面是命令的示例:
Q.如何在PostgreSQL中为用户创建一个新的数据库?
要在PostgreSQL中为用户生成新数据库,请使用以下命令:
Q.如何在PostgreSQL中授予用户权限?
要在PostgreSQL中向用户授予权限,请使用GRANT命令。下面是一个例子:

Q.如何在PostgreSQL中更改用户的密码?
要在PostgreSQL中修改用户的密码,请使用ALTER USER命令。下面是一个示例:
Q.什么是pgAdmin,如何使用它在PostgreSQL中创建和管理用户?

pgAdmin是一个用于管理PostgreSQL数据库的开源工具。它有一个用户友好的界面,用于创建数据库,管理用户和其他任务。要开始使用此工具,请从官方网站下载并安装pgAdmin。然后,将其连接到PostgreSQL服务器,以有效地管理用户和数据库。

Q.如何使用pgAdmin在PostgreSQL中创建用户?
要使用pgAdmin在PostgreSQL中创建用户,请执行以下步骤:

· 打开pgAdmin并连接到PostgreSQL服务器。

· 展开服务器组并选择要使用的服务器。

· 右键单击登录/组角色,然后选择新建登录/组角色。

· 在常规选项卡中,输入首选用户名和密码。

· 如果需要,在其他选项卡中指定用户的权限和设置。

· 单击确定创建用户。

Q. PostgreSQL中分配给新用户的默认权限是什么?

默认情况下,在PostgreSQL中创建新用户时,他们不会获得任何数据库或对象的特权。要为用户提供必要的权限,必须显式使用GRANT命令。

Q. 如何在PostgreSQL中列出用户?

要查看PostgreSQL中的用户列表,您可以在命令行或SQL客户端中运行以下SQL命令:

SELECT username FROM pg_user;

Q. PostgreSQL中的用户和角色有什么区别?

PostgreSQL中,用户和角色在功能上是相同的。它们都代表具有各自权限的独特个人或实体。虽然较新版本的PostgreSQL更喜欢使用“角色”一词,但“用户”一词仍然被广泛使用,并支持向后兼容性。

12年经验 · 提供上云保障

服务热线:132-6161-6125(手机) 400-150-1900(全国市话)

站内导航: 天翼云服务器价格| 天翼云购买流程| 天翼云代理| 北京天翼云代理商| 杭州天翼云代理| 深圳天翼云代理商| 钉钉代理商| 阿里云代理| 公司官网

我公司收款账号| 天翼云备案系统

CopyRight © 2019 天翼云代理商. All Rights Reserved 京ICP备11011846号-15 管理-北京志远天辰科技有限公司