Teradata 用户管理17 Mar 2025 | 4 分钟阅读 Teradata 数据库管理员负责管理数据库中的用户。他们将为每个用户创建 Teradata 帐户,并限制其空间和对数据库对象的访问。 用户使用 CREATE USER 命令创建用户。在 Teradata 中,用户也类似于数据库。它们都可以分配空间并包含数据库对象,不同之处在于用户被分配了一个密码。 我们必须明确授予任何需要 CREATE USER 或 USER 权限的用户,除了用户 DBC,DBC 默认拥有这些权限。用户的创建者自动获得对该用户的 DROP USER 权限。 语法 下面是 CREATE USER 的语法。 - CREATE USER user_name: Teradata 数据库中单个用户的名称。我们不允许多个用户共享一个用户名来访问数据库。
- PERM: 可用于包含用户创建或拥有的对象的字节空间。永久空间不能超过用户直接所有者的当前 PERM,通常是 CREATE USER 语句的 FROM 子句中指定的数据库或用户。
- PASSWORD = password: 临时密码。如果系统根据创建安全管理员用户的建议进行设置,则用户在首次登录时会提示将临时密码更改为私人密码。
- TEMPORARY: 只有全局临时表和易失表等对象才需要临时空间。在为用户分配临时空间之前,我们应该制定一个使用需要临时空间的数据库对象的策略。我们可以在以后使用 MODIFY USER 或 MODIFY PROFILE 语句添加临时空间规范。
- SPOOL: 定义用户可用于中间查询结果、易失表或格式化查询答案集的空间量。系统从未使用的系统永久空间借用假脱机空间,例如在创建假脱机空间保留时的假脱机保留。
配置文件中指定的假脱机空间优先于 CREATE USER 语句中定义的假脱机空间。 除非用户需要特殊的假脱机考虑,否则请将假脱机空间指定为配置文件的一部分。 假脱机空间分配应约为用户可访问的最大数据库永久空间的 20%。
注意:创建用户时,用户名、永久空间和密码是强制性的。但其他字段是可选的。示例 下面是创建用户 T001 的示例。 帐户CREATE USER 中的 ACCOUNT 选项用于分配帐户。创建新用户时,用户可以被分配给 - 用户,但配置文件包含多个帐户。默认是字符串中的第一个帐户。用户可以提交 SET SESSION ACCOUNT 语句,将当前会话的默认值设置为其他帐户之一。
- 一个用户,但配置文件只包含一个帐户。默认是配置文件中定义的帐户。
- 一个用户,但配置文件不包含帐户。默认是用户直接所有者的帐户标识符。
- 未分配给用户,默认是用户直接所有者的帐户标识符。
注意 - 如果用户定义指定了帐户但未指定配置文件,则默认帐户是用户定义中的帐户字符串。
- 如果您为用户分配了一个配置文件,并且该配置文件指定了一个帐户字符串,则该配置文件帐户对该用户的 AMPUsage 和 DBQL 有效。但是,系统会使用 DBC.DatabaseV 视图中找到的值进行空间记帐。
语法 下面是带帐户选项的 CREATE USER 语法。 示例 以下示例创建用户 T002 并将其帐户分配为 IT 和 Admin。 用户可以在登录 Teradata 系统时或登录系统后使用 SET SESSION 命令指定帐户 ID。 授予权限GRANT 命令用于将数据库对象上的一项或多项权限分配给用户或数据库。 语法 下面是 GRANT 命令的语法。 注意 权限可以是 INSERT、SELECT、UPDATE、REFERENCES。示例 下面是 GRANT 语句的示例。 撤销权限REVOKE 命令从用户或数据库中删除权限。REVOKE 命令只能删除显式权限。 语法 下面是 REVOKE 命令的基本语法。 示例 以下是 REVOKE 命令的示例。
|