SHOW SETTINGS

可以使用SHOW SETTINGS在服务器上列出配置设置。

命令SHOW SETTINGS仅返回正在执行服务器上的设置。要检索特定服务器上的设置,您需要使用bolt方案直接连接到它。

命令SHOW SETTINGS仅返回默认输出。要获取完整输出,请使用可选的YIELD命令。完整输出:SHOW SETTINGS YIELD *

SHOW SETTINGS命令将生成一个包含以下列的表

表 1. 显示设置输出
描述 类型

name

设置的名称。 默认输出

STRING

value

设置的当前值。 默认输出

STRING

isDynamic

设置的值是否可以动态更新,无需重启服务器。有关动态更新设置值的说明,请参阅更新动态设置默认输出

BOOLEAN

defaultValue

设置的默认值。 默认输出

STRING

description

设置说明。 默认输出

STRING

startupValue

上次启动时设置的值。

STRING

isExplicitlySet

设置的值是否由用户显式设置,无论是通过配置还是动态设置。

BOOLEAN

validValues

设置的有效值的描述。

STRING

isDeprecated

设置是否已弃用。 在 5.9 中引入

BOOLEAN

语法

有关语法描述的更多详细信息,请参见此处

列出设置
SHOW SETTING[S] [setting-name[,...]]
[YIELD { * | field[, ...] } [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]
[WHERE expression]
[RETURN field[, ...] [ORDER BY field[, ...]] [SKIP n] [LIMIT n]]

设置名称必须作为一个或多个逗号分隔的带引号的STRING值提供,或者作为解析为STRINGLIST<STRING>的表达式提供。

使用RETURN子句时,YIELD子句是强制性的,不得省略。

列出所有设置

要使用默认输出列列出所有设置,可以使用SHOW SETTINGS命令。如果需要所有列,请使用SHOW SETTINGS YIELD *

查询
SHOW SETTINGS
表 2. 结果
name value isDynamic defaultValue description

"browser.allow_outgoing_connections"

"true"

false

"true"

"配置传出 Neo4j 浏览器连接的策略。"

"browser.credential_timeout"

"0s"

false

"0s"

"配置 Neo4j 浏览器在该空闲时间段后使已登录用户超时。将其设置为 0 表示没有限制。"

"browser.post_connect_cmd"

""

false

""

"Neo4j 浏览器成功连接到此服务器后要运行的命令。用分号分隔多个命令。"

"browser.remote_content_hostname_whitelist"

"guides.neo4j.com,localhost"

false

"guides.neo4j.com,localhost"

"Neo4j 浏览器允许从中获取内容的主机白名单。"

"browser.retain_connection_credentials"

"true"

false

"true"

"配置 Neo4j 浏览器是否存储用户凭据。"

"browser.retain_editor_history"

"true"

false

"true"

"配置 Neo4j 浏览器是否存储用户编辑器历史记录。"

"client.allow_telemetry"

"true"

false

"true"

"配置浏览器和 Bloom 等客户端应用程序是否发送产品分析数据。"

"db.checkpoint"

"PERIODIC"

false

"PERIODIC"

"配置检查点何时发生的常规策略。默认策略是“定期”检查点策略,如“db.checkpoint.interval.tx”和“db.checkpoint.interval.time”设置中所指定。Neo4j 企业版提供了两种替代策略:第一种是“连续”检查点策略,它将忽略这些设置并始终运行检查点进程。第二种是“体积”检查点策略,它会尽最大努力足够频繁地进行检查点,以便数据库不会在根据“db.tx_log.rotation.retention_policy”设置删除旧事务日志方面落后太多。"

"db.checkpoint.interval.time"

"15m"

false

"15m"

"配置检查点之间的时间间隔。数据库不会比这更频繁地进行检查点(除非检查点由其他事件触发),但如果执行检查点所需的时间超过配置的时间间隔,则可能会比此时间间隔不那么频繁地进行检查点。检查点是事务日志中的一个点,恢复将从此点开始。较长的检查点间隔通常意味着在发生崩溃时,恢复将需要更长时间才能完成。另一方面,较长的检查点间隔也可以减少数据库对系统施加的 I/O 负载,因为每个检查点都意味着刷新和强制所有存储文件。"

"db.checkpoint.interval.tx"

"100000"

false

"100000"

"配置检查点之间的交易间隔。数据库不会比此间隔更频繁地进行检查点(除非检查点由其他事件触发),但如果执行检查点花费的时间比配置的间隔长,则可能会比此间隔少进行检查点。检查点是事务日志中的一个点,恢复将从此点开始。较长的检查点间隔通常意味着如果发生崩溃,恢复将花费更长时间才能完成。另一方面,较长的检查点间隔还可以减少数据库对系统施加的 I/O 负载,因为每个检查点都意味着刷新和强制所有存储文件。默认值为 '100000',表示每 100000 个事务进行一次检查点。"

行数:10

上表仅显示查询的前 10 个结果。有关 Neo4j 中所有可用设置的完整列表,请参阅 配置设置

使用输出列过滤列出设置

可以使用 WHERE 子句过滤列出的设置。例如,以下查询返回以 'dbms' 开头的三个设置的名称、值和描述

查询
SHOW SETTINGS YIELD name, value, description
WHERE name STARTS WITH 'dbms'
RETURN name, value, description
LIMIT 3
表 3. 结果
name value description

"dbms.cluster.catchup.client_inactivity_timeout"

"10m"

"如果在给定持续时间内没有网络活动,则追赶协议将超时。客户端从服务器接收到的每个消息都会延长超时持续时间。"

"dbms.cluster.discovery.endpoints"

null

"服务器应联系以发现其他集群成员的端点列表(以逗号分隔)。通常,必须在此列表中指定所有集群成员,包括当前服务器。此设置配置发现服务 V1 的端点。"

"dbms.cluster.discovery.log_level"

"WARN"

"中间件日志记录的级别。"

行数:3

列出特定设置

可以通过设置名称指定要在列表中返回哪些设置。

查询
SHOW SETTINGS "server.bolt.enabled", "server.bolt.advertised_address", "server.bolt.listen_address"
表 4. 结果
name value isDynamic defaultValue description

"server.bolt.advertised_address"

"localhost:7687"

false

":7687"

"此连接器的公告地址。"

"server.bolt.enabled"

"true"

false

"true"

"启用 bolt 连接器。"

"server.bolt.listen_address"

"localhost:7687"

false

":7687"

"连接器应绑定到的地址。"

行数:3