删除数据库Enterprise EditionNot available on Aura
可以使用命令 DROP DATABASE
删除数据库。请注意,在删除数据库之前,必须先删除所有数据库别名。
语法
命令 | 语法 |
---|---|
|
|
示例
删除数据库
要删除数据库 customers
,请运行以下命令
DROP DATABASE customers
可以使用此命令删除标准数据库和复合数据库。 |
DROP DATABASE
命令会完全删除数据库。因此,它不再显示在命令 SHOW DATABASES
提供的列表中。
SHOW DATABASES YIELD name
+---------------------+ | name | +---------------------+ | "movies" | | "neo4j" | | "system" | +---------------------+
使用 IF EXISTS
删除数据库
DROP DATABASE
命令可以选择性地幂等,默认行为是在数据库不存在时返回错误。
将 IF EXISTS
附加到命令可确保在数据库不存在时不返回错误,并且不会发生任何事情。
如果存在一个指向数据库的现有别名,则始终会返回错误。在这种情况下,需要在删除数据库之前删除别名。
DROP DATABASE customers IF EXISTS
使用DUMP DATA
或DESTROY DATA
删除数据库
通过将DUMP DATA
附加到命令DROP DATABASE
,可以在删除数据库之前创建存储文件转储。
DROP DATABASE movies DUMP DATA
这些转储等效于由neo4j-admin database dump
生成的转储,并且可以使用neo4j-admin database load
命令以类似的方式恢复。
在 Neo4j 中,转储可以存储在由server.directories.dumps.root
设置指定的目录中(默认情况下,存储转储的路径为<neo4j-home>/data/dumps
)。
选项DESTROY DATA
明确请求命令的默认行为。
使用IF EXISTS
和DUMP DATA
/DESTROY DATA
删除数据库
选项IF EXISTS
和DUMP DATA
/DESTROY DATA
也可以组合使用。
一个示例可能如下所示
DROP DATABASE customers IF EXISTS DUMP DATA
删除具有指向它的本地数据库别名的数据库
有两种方法可以删除作为本地数据库别名目标的数据库
-
首先删除本地数据库别名,然后使用
DROP DATABASE name
删除数据库。指向数据库的远程数据库别名不会影响数据库的删除,因此无需事先删除。 -
使用
DROP DATABASE name CASCADE ALIASES
还可以删除在删除数据库的同时指向它的本地数据库别名。如果任何被删除的数据库别名是复合数据库的组成部分,则不会删除这些复合数据库。此命令不会影响指向正在删除的数据库的远程数据库别名。它们只会像针对不存在的数据库创建一样,不再解析其目标。
使用CASCADE ALIASES
需要DROP ALIAS
权限。有关权限的更多信息,请参阅别名管理权限。
以下示例创建了一个数据库movies
和一个指向它的本地数据库别名films
CREATE DATABASE movies
CREATE ALIAS films FOR DATABASE movies
然后,可以使用以下命令删除数据库movies
和本地数据库别名films
DROP DATABASE movies CASCADE ALIASES
选项RESTRICT
明确请求命令的默认行为。
对于标准数据库,在使用 |