Source: https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/alter-user/ Documentation version: v5.3.2 # ALTER USER `ALTER USER`命令用于在 Catalog 中设置当前用户的主 Schema 或主图、或修改用户密码。 主 Schema 或主图设置后,或密码修改后,当前活跃会话仍然保持有效。 ## 前提条件 - 仅具备`ADMIN`角色的用户可以为所有用户设置主 Schema 或主图。其他用户只能设置自己的主 Schema 或主图。 - 每位用户只能修改自己的密码。 ## 语法 语法图源码 alter_user_schema alter_user_graph alter_user_password_command ```` alter_user_schema ::= 'ALTER' 'USER' user_name 'SET' 'HOME_SCHEMA' schema_reference alter_user_graph ::= 'ALTER' 'USER' user_name 'SET' 'HOME_GRAPH' (schema_reference '/')? graph_name alter_user_password_command ::= 'ALTER' 'USER' user_name 'WITH' 'PASSWORD' '"' new_password '"' ```` ## 参数 ### `user_name` 需要设置主 Schema、主图、或修改密码的用户名称。 ### `schema_reference` 所引用的 Schema 路径。 - 为用户设置主 Schema 时,`schema_reference`为要设置为主 Schema 的所在路径。若未设置,则该用户的主 Schema 默认为`/default_schema`。 - 为用户设置主图时,`schema_reference`为要设置为主图的图所在的 Schema 路径。若想将不在当前会话中的 Schema 中的图设置为主图,则必须指定对应 Schema 路径。若未指定,则所设置主图必须在当前 Schema 中。 路径区分大小写,必须与现有的 Schema 路径匹配。绝对路径或相对路径均可在命令中使用。您可以使用 [CREATE SCHEMA](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/schema/create/) 创建 Schema。关于为当前会话设置和查看 Schema 的更多信息,请参见 [SESSION SET](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/sessions/set/) 和 [SHOW CURRENT_SCHEMA](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-current-schema/)。 Note 设置主 Schema 或主图不会授予用户父级 Schema 的`USAGE`。如果主 Schema 不是`/default_schema`,需要单独授予所需的`USAGE`。更多信息,请参见 [Schema 访问控制](https://dev-docs.yueshu.com.cn/v5.3.2/server-admin/authorization/schema-access-control/)。 ### `graph_name` 要设置为主图的名称。名称区分大小写,必须与现有的图名称匹配。您可以使用 [CREATE GRAPH](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/ddl/graph/create/) 创建图。 ### `new_password` 用户的新密码。 新密码必须使用双引号或单引号包裹,且至少 8 个字符长,其中至少包含 1 个大写字母、1 个小写字母和 1 个数字。 ## 示例 ### 设置主 Schema ```` ''' // 创建 Schema CREATE SCHEMA IF NOT EXISTS /my_schema ''' ''' // 为当前用户设置主 Schema ALTER USER root SET HOME_SCHEMA /my_schema ''' ```` ### 将当前 Schema 中的图设置为主图 ```` ''' // 创建图类型 CREATE GRAPH TYPE IF NOT EXISTS home_graph_type AS {} ''' ''' // 创建图 CREATE GRAPH IF NOT EXISTS `home_graph` TYPED home_graph_type ''' ''' // 为当前用户设置主图 ALTER USER root SET HOME_GRAPH `home_graph` ''' ```` ### 将指定 Schema 中的图设置为主图 ```` ''' // 创建图类型 CREATE GRAPH TYPE IF NOT EXISTS home_graph_type AS {} ''' ''' // 创建图 CREATE GRAPH IF NOT EXISTS homegraph TYPED home_graph_type ''' ''' // 创建 Schema CREATE SCHEMA IF NOT EXISTS /my_schema ''' ''' // 为当前会话设置 Schema SESSION SET SCHEMA /my_schema ''' ''' // 为当前用户设置主图 ALTER USER root SET HOME_GRAPH /default_schema/homegraph ''' ```` ### 修改用户密码 ```` ALTER USER root WITH PASSWORD "Password123" ```` ## 更多信息 - 查看当前用户的信息,请参见 [SHOW CURRENT_USER](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-current-user/)。 - 查看加入当前服务组的所有用户的信息,请参见 [SHOW USERS](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-users/)。 - 查看当前会话的信息,请参见 [SHOW CURRENT_SESSION](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-current-session/)。 - 查看所有会话的信息,请参见 [SHOW SESSIONS](https://dev-docs.yueshu.com.cn/v5.3.2/database-gql-reference/data-admin/show/show-sessions/)。