管理标准数据库的数据库别名

可以通过对 system 数据库执行一组 Cypher 管理命令来创建和管理数据库别名。所需权限在 DBMS 别名管理权限中有详细说明。当通过 Bolt 连接到 DBMS 时,管理命令会自动路由到 system 数据库。

如果事务修改了数据库别名,为了安全起见,其他并发针对该别名执行的事务可能会被中止并回滚。这可以防止诸如同一别名在同一事务中针对多个目标数据库执行等问题。

数据库别名有两种类型:本地和远程

本地数据库别名

本地数据库别名只能指向同一 DBMS 内的数据库。它可以在所有 Cypher 命令中代替目标数据库使用。请注意,本地数据库别名将在执行命令时解析。权限是针对目标数据库定义的,而不是针对本地数据库别名。

远程数据库别名

远程数据库别名可以指向来自另一个 Neo4j DBMS 的数据库。它可以用于:

  • 连接到远程 Neo4j DBMS 的数据库。
    远程数据库别名需要进行配置才能安全地连接到远程目标,相关说明请参见 连接远程数据库。通过远程数据库别名,无法在远程数据库上模拟用户或执行管理命令。

  • USE 子句。

  • 定义对远程数据库的访问权限。

  • 2025.06 版本引入 为发送到远程数据库的查询设置默认 Cypher 版本。

从 Neo4j 2025.06 开始,数据库或远程别名可以指定默认 Cypher 版本。但是,本地数据库别名无法指定默认 Cypher 版本。它们始终使用其目标数据库的 Cypher 版本。

当针对数据库别名运行查询时,它将被重定向到目标数据库。用户的主数据库(home database)可以设置为别名,该别名在被使用时将解析为目标数据库。从 Neo4j 2025.04 开始,数据库别名也可以设置为 DBMS 的默认数据库。

本页介绍了如何管理标准数据库的数据库别名。有关作为 复合数据库 一部分创建的别名,请参见 管理复合数据库中的数据库别名

列出数据库别名

您可以使用 SHOW ALIASES FOR DATABASE 命令列出所有可用的数据库别名。该命令返回一个包含所有数据库别名的表,无论它们是否属于复合数据库。
如果您需要更多详细信息,可以在命令后附加 YIELD *YIELD * 子句返回完整的列集合。所需权限在 DBMS 别名管理权限中有详细说明。

表 1. 可用列
描述 类型 默认输出

名称 (name)

数据库别名的全限定名称。

STRING

composite

此别名所属的复合数据库名称;如果别名不属于复合数据库,则为 null

STRING

database

目标数据库的名称。

此列根据用户的 ACCESS 权限进行过滤。但是,某些权限使用户能够查看附加数据库,而不受其 ACCESS 权限的限制:

  • 拥有 CREATE DATABASEDROP DATABASEALTER DATABASESET DATABASE ACCESS 权限的用户可以查看所有标准数据库。

  • 拥有 CREATE COMPOSITE DATABASEDROP COMPOSITE DATABASECOMPOSITE DATABASE MANAGEMENT 权限的用户可以查看所有复合数据库。

  • 拥有 DATABASE MANAGEMENT 权限的用户可以查看所有数据库。

  • 用户始终可以查看 system 数据库。

如果用户未被授予目标数据库的 ACCESS 权限,且上述特殊情况均不适用,则该数据库对用户不可见,此列将显示为 null

STRING

location

数据库的位置,即 local(本地)或 remote(远程)。

STRING

url

目标位置,如果目标是本地则为 null

STRING

凭据

2026.01 版本引入 用于连接远程数据库的凭据类型,即 STORED NATIVE CREDENTIALS(存储的原生凭据)或 OIDC CREDENTIAL FORWARDING(OIDC 凭据转发);如果目标数据库是本地的,则为 null。

STRING

user(用户)

连接到远程数据库的原生用户;如果目标数据库是本地的,或者使用 OIDC 凭据转发进行远程认证,则为 null

STRING

driver

用于连接远程数据库的驱动程序选项;如果目标数据库是本地的,则为 null。查看允许用于远程数据库别名的 驱动程序设置 列表。

MAP

defaultLanguage

2025.06 版本引入 非组成部分的远程数据库别名的默认语言;如果是组成部分或本地数据库别名,则为 null

STRING

属性

在数据库别名上设置的任何属性。

MAP

显示所有数据库别名

要列出所有数据库别名,请使用不带任何额外参数的 SHOW ALIASES FOR DATABASE 命令。此命令返回 DBMS 中所有数据库的所有数据库别名,包括本地和远程别名。

查询
SHOW ALIASES FOR DATABASE
结果
+--------------------------------------------------------------------------------------------------------------------------+
| name              | composite | database  | location | url                       | credentials                 | user    |
+--------------------------------------------------------------------------------------------------------------------------+
| "films"           | NULL      | "movies"  | "local"  | NULL                      | NULL                        | NULL    |
| "motion pictures" | NULL      | "movies"  | "local"  | NULL                      | NULL                        | NULL    |
| "movie scripts"   | NULL      | "scripts" | "remote" | "neo4j+s://location:7687" | "STORED NATIVE CREDENTIALS" | "alice" |
+--------------------------------------------------------------------------------------------------------------------------+

显示特定数据库别名

要仅列出一个数据库别名,SHOW ALIASES 命令接受一个别名名称。

查询
SHOW ALIAS films FOR DATABASES
结果
+--------------------------------------------------------------------------+
| name    | composite | database | location | url  | credentials | user    |
+--------------------------------------------------------------------------+
| "films" | NULL      | "movies" | "local"  | NULL | NULL        | NULL    |
+--------------------------------------------------------------------------+

显示所有数据库别名的详细信息

要查看所有数据库别名的所有列,请在 SHOW ALIASES FOR DATABASE 命令中使用 YIELD * 子句。

查询
SHOW ALIASES FOR DATABASE YIELD *
结果
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name              | composite | database  | location | url                       | credentials                 | user    | driver                                                                                                                                                                                                         | defaultLanguage | properties                |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "films"           | NULL      | "movies"  | "local"  | NULL                      | NULL                        | NULL    | NULL                                                                                                                                                                                                           | NULL            | {}                        |
| "motion pictures" | NULL      | "movies"  | "local"  | NULL                      | NULL                        | NULL    | NULL                                                                                                                                                                                                           | NULL            | {namecontainsspace: TRUE} |
| "movie scripts"   | NULL      | "scripts" | "remote" | "neo4j+s://location:7687" | "STORED NATIVE CREDENTIALS" | "alice" | {connection_pool_idle_test: PT2M, connection_pool_max_size: 10, logging_level: "INFO", ssl_enforced: TRUE, connection_pool_acquisition_timeout: PT1M, connection_timeout: PT5S, connection_max_lifetime: PT1H} | "CYPHER 25"     | {}                        |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

显示数据库别名数量

要查看数据库别名的数量,请配合 YIELDRETURN 使用 count() 聚合函数。

查询
SHOW ALIASES FOR DATABASE YIELD *
RETURN count(*) as count
结果
+-------+
| count |
+-------+
| 3     |
+-------+

过滤和排序数据库别名

您可以使用 YIELDORDER BYWHERE 子句来过滤和排序 SHOW ALIASES FOR DATABASE 命令的结果。YIELD 子句允许您指定要返回的列,ORDER BY 子句根据指定的列对结果进行排序。WHERE 子句根据条件过滤结果。

查询
SHOW ALIASES FOR DATABASE YIELD name, url, database
ORDER BY database
WHERE name CONTAINS 'e'

在此示例中

  • 使用 YIELD 子句减少了返回的列数。

  • 返回列的顺序已更改。

  • 使用 ORDER BYdatabase 列对结果进行排序。

  • 过滤结果,仅显示包含 'e' 的数据库别名名称。

也可以使用 SKIPLIMIT 对结果进行分页。

结果
+-----------------------------------------------------------+
| name              | url                       | database  |
+-----------------------------------------------------------+
| "motion pictures" | NULL                      | "movies"  |
| "movie scripts"   | "neo4j+s://location:7687" | "scripts" |
+-----------------------------------------------------------+

创建数据库别名

您可以使用 CREATE ALIAS 命令创建本地和远程数据库别名。有关作为复合数据库一部分的本地和远程数据库别名的更多信息,请参见 创建复合数据库中的数据库别名

所需权限在 DBMS 别名管理权限中有详细说明。

数据库别名名称受 别名名称 一节中指定的规则约束。

为本地数据库创建数据库别名

本地数据库别名指向同一 DBMS 内的数据库。不支持图(graph)或属性分片(property shard)目标。

查询
CREATE ALIAS `northwind` FOR DATABASE `northwind-graph-2021`

创建本地数据库别名后,它将显示在 SHOW DATABASES 命令提供的 aliases 列中,以及 SHOW ALIASES FOR DATABASE 命令中。

查询
SHOW DATABASE `northwind`
结果
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                   | type       | aliases       | access       | address          | role      | writer | requestedStatus | currentStatus | statusMessage | default | home  | constituents |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "northwind-graph-2021" | "standard" | ["northwind"] | "read-write" | "localhost:7687" | "primary" | TRUE   | "online"        | "online"      | ""            | FALSE   | FALSE | []           |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
查询
SHOW ALIAS `northwind` FOR DATABASE
结果
+-----------------------------------------------------------------------------------------+
| name        | composite | database               | location | url  | credentials | user |
+-----------------------------------------------------------------------------------------+
| "northwind" | NULL      | "northwind-graph-2021" | "local"  | NULL | NULL        | NULL |
+-----------------------------------------------------------------------------------------+

在创建数据库别名时使用 IF EXISTSOR REPLACE

CREATE ALIAS 命令是可选幂等的,默认行为是如果数据库别名已存在则报错。为避免这种情况,您可以在命令后附加 IF EXISTSOR REPLACE。两者都会检查给定名称的任何远程或本地数据库别名;IF NOT EXISTS 还会检查是否已存在同名的数据库。

  • 在命令后附加 IF NOT EXISTS。这确保了如果已存在同名数据库或数据库别名,不会返回错误,也不会执行任何操作。

    查询
    CREATE ALIAS `northwind` IF NOT EXISTS  FOR DATABASE `northwind-graph-2021`
  • 在命令后附加 OR REPLACE。这意味着如果已存在同名的数据库别名,它将被新的别名替换。

    查询
    CREATE OR REPLACE ALIAS `northwind` FOR DATABASE `northwind-graph-2021`

    这等同于执行 DROP ALIAS `northwind` IF EXISTS FOR DATABASE,然后执行 CREATE ALIAS `northwind` FOR DATABASE `northwind-graph-2021`

这些命令中的 IF NOT EXISTSOR REPLACE 部分不能同时使用。

设置本地数据库别名的属性

您可以使用 CREATE ALIAS 命令的 PROPERTIES 子句为本地数据库别名设置属性。这些属性稍后可在查询中使用 graph.propertiesByName() 函数调用。例如:

查询
CREATE ALIAS `northwind-2022`
FOR DATABASE `northwind-graph-2022`
PROPERTIES { newestNorthwind: true, index: 3 }

要验证属性是否已设置,请使用带有 YIELD 子句的 SHOW ALIASES FOR DATABASE 命令。

查询
SHOW ALIAS `northwind-2022` FOR DATABASE YIELD name, properties
结果
+------------------------------------------------------+
| name             | properties                        |
+------------------------------------------------------+
| "northwind-2022" | {index: 3, newestnorthwind: TRUE} |
+------------------------------------------------------+

为远程数据库创建数据库别名

数据库别名可以通过提供 URL 和远程 Neo4j DBMS 上的用户凭据来指向远程数据库。有关必要的配置,请参见 配置远程数据库别名

由于远程数据库别名指向不在当前 DBMS 中的数据库,因此它们不会像本地数据库别名那样从目标获取默认 Cypher 版本。相反,它们被分配由 db.query.default_language 给出的版本(在 neo4j.conf 文件中设置)。或者,您可以在 CREATE ALIASALTER ALIAS 命令中指定版本。有关详细信息,请参见 为远程数据库别名设置默认 Cypher 版本更改远程数据库别名的默认 Cypher 版本

创建远程数据库别名时,需要指定用于连接到远程 DBMS 的凭据。您可以在两种类型的凭据之间进行选择:

  • STORED NATIVE CREDENTIALS,使用远程 DBMS 上单个原生用户的凭据。

  • 2026.01 版本引入 OIDC CREDENTIAL FORWARDING,转发来自本地 DBMS 上已登录用户的 bearer 身份验证令牌。用户必须使用支持 OIDC 的身份提供商登录。

您也可以在创建远程数据库别名时使用 IF EXISTSOR REPLACE。其工作方式与 在创建数据库别名时使用 IF EXISTSOR REPLACE 一节中描述的相同。两者都会检查任何远程或本地数据库别名(IF NOT EXISTS 还会检查数据库)。

使用存储的原生凭据创建远程数据库别名

您可以通过在创建别名时指定 USERPASSWORD 子句,使用存储的原生凭据创建远程数据库别名。例如:

查询
CREATE ALIAS `remote-northwind-stored-credentials` FOR DATABASE `northwind-graph-2020`
AT "neo4j+s://location:7687"
USER alice
PASSWORD 'example_secret'

使用 SHOW ALIASES FOR DATABASE 命令验证远程数据库别名是否已正确创建。

查询
SHOW ALIAS `remote-northwind-stored-credentials`
FOR DATABASE
结果
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                                  | composite | database               | location | url                       | credentials                 | user    |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+
| "remote-northwind-stored-credentilas" | NULL      | "northwind-graph-2020" | "remote" | "neo4j+s://location:7687" | "STORED NATIVE CREDENTIALS" | "alice" |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------+

使用 OIDC 凭据转发创建远程数据库别名

您可以通过在创建别名时指定 OIDC CREDENTIAL FORWARDING 子句来使用 OIDC 凭据转发创建远程数据库别名。OIDC CREDENTIAL FORWARDING 子句将远程数据库别名配置为使用已登录用户的 OIDC 凭据进行身份验证。要使用此方法进行身份验证,本地和远程 DBMS 都必须配置通过实现 OIDC 标准的身份提供商进行 SSO 身份验证和授权。有关如何配置 OIDC 身份提供商的详细信息,请参见 SSO 集成

查询
CREATE ALIAS `remote-northwind-oidc-credential-forwarding` FOR DATABASE `northwind-graph-2020`
AT "neo4j+s://location:7687"
OIDC CREDENTIAL FORWARDING

由于别名在指向远程 DBMS 时使用已登录用户的凭据,因此没有存储的凭据,并且用户将显示为 NULL

查询
SHOW ALIAS `remote-northwind-oidc-credential-forwarding`
FOR DATABASE
结果
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                                          | composite | database               | location | url                       | credentials                  | user    |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "remote-northwind-oidc-credential-forwarding" | NULL      | "northwind-graph-2020" | "remote" | "neo4j+s://location:7687" | "OIDC CREDENTIAL FORWARDING" | NULL    |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+

使用驱动程序设置创建远程数据库别名

可以针对每个数据库别名覆盖用于连接到远程数据库的默认驱动程序设置。

这是允许用于远程数据库别名的驱动程序设置列表:

您可以使用 CREATE ALIASALTER ALIAS 命令的 DRIVER 子句,在创建远程数据库别名时设置这些驱动程序设置。例如,以下查询创建了一个远程数据库别名,并使用驱动程序设置 connection_timeoutconnection_pool_max_size 连接到远程数据库 northwind-graph-2020

查询
CREATE ALIAS `remote-with-driver-settings` FOR DATABASE `northwind-graph-2020`
AT "neo4j+s://location:7687"
USER alice
PASSWORD 'example_secret'
DRIVER {
  connection_timeout: duration({minutes: 1}),
  connection_pool_max_size: 10
}

要查看包括驱动程序设置在内的远程数据库别名详细信息,请使用带有 YIELD * 子句的 SHOW ALIASES FOR DATABASE 命令。

查询
SHOW ALIAS `remote-with-driver-settings` FOR DATABASE YIELD *
结果
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                          | composite | database               | location | url                       | credentials                 |  user   | driver                                                   | properties |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "remote-with-driver-settings" | NULL      | "northwind-graph-2020" | "remote" | "neo4j+s://location:7687" | "STORED NATIVE CREDENTIALS" | "alice" | {connection_pool_max_size: 10, connection_timeout: PT1M} | {}         |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

为远程数据库别名设置默认 Cypher 版本

您可以使用 CREATE ALIASALTER ALIAS 命令的 DEFAULT LANGUAGE 子句为远程数据库别名设置默认 Cypher 版本。例如,以下查询创建了一个默认语言为 CYPHER 25 的远程数据库别名:

查询
CREATE ALIAS `remote-with-default-language`
FOR DATABASE `northwind-graph-2020`
  AT "neo4j+s://location:7687"
  USER alice
  PASSWORD 'example_secret'
  DEFAULT LANGUAGE CYPHER 25

要查看包括默认语言在内的远程数据库别名详细信息,请使用带有 YIELD 子句的 SHOW ALIASES FOR DATABASE 命令。

查询
SHOW ALIAS `remote-with-default-language` FOR DATABASE YIELD name, defaultLanguage
结果
+--------------------------------------------------+
| name                           | defaultLanguage |
+--------------------------------------------------+
| "remote-with-default-language" | "CYPHER 25"     |
+--------------------------------------------------+

将默认语言设置为 CYPHER 25 可确保在该数据库上运行的所有查询都将使用该数据库当前运行的 Cypher 25 版本(除非您在查询前加上 CYPHER 5,这将覆盖此默认值)。例如,具有默认语言 Cypher 25 的 Neo4j 2025.08 数据库将使用 Neo4j 2025.08 中存在的 Cypher 25,包括在 Neo4j 2025.06、2025.07 和 2025.08 中引入的所有更改。

设置远程数据库别名的属性

您可以使用 CREATE ALIAS 命令的 PROPERTIES 子句为远程数据库别名设置属性。这些属性稍后可在查询中使用 graph.propertiesByName() 函数调用。

查询
CREATE ALIAS `remote-northwind-2021` FOR DATABASE `northwind-graph-2021` AT 'neo4j+s://location:7687'
USER alice PASSWORD 'password'
PROPERTIES { newestNorthwind: false, index: 6 }

要查看远程数据库别名的属性,请使用带有 YIELD 子句的 SHOW ALIASES FOR DATABASE 命令。

查询
SHOW ALIAS `remote-northwind-2021` FOR DATABASE YIELD name, properties
结果
+--------------------------------------------------------------+
| name                    | properties                         |
+--------------------------------------------------------------+
| "remote-northwind-2021" | {index: 6, newestnorthwind: FALSE} |
+--------------------------------------------------------------+

更改数据库别名

您可以使用 ALTER ALIAS 命令更改本地和远程数据库别名。对于所有别名,该命令允许您更改目标数据库和数据库别名的属性。对于远程别名,该命令还允许您更改 URL、用户凭据、默认语言或驱动程序设置。所需权限在 DBMS 别名管理权限中有详细说明。仅会更改所使用的子句。

本地数据库别名不能更改为远程别名,反之亦然。

更改本地数据库别名的目标

您可以使用 ALTER ALIAS 命令的 SET DATABASE TARGET 子句更改本地数据库别名的目标数据库。例如:

查询
ALTER ALIAS `northwind`
SET DATABASE TARGET `northwind-graph-2021`

要验证本地数据库别名是否具有新目标数据库,可以使用 SHOW DATABASE 命令。它会显示在目标数据库的 aliases 列中。

SHOW DATABASE `northwind-graph-2021`
结果
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                   | type       | aliases       | access       | address          | role      | writer | requestedStatus | currentStatus | statusMessage | default | home  | constituents |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "northwind-graph-2021" | "standard" | ["northwind"] | "read-write" | "localhost:7687" | "primary" | TRUE   | "online"        | "online"      | ""            | FALSE   | FALSE | []           |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

更改远程数据库别名的目标

您可以使用 ALTER ALIAS 命令的 SET DATABASE TARGET 子句更改远程数据库别名,使其指向不同的远程数据库。例如:

查询
ALTER ALIAS `remote-northwind`
SET DATABASE TARGET `northwind-graph-2020` AT "neo4j+s://other-location:7687"

更改远程数据库别名存储的原生凭据和驱动程序设置

您可以使用 ALTER ALIAS 命令的 SET DATABASE 子句的 USERPASSWORDDRIVER 子句更改远程数据库别名的存储原生凭据和驱动程序设置。例如:

查询
ALTER ALIAS `remote-with-driver-settings`
SET DATABASE
  USER bob
  PASSWORD 'new_example_secret'
  DRIVER {
    connection_timeout: duration({ minutes: 1}),
    logging_level: 'debug'
  }

所有驱动程序设置都会被新的设置替换。在这种情况下,如果不重复设置 connection_pool_max_size,该值将被删除并恢复为默认值。

更改远程数据库别名的凭据类型

目前不支持使用 ALTER ALIAS 命令更改远程数据库别名的凭据类型(STORED NATIVE CREDENTIALSOIDC CREDENTIAL FORWARDING)。要更改凭据类型,必须删除该远程数据库别名并将其替换为新别名。

删除别名后,所有相关的权限、驱动程序设置和其他属性都将丢失,需要为新别名重新指定。有关如何管理远程数据库别名的访问权限和其他权限的信息,请参见 数据库权限

从远程数据库别名中删除所有自定义驱动程序设置

您可以通过将 DRIVER 子句设置为空映射 {},从远程数据库别名中删除所有自定义驱动程序设置。

查询
ALTER ALIAS `movie scripts` SET DATABASE
DRIVER {}

更改远程数据库别名的默认 Cypher 版本

您可以使用 ALTER ALIAS 命令的 SET DATABASE DEFAULT LANGUAGE 子句更改远程数据库别名的默认 Cypher 版本。例如:

查询
ALTER ALIAS `remote-with-default-language`
SET DATABASE DEFAULT LANGUAGE CYPHER 5

将默认语言设置为 CYPHER 5 可确保在该数据库上运行的所有查询都将使用 Neo4j 2025.06 版本发布时所具备的 Cypher 5 版本(除非您在查询前加上 CYPHER 25,这会覆盖此默认设置)。2025.06 版本之后引入的任何更改都不会影响查询的语义。

更改本地和远程数据库别名的属性

您可以使用 ALTER ALIAS 命令的 SET DATABASE PROPERTIES 子句更改本地或远程数据库别名的属性。例如:

查询
ALTER ALIAS `motion pictures` SET DATABASE PROPERTIES { nameContainsSpace: true, moreInfo: 'no, not really' }
查询
ALTER ALIAS `movie scripts` SET DATABASE PROPERTIES { nameContainsSpace: true }

更新后的属性随后可在查询中使用 graph.propertiesByName() 函数

在更改数据库别名时使用 IF EXISTS

ALTER ALIAS 命令是可选幂等的,默认行为是如果数据库别名不存在则报错。在命令后附加 IF EXISTS 可确保如果别名不存在,不会返回错误,也不会执行任何操作。

查询
ALTER ALIAS `no-alias` IF EXISTS SET DATABASE TARGET `northwind-graph-2021`
(no changes, no records)

删除数据库别名

您可以使用 DROP ALIAS 命令删除本地和远程数据库别名。所需权限在 DBMS 别名管理权限中有详细说明。

删除本地数据库别名

您可以使用 DROP ALIAS 命令删除本地数据库别名。例如:

查询
DROP ALIAS `northwind` FOR DATABASE

要验证本地数据库别名是否已删除,可以使用 SHOW DATABASES 命令。已删除的别名将不再出现在 aliases 列中。

查询
SHOW DATABASE `northwind-graph-2021`
结果
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| name                   | type       | aliases | access       | address          | role      | writer | requestedStatus | currentStatus | statusMessage | default | home  | constituents |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| "northwind-graph-2021" | "standard" | []      | "read-write" | "localhost:7687" | "primary" | TRUE   | "online"        | "online"      | ""            | FALSE   | FALSE | []           |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

删除远程数据库别名

您可以使用 DROP ALIAS 命令删除远程数据库别名。例如:

查询
DROP ALIAS `remote-northwind` FOR DATABASE

要验证远程数据库别名是否已删除,可以使用 SHOW ALIASES FOR DATABASE 命令。

查询
SHOW ALIASES `remote-northwind` FOR DATABASE
结果
+-------------------------------------------------------------------+
| name | composite | database | location | url | credentials | user |
+-------------------------------------------------------------------+
+-------------------------------------------------------------------+

在删除数据库别名时使用 IF EXISTS

DROP ALIAS 命令是可选幂等的,默认行为是如果数据库别名不存在则报错。在别名名称后插入 IF EXISTS 可确保如果别名不存在,不会返回错误,也不会执行任何操作。

查询
DROP ALIAS `northwind` IF EXISTS FOR DATABASE
(no changes, no records)
© . This site is unofficial and not affiliated with Neo4j, Inc.