配置设置
Neo4j 配置设置是在 neo4j.conf 中设置的。有关如何使用配置设置的详细信息,请参阅 The neo4j.conf file。
有关 2025-2026 系列中已更改、弃用或删除的配置设置列表,请参阅 Changes in Neo4j 2025-2026 series, Current deprecations, 和 Breaking changes in Neo4j 2025.01。
要列出 Neo4j 服务器上所有可用的配置设置,请运行 SHOW SETTINGS 命令。
动态配置设置
动态设置可以在运行时更改,无需重启服务。
动态设置标记为 动态 (Dynamic)。
|
运行时对配置的更改不会持久化。为避免重启 Neo4j 时丢失更改,请确保同时更新 neo4j.conf。 在集群环境中, 集群中的每个成员都有自己的 neo4j.conf 文件。建议数据库的设置在集群的所有成员之间保持一致。 |
有关如何更新动态配置设置的更多信息,请参阅 更新动态设置。
配置设置组企业版在 2025.05 中弃用
在 Neo4j 中部署多数据集群时,您可以配置负载均衡框架。
在 Neo4j 中,负载均衡系统基于插件架构。主要内置插件是 server_policies,由以下属性设置
dbms.routing.load_balancing.plugin=server_policies
server_policies 插件根据预定义的路由策略确定哪些服务器有资格处理客户端请求。如果客户端未指定路由策略,系统默认为使用所有可用服务器。
您可以使用以下属性格式定义路由策略
dbms.routing.load_balancing.config.server_policies.<policy-name>=<policy-definition>
其中 <policy-name> 是路由策略的名称,<policy-definition> 指定服务器选择逻辑。
对于默认策略,保留 default 策略名称。其默认值为 all()
dbms.routing.load_balancing.config.server_policies.default=all()
有关更多详细信息,请参阅 集群 → 多数据中心路由。
检查点设置
检查点是将所有待处理的页面更新从页面缓存刷新到存储文件的过程。此过程定期执行,用于在崩溃时恢复数据库。检查点设置控制检查点的频率,以及在每个检查点中写入磁盘的数据量。另请参阅 事务日志设置。
db.checkpoint
描述 |
配置检查点何时发生的通用策略。可能的值为
|
有效值 |
[PERIODIC, CONTINUOUS, VOLUME, VOLUMETRIC] 之一。 |
默认值 |
|
db.checkpoint.interval.time
描述 |
配置检查点之间的时间间隔。数据库运行检查点的频率不会高于指定的时间间隔(除非由其他事件触发),但如果执行检查点花费的时间比配置的时间间隔长,则检查点频率可能会降低。检查点是事务日志中恢复开始的点。更长的检查点间隔通常意味着在发生崩溃时恢复需要更长的时间。另一方面,更长的检查点间隔也可以减少数据库对系统施加的 I/O 负载,因为每个检查点都意味着刷新并强制写入所有存储文件。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.checkpoint.interval.tx
描述 |
配置检查点之间的事务间隔。数据库运行检查点的频率不会高于指定的时间间隔(除非由其他事件触发),但如果执行检查点花费的时间比配置的时间间隔长,则检查点频率可能会降低。检查点是事务日志中恢复开始的点。更长的检查点间隔通常意味着在发生崩溃时恢复需要更长的时间。另一方面,更长的检查点间隔也可以减少数据库对系统施加的 I/O 负载,因为每个检查点都意味着刷新并强制写入所有存储文件。默认值为 |
有效值 |
最小为 |
默认值 |
|
db.checkpoint.interval.volume
描述 |
配置检查点之间事务日志的卷。数据库运行检查点的频率不会高于指定的时间间隔(除非由其他事件触发),但如果执行检查点花费的时间比配置的时间间隔长,则检查点频率可能会降低。检查点是事务日志中恢复开始的点。更长的检查点间隔通常意味着在发生崩溃时恢复需要更长的时间。另一方面,更长的检查点间隔也可以减少数据库对系统施加的 I/O 负载,因为每个检查点都意味着刷新并强制写入所有存储文件。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
db.checkpoint.iops.limit动态
企业版 动态
描述 |
限制后台检查点进程每秒消耗的 IO 数。此设置是建议性的。它在 Neo4j 社区版中被忽略,并在企业版中尽力遵循。在这种情况下,IO 是 8 KiB 的(主要是顺序的)写入。以这种方式限制写入 IO 可以为 I/O 子系统留出更多带宽来处理随机读取 IO,这对于数据库无法完全容纳在内存中时查询的响应时间很重要。此设置的唯一缺点是较长的检查点时间可能会导致数据库或系统崩溃时恢复时间稍长。较小的数字意味着较低的 IO 压力,从而导致较长的检查点时间。设置为 |
有效值 |
一个整数。 |
默认值 |
|
db.checkpoint.throughput.limit动态在 2025.07 中引入
描述 |
限制后台检查点进程每秒的写入吞吐量。此设置是建议性的。它在 Neo4j 社区版中被忽略,并在企业版中尽力遵循。以这种方式限制写入 IO 可以为 I/O 子系统留出更多带宽来处理随机读取 IO,这对于数据库无法完全容纳在内存中时查询的响应时间很重要。此设置的唯一缺点是较长的检查点时间可能会导致数据库或系统崩溃时恢复时间稍长。较小的数字意味着较低的 IO 压力,从而导致较长的检查点时间。设置为 null 可禁用吞吐量限制并回退到 IOPS 限制。 |
有效值 |
一个字节大小(有效乘数为 B, KiB, KB, K, kB, kb, k, MiB, MB, M, mB, mb, m, GiB, GB, G, gB, gb, g, TiB, TB, PiB, PB, EiB, EB),最小为 8.00KiB。 |
默认值 |
云存储集成设置
云集成设置允许您指定自定义 Azure Blob 存储端点和主机机构,设置 Google Cloud Storage 存储桶的项目 ID,并定义 Amazon S3 中传输操作的目标吞吐量。
dbms.integrations.cloud_storage.azb.blob_endpoint_suffix企业版在 2025.03 中引入
描述 |
Azure Blob 存储端点后缀。如果您不使用 Azure 公共云(例如,如果您使用 Azure 政府版),则需要更改此设置。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.integrations.cloud_storage.azb.authority_endpoint企业版在 2025.03 中引入
描述 |
Azure 机构主机端点(仅某些身份验证方法需要,应以其完整形式指定 - 例如,https://login.microsoftonline.com)。 |
有效值 |
一个字符串。 |
默认值 |
集群设置
集群设置用于配置 Neo4j 集群的行为。有关更多信息,另请参阅 集群设置。
db.cluster.catchup.pull_interval企业版
描述 |
从服务器获取特定数据库的更新的间隔(来自该数据库的主服务器)。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.cluster.raft.apply.buffer.max_bytes企业版
描述 |
应用缓冲区中的最大字节数。此参数限制了应用缓冲区可以消耗的内存量。如果达到字节限制,即使未超过 max_entries,缓冲区大小也会受到限制。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
db.cluster.raft.apply.buffer.max_entries企业版
描述 |
Raft 日志条目预取缓冲区中的最大条目数。 |
有效值 |
一个整数。 |
默认值 |
|
db.cluster.raft.in_queue.batch.max_bytes企业版
描述 |
由 RAFT 处理的最大批处理大小(字节)。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
db.cluster.raft.so_keepalive_enabled企业版
描述 |
为所有 Raft TCP 通道设置 keepalive 套接字选项 (SO_KEEPALIVE)。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.cluster.raft.in_queue.max_bytes企业版
描述 |
RAFT 入队的最大字节数。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
db.cluster.raft.leader_transfer.priority_tag企业版
描述 |
服务器标签的名称,其成员应被优先选为领导者。这并不能保证领导者始终是此标签的成员,但集群将在可能时尝试将领导权转移给此类成员。如果使用 |
有效值 |
标识服务器标签的字符串。 |
默认值 |
db.cluster.raft.log.prune_strategy企业版
描述 |
RAFT 日志修剪策略,确定要修剪哪些日志。Neo4j 仅修剪直至最后一个已应用索引的日志条目,这保证了仅在其中的事务被安全地复制到本地事务日志并被大多数集群成员安全提交后,日志才会被标记为修剪。可能的值是字节大小或事务数(例如,200K txs)。 |
有效值 |
一个字符串。 |
默认值 |
|
db.cluster.raft.log_shipping.buffer.max_bytes企业版
描述 |
传输中缓存中的最大字节数。此参数限制了缓存可以消耗的内存量。如果达到字节限制,即使未超过 max_entries,缓存大小也会受到限制。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
db.cluster.raft.log_shipping.buffer.max_entries企业版
描述 |
传输中缓存中的最大条目数。增加大小需要更多内存,但可能会在高负载情况下提高性能。 |
有效值 |
一个整数。 |
默认值 |
|
dbms.cluster.network.client_inactivity_timeout企业版
描述 |
如果指定的持续时间过去而没有网络活动,则网络请求超时。客户端从服务器接收到的每条消息都会延长超时持续时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.endpoints企业版在 2025.01 中重命名
描述 |
服务器为了发现其他集群成员而应联系的端点的逗号分隔列表。所有托管 |
有效值 |
逗号分隔的列表,其中每个元素都是套接字地址,格式为 |
默认值 |
dbms.cluster.discovery.resolver_type企业版
描述 |
配置发现服务用于确定谁应该成为集群一部分的解析器类型。有效值为
|
有效值 |
一个字符串。 |
默认值 |
|
dbms.cluster.minimum_initial_system_primaries_count企业版
描述 |
最初形成集群 DBMS 所需的最小机器数。当至少这么多成员发现彼此、绑定在一起并引导了高可用系统数据库时,集群被视为已形成。因此,集群的初始机器中至少有这么多必须将 |
有效值 |
最小为 |
默认值 |
|
dbms.cluster.network.connect_timeout动态企业版
描述 |
等待建立网络连接的最长等待时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.network.handshake_timeout企业版
描述 |
协议协商握手的超时时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.network.max_chunk_size企业版
描述 |
集群机制允许在网络上传输的最大块大小。 |
有效值 |
范围在 |
默认值 |
|
dbms.cluster.network.supported_compression_algos企业版在 2025.01 中更改
描述 |
此服务器将在协商中允许的网络压缩算法(逗号分隔列表)。 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
dbms.cluster.raft.async_channel_acquisition_enabled企业版在 2025.02 中引入
描述 |
启用 Raft 发送方通道的异步获取。如果设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cluster.raft.binding_timeout企业版
描述 |
Neo4j 服务器上的数据库加入集群或与至少可用法定成员数形成新集群所允许的时间。成员由系统数据库的 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.raft.client.max_channels企业版
描述 |
两个节点之间用于操作 raft 协议的最大 TCP 通道数。每个数据库被分配一个通道,但单个通道可以被多个数据库使用。 |
有效值 |
一个整数。 |
默认值 |
|
dbms.cluster.raft.election_failure_detection_window企业版
描述 |
领导者选举发生的速率。注意,由于选举冲突,可能需要多次尝试才能找到领导者。该窗口应明显大于典型的通信延迟,以使冲突不太可能发生。 |
有效值 |
一个持续时间范围 <min-max>(有效单位为: |
默认值 |
|
dbms.cluster.raft.leader_failure_detection_window企业版
描述 |
检测到领导者丢失并在其中进行第一次重新选举尝试的时间窗口。该窗口应明显大于典型的通信延迟,以使冲突不太可能发生。 |
有效值 |
一个持续时间范围 <min-max>(有效单位为: |
默认值 |
|
dbms.cluster.raft.leader_transfer.balancing_strategy企业版
描述 |
在集群中转移数据库领导权时使用的策略。请注意,如果为给定的数据库指定了
|
有效值 |
[NO_BALANCING, EQUAL_BALANCING] 之一。 |
默认值 |
|
dbms.cluster.raft.log.pruning_frequency企业版
描述 |
RAFT 日志修剪频率。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.raft.log.reader_pool_size企业版
描述 |
RAFT 日志读取器池大小。 |
有效值 |
一个整数。 |
默认值 |
|
dbms.cluster.raft.log.rotation_size企业版
描述 |
RAFT 日志轮换大小。当日志达到此大小时,它将被轮换。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
|
dbms.cluster.raft.membership.join_max_lag企业版
描述 |
新追随者加入 Raft 组所接受的最大滞后量。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.raft.membership.join_timeout企业版
描述 |
新成员赶上的超时时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cluster.store_copy.max_retry_time_per_request企业版
描述 |
存储复制期间每个请求的最大重试时间。常规存储文件和索引在存储复制期间在单独的请求中下载。这配置了失败请求允许重新发送的最长时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
initial.dbms.automatically_enable_free_servers企业版
描述 |
自动启用处于 |
有效值 |
一个布尔值。 |
默认值 |
|
initial.dbms.default_primaries_count企业版
描述 |
标准数据库的初始默认主服务器数量。在第一次 DBMS 启动时初始化。如果用户未在 |
有效值 |
最小为 |
默认值 |
|
initial.dbms.default_secondaries_count企业版
描述 |
标准数据库的初始默认追随者数量。在第一次 DBMS 启动时初始化。如果用户未在 |
有效值 |
最小为 |
默认值 |
|
initial.dbms.default_property_shard_replica_count企业版在 2025.12 中引入
描述 |
属性分片的初始默认副本数。在第一次 DBMS 启动时初始化。如果用户未在 |
有效值 |
最小为 |
默认值 |
|
initial.server.allowed_databases企业版
描述 |
此服务器上允许的数据库名称列表;所有其他名称均被拒绝。空表示允许所有数据库。此配置在第一次 DBMS 启动时和/或启用新添加的服务器时进行初始化。该设置用作 |
有效值 |
在 2025.12 中更改 一个逗号分隔的集合,其中每个元素都是一个有效的数据库名称模式,仅包含字母字符、数字、点、问号、星号和连字符,长度在 1 到 63 个字符之间。 |
默认值 |
initial.server.denied_databases企业版
描述 |
此服务器上不允许的数据库名称列表。空表示不拒绝任何内容。此配置在第一次 DBMS 启动时和/或启用新添加的服务器时进行初始化。该设置用作 |
有效值 |
在 2025.12 中更改 一个逗号分隔的集合,其中每个元素都是一个有效的数据库名称模式,仅包含字母字符、数字、点、问号、星号和连字符,长度在 1 到 63 个字符之间。 |
默认值 |
在 Neo4j 2025.12 中,更新了 initial.server.allowed_databases 和 initial.server.denied_databases 设置的有效值。从 2025.12 开始,支持数据库名称模式(通配符),且最小字符数从 3 减少到 1。
initial.server.mode_constraint企业版
描述 |
确定服务器是被配置为仅托管主数据库、仅托管追随者数据库,还是两者都托管。在第一次 DBMS 启动时和/或启用新添加的服务器时进行初始化。该设置用作 |
有效值 |
[PRIMARY, SECONDARY, NONE] 之一。 |
默认值 |
|
initial.server.tags企业版
描述 |
数据库分配以及配置负载均衡和复制策略时使用的服务器标签名称列表。在第一次 DBMS 启动时和/或启用新添加的服务器时进行初始化。该设置用作 |
有效值 |
逗号分隔的列表,其中每个元素都是标识服务器标签的字符串,且不包含重复项。 |
默认值 |
server.cluster.advertised_address企业版
描述 |
事务传输服务器的已通告主机名/IP 地址和端口。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.cluster.catchup.connect_randomly_to_server_tags动态企业版
描述 |
由 connect-randomly-to-server-with-tag 选择策略使用的逗号分隔标签列表。当策略列表 ( |
有效值 |
逗号分隔的列表,其中每个元素都是标识服务器标签的字符串。 |
默认值 |
server.cluster.catchup.upstream_strategy企业版
描述 |
追随者用于选择从其拉取事务更新的上游服务器的降序策略列表。如果没有任何有效策略或列表为空,则默认策略为 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
server.cluster.catchup.user_defined_upstream_strategy企业版
描述 |
用户定义的上游选择策略的配置。当策略列表 ( |
有效值 |
一个字符串。 |
默认值 |
server.cluster.listen_address企业版
描述 |
事务传输服务器监听的网络接口和端口。请注意,也可以针对此端口运行备份客户端,因此始终通过防火墙限制对其的访问,并配置 SSL 策略。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.cluster.network.native_transport_enabled企业版
描述 |
如果可用,请使用原生传输。Linux 使用 Epoll,MacOS/BSD 使用 Kqueue。如果此设置设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
server.cluster.raft.advertised_address企业版
描述 |
RAFT 服务器的已通告主机名/IP 地址和端口。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
连接设置
连接设置控制服务器之间以及服务器与客户端之间的通信。Neo4j 通过连接器为 Bolt、HTTP 和 HTTPS 协议提供支持。有关连接器的更多信息,请参阅 配置网络连接器。
server.bolt.advertised_address
描述 |
此连接器的已通告地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.bolt.connection_keep_alive
描述 |
在等待来自活动进行中查询的响应的连接上发送 NOOP 之前的最长等待时间。最小值为 1 毫秒。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.bolt.connection_keep_alive_for_requests
描述 |
要启用 keep-alive 消息的消息类型,可以是 |
有效值 |
[ALL, STREAMING, OFF] 之一。 |
默认值 |
|
server.bolt.connection_keep_alive_probes
描述 |
在连接被视为陈旧之前允许遗漏的探测总数。最小值为 1。 |
有效值 |
最小为 |
默认值 |
|
server.bolt.connection_keep_alive_streaming_scheduling_interval
描述 |
所有带有活动查询的连接上每次预定 keep-alive 检查之间的时间间隔。零持续时间将关闭 keep-alive 服务。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.bolt.listen_address
描述 |
连接器应绑定的地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.bolt.additional_listen_addresses
描述 |
连接器应绑定的其他地址。 |
有效值 |
逗号分隔的集合,其中每个元素都是套接字地址,格式为 |
默认值 |
server.bolt.ocsp_stapling_enabled
描述 |
为 bolt 和 http 连接器启用服务器 OCSP 装订。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.telemetry.enabled
描述 |
启用驱动程序遥测收集。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.enable_network_error_accounting
描述 |
启用在 Bolt 堆栈内基于账户的良性错误报告。启用后,仅当此类事件以异常频率发生时才会报告良性错误。禁用后,将报告所有良性网络错误。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.network_abort_clear_window_duration
描述 |
在错误被清除之前,网络相关连接中止需要保持在合理水平的持续时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),最小为 |
默认值 |
|
server.bolt.network_abort_warn_threshold
描述 |
在发出日志消息之前,在指定时间窗口内允许的最大网络相关连接中止次数。零值将恢复为遗留警告行为。 |
有效值 |
最小为 |
默认值 |
|
server.bolt.network_abort_warn_window_duration
描述 |
采样网络相关连接中止的时间窗口的持续时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),最小为 |
默认值 |
|
server.bolt.thread_pool_keep_alive
描述 |
绑定到此连接器的线程池中的空闲线程等待新任务的最长时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.bolt.thread_pool_max_size
描述 |
绑定到此连接器的线程池中允许的最大线程数。 |
有效值 |
一个整数。 |
默认值 |
|
server.bolt.thread_pool_min_size
描述 |
绑定到此连接器的线程池中要保持的线程数(包括空闲线程)。 |
有效值 |
一个整数。 |
默认值 |
|
server.bolt.thread_starvation_clear_window_duration
描述 |
在错误被清除之前,未调度请求需要保持在合理水平的持续时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),最小为 |
默认值 |
|
server.bolt.thread_starvation_warn_threshold
描述 |
在发出日志消息之前,在指定时间窗口内线程饥饿事件期间允许的最大未调度请求数。 |
有效值 |
最小为 |
默认值 |
|
server.bolt.thread_starvation_warn_window_duration
描述 |
采样未调度请求的时间窗口的持续时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),最小为 |
默认值 |
|
server.bolt.tls_level
描述 |
用于保护与此连接器的通信的加密级别。 |
有效值 |
[REQUIRED, OPTIONAL, DISABLED] 之一。 |
默认值 |
|
server.bolt.traffic_accounting_check_period
描述 |
当前流量使用样本之间花费的时间量。较小的值会导致更准确的报告,同时会带来更高的性能损失。零值禁用流量核算。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),为 0s 或最小为 |
默认值 |
|
server.bolt.traffic_accounting_clear_duration
描述 |
花费在配置的流量阈值以下以清除流量警告的时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d;默认单位为 s),最小为 |
默认值 |
|
server.bolt.traffic_accounting_incoming_threshold_mbps
描述 |
发出警告之前,在配置的核算检查窗口内允许的最大传入流量(Mbps)。 |
有效值 |
最小为 |
默认值 |
|
server.bolt.traffic_accounting_outgoing_threshold_mbps
描述 |
发出警告之前,在配置的核算检查窗口内允许的最大传出流量(Mbps)。 |
有效值 |
最小为 |
默认值 |
|
server.bolt.unix_socket_auth在 2025.08 中引入
描述 |
通过 Bolt Unix 域套接字连接器启用或禁用身份验证。如果禁用,只要已连接的客户端能够访问 Unix 域套接字文件,它们就会获得所有权限。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.unix_socket_delete在 2025.08 中引入
描述 |
是否删除用于 Unix 域套接字接口的现有文件。这改善了先前的硬关机无法删除文件的情况的处理。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.unix_socket_enabled在 2025.08 中引入
描述 |
启用或禁用 Bolt Unix 域套接字连接器。通过此连接器提交的请求将被放置在专用线程池中,该线程池与所有其他 Bolt 连接隔离。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.bolt.unix_socket_path在 2025.08 中引入
描述 |
用于 Unix 域套接字接口的文件的绝对路径。必须指定此文件,它将在运行时创建,并在关机时删除。 |
有效值 |
一个路径。 |
默认值 |
server.bolt.unix_socket_permission_mask在 2025.08 中引入
描述 |
设置应用于 Unix 域套接字文件的默认权限掩码。此掩码应设置得尽可能严格(特别是在此连接器上禁用身份验证时)。但请注意,除 Linux 外,其他 Posix 系统可能不遵循此权限。 |
有效值 |
一组文件权限。 |
默认值 |
|
server.bolt.unix_socket_thread_pool_keep_alive在 2025.08 中引入
描述 |
绑定到 Unix 域套接字连接器的线程池中的空闲线程等待新任务的最长时间。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d)。 |
默认值 |
|
server.bolt.unix_socket_thread_pool_max_size在 2025.08 中引入
描述 |
绑定到 Unix 域套接字连接器的线程池中允许的最大线程数。 |
有效值 |
最小为 1 的整数。 |
默认值 |
|
server.bolt.unix_socket_thread_pool_min_size在 2025.08 中引入
描述 |
绑定到 Unix 域套接字连接器的线程池中要保持的线程数(包括空闲线程)。 |
有效值 |
最小为 0 的整数。 |
默认值 |
|
server.bolt.unix_socket_use_dedicated_thread_pool在 2025.08 中引入
描述 |
是否分配用于 Unix 域套接字接口的专用线程池。这允许将 Unix 域套接字连接器用作服务器容量过大时的紧急访问连接器。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.http.advertised_address
描述 |
此连接器的已通告地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.http.listen_address
描述 |
连接器应绑定的地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.http.x_forward.enabled在 2026.03 中引入
描述 |
启用 X-Forwarded-Host 和 X-Forwarded-Proto 头文件的处理。仅在 Neo4j 位于可信反向代理或负载均衡器后面时才启用此功能。禁用时,出于安全原因,X-Forward 头文件将被忽略。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.http.x_forward.allow_hosts在 2026.03 中引入
描述 |
可以出现在 X-Forwarded-Host 头文件中的允许主机名列表。这可以防止主机头注入攻击。保持为空以接受任何主机名(不建议用于生产环境)。 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
server.http.x_forward.allow_proxies在 2026.03 中引入
描述 |
允许设置 X-Forward 头文件的受信任代理 IP 地址列表。仅来自这些 IP 的请求才会处理其 X-Forward 头文件。保持为空以接受来自任何来源的 X-Forward 头文件(不建议)。 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
server.http.x_forward.private_ips_enabled在 2026.03 中引入
描述 |
允许 X-Forwarded-Host 头文件中的私有 IP 地址 (RFC 1918)。设置为 false 可防止内部网络侦察攻击。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.http_enabled_modules
描述 |
定义加载到 Neo4j Web 服务器中的模块集。企业管理端点仅在企业版中可用。 |
有效值 |
逗号分隔的集合,其中每个元素都是 [TRANSACTIONAL_ENDPOINTS, UNMANAGED_EXTENSIONS, BROWSER, ENTERPRISE_MANAGEMENT_ENDPOINTS, QUERY_API_ENDPOINTS] 之一。 |
默认值 |
|
server.http_enabled_transports
描述 |
定义 HTTP 服务器上可用的传输集。 |
有效值 |
逗号分隔的集合,其中每个元素都是 [HTTP1_1, HTTP2] 之一。 |
默认值 |
|
server.https.advertised_address
描述 |
此连接器的已通告地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.https.listen_address
描述 |
连接器应绑定的地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.default_advertised_address
描述 |
服务器用于通告自身的默认主机名或 IP 地址。 |
有效值 |
格式为 |
默认值 |
|
server.default_listen_address
描述 |
用于侦听传入连接的默认网络接口。若要在所有接口上侦听连接,请使用“0.0.0.0”。 |
有效值 |
格式为 |
默认值 |
|
server.routing.advertised_address企业版
描述 |
集群内路由连接器的通告地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.routing.listen_address
描述 |
路由连接器应绑定的地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
dbms.routing.client_side.enforce_for_domains动态
描述 |
对于这些域的 |
有效值 |
以逗号分隔的集合,其中每个元素都是一个字符串。 |
默认值 |
dbms.routing.default_router
描述 |
|
有效值 |
[SERVER, CLIENT] 中的一个。 |
默认值 |
|
dbms.routing.driver.connection.connect_timeout
描述 |
套接字连接超时。超时值为零将被视为无限超时,并受操作系统层配置的超时限制。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.routing.driver.connection.max_lifetime
描述 |
超过此阈值的连接池连接将被关闭并从池中移除。将此选项设置为较低的值会导致频繁的连接流失,并可能导致性能下降。建议将最大生命周期设置为略小于网络设备(负载均衡器、代理、防火墙等也可能限制最大连接生命周期)中配置的值。零值和负值表示不检查生命周期。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.routing.driver.connection.pool.acquisition_timeout
描述 |
尝试从连接池获取连接所花费的最大时间。仅当所有现有连接均被占用且无法创建新连接(因为已达到最大连接池大小)时,此超时才会生效。如果在配置的时间内无法获取连接,则会引发错误。允许使用负值,这意味着无限的获取超时。允许使用 0 值,表示没有超时,当连接不可用时立即失败。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.routing.driver.connection.pool.idle_test
描述 |
在池中空闲时间超过此超时的连接,在再次使用之前将被测试以确保它们仍然存活。如果此选项的值过低,获取连接将需要额外的网络调用,从而导致性能下降。如果此选项的值过高,活动的连接可能不再可用,从而导致错误。因此,此参数平衡了遇到连接问题的可能性和性能。通常,不需要调整此参数。值 0 表示始终测试连接的有效性。默认情况下不进行连接存活性检查。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
dbms.routing.driver.connection.pool.max_size
描述 |
连接池管理的最大连接总数。该限制适用于主机和用户的组合。允许使用负值,表示无限的连接池。不允许使用 0 值。默认为 |
有效值 |
一个整数。 |
默认值 |
|
dbms.routing.driver.logging.level
描述 |
设置驱动程序内部日志记录的级别。 |
有效值 |
[DEBUG, INFO, WARN, ERROR, NONE] 中的一个。 |
默认值 |
|
dbms.routing.enabled
描述 |
在集群中使用额外的 bolt 连接器启用服务器端路由。配置后,如果请求无法由第一个成员满足(例如非领导者节点接收到写请求),则允许将请求从一个集群成员转发到另一个成员。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.routing.load_balancing.plugin企业版在 2025.05 中弃用
描述 |
每次生成路由表时改变条目的顺序。这意味着不同的客户端应该选择一系列服务器作为其首选联系点,如果存在替代方案,则减少所有客户端联系同一台服务器的机会。这使得服务器之间的负载更加均匀。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.routing.load_balancing.shuffle_enabled企业版
描述 |
每次生成路由表时改变条目的顺序。这意味着不同的客户端应该选择一系列服务器作为其首选联系点,如果存在替代方案,则减少所有客户端联系同一台服务器的机会。这使得服务器之间的负载更加均匀。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.routing.reads_on_primaries_enabled企业版
描述 |
配置 |
有效值 |
一个布尔值。 |
默认值 |
|
Cypher 设置
Cypher 设置会影响 Cypher 查询的行为。它们可用于优化 Cypher 查询的性能或限制可执行的查询类型。有关更多信息,请参阅 统计信息和执行计划。
db.query.default_language引入于 2025.06
描述 |
数据库的默认语言决定了评估未明确选择语言的查询时所使用的语言。此设置确定了在 |
有效值 |
[CYPHER_5, CYPHER_25] 中的一个。于 2025.07 更改 |
默认值 |
|
dbms.cypher.forbid_exhaustive_shortestpath
描述 |
此设置与性能优化相关。在某些情况下,更倾向于让使用 'shortestPath' 函数的任何查询立即终止并返回无结果,而不是尝试寻找结果而长时间运行(即使根本找不到路径),此时请将其设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cypher.forbid_shortestpath_common_nodes
描述 |
此设置与性能优化相关。当起始节点和结束节点相同时,最短路径算法无法工作。将此设置设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cypher.hints_error
描述 |
设置此项以指定当无法满足 Cypher 规划器或运行时提示时的行为。如果为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cypher.infer_schema_parts
描述 |
允许在基数估计期间进行标签推断。如果规划器可以从逻辑上推断出节点具有查询中未明确表达的标签,则规划器将在基数估计期间使用此信息。
|
有效值 |
[MOST_SELECTIVE_LABEL, OFF] 中的一个。 |
默认值 |
|
对于某些查询,规划器可以从图结构中推断出标签或类型等谓词,这可以改善对每个操作符产生行数的估计。有关更多信息,请参阅 Cypher 手册 → 执行计划和查询优化 → 理解执行计划。
有关如何按查询配置此设置以在该特定查询上有效地覆盖此设置的详细信息,请参阅 Cypher 手册 → 查询优化 → Cypher 推断模式部分。
dbms.cypher.lenient_create_relationship
描述 |
设置此项以更改当起始或结束节点缺失时 Cypher 创建关系的行为。默认情况下,这会使查询失败并停止执行,但通过设置此标志,创建操作将不会执行,执行将继续。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cypher.min_replan_interval
描述 |
两次可能的 Cypher 查询重新规划事件之间的最短时间。此时间过后,将评估图统计信息,如果它们的变化超过了 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.cypher.planner
描述 |
设置此项以指定默认语言版本的默认规划器。 |
有效值 |
[DEFAULT, COST] 中的一个。 |
默认值 |
|
dbms.cypher.render_plan_description动态
描述 |
如果设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.cypher.statistics_divergence_threshold
描述 |
统计信息的阈值,超过此阈值,计划被视为过期。 如果创建计划所使用的任何底层统计信息的变化超过此值,则计划将被视为过期并重新规划。变化计算公式为 这意味着 此间隔由 |
有效值 |
介于 |
默认值 |
|
dbms.cypher.transactions.default_subquery_retry_timeout动态引入于 2025.03
描述 |
在具有 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d)。 |
默认值 |
|
server.cypher.parallel.worker_limit企业版
描述 |
分配给并行运行时的 Cypher 工作线程数。如果设置为正数,则将启动该数量的工作线程。如果设置为 如果设置为负数,则服务器上可用的逻辑处理器总数将减少该数字的绝对值。例如,如果服务器有 16 个可用处理器,而您将 |
有效值 |
一个整数。 |
默认值 |
|
数据库设置
数据库设置会影响 Neo4j 数据库的行为,例如文件监视服务、数据库格式、数据库存储文件和数据库时区。它们可以在每个数据库之间有所不同,但必须在集群/DBMS 中的所有配置文件中保持一致。
db.filewatcher.enabled
描述 |
允许启用或禁用文件监视服务。这是一种辅助服务,但在几乎所有情况下都应保持启用。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.format动态
描述 |
数据库格式。这是将用于新数据库的格式。有效值为 |
有效值 |
一个字符串。 |
默认值 |
|
|
|
db.relationship_grouping_threshold
描述 |
将节点视为密集节点的数量阈值。此设置仅适用于 |
有效值 |
最小为 |
默认值 |
|
db.store.files.preallocate
描述 |
指定 Neo4j 在存储文件增长时是否应尝试预分配存储文件。 |
有效值 |
一个布尔值。 |
默认值 |
|
DBMS 设置
DBMS 设置影响整个 Neo4j DBMS。您可以使用它们来设置默认数据库、DBMS 时区、种子提供程序列表以及数据库的最大数量。DBMS 设置必须在集群/DBMS 中的所有配置文件中保持一致。
initial.dbms.default_database
描述 |
指定 第一次 DBMS 启动之前的默认数据库名称。在初始默认数据库创建后,更改此设置无效。要更改默认数据库,请改为使用
|
||
有效值 |
有效的数据库名称,仅包含字母、数字、点和破折号,长度在 3 到 63 个字符之间,以字母或数字开头,但不能以名称 system 开头。 |
||
默认值 |
|
dbms.db.timezone
描述 |
数据库时区。除其他事项外,此设置会影响监控过程。 |
有效值 |
[UTC, SYSTEM] 中的一个。 |
默认值 |
|
dbms.databases.seed_from_uri_providers企业版
描述 |
数据库可以从存储在特定源 URI 的现有 种子(数据库备份或转储)中创建。 可以使用以下值:
此列表指定启用的种子提供程序。如果列表中的多个提供程序支持种子源(URI 方案),则将使用第一个匹配的提供程序。如果列表为空,则从 URI 种子功能实际上被禁用。有关更多信息,请参阅 从 URI 种子化。 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
导入设置
导入设置控制 LOAD CSV 使用的内部缓冲区大小以及 CSV 文件中引号的转义方式。
db.import.csv.buffer_size
描述 |
|
有效值 |
最小为 |
默认值 |
|
db.import.csv.legacy_quote_escaping
描述 |
选择在加载使用 |
有效值 |
一个布尔值。 |
默认值 |
|
索引设置
索引设置控制全文索引和后台索引采样(块大小限制和采样大小)。有关更多信息,请参阅 索引配置。
db.index.fulltext.default_analyzer
描述 |
全文索引默认应使用的分析器名称。 |
有效值 |
一个字符串。 |
默认值 |
|
db.index.fulltext.eventually_consistent
描述 |
全文索引默认是否应为最终一致性。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.index.fulltext.eventually_consistent_apply_parallelism
描述 |
处理最终一致性全文索引的排队索引更新的线程数。 |
有效值 |
最小为 1 的整数。 |
默认值 |
|
db.index.fulltext.eventually_consistent_refresh_interval
描述 |
刷新最终一致性全文索引的频率(确保更改可见)。如果设置为 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d)。 |
默认值 |
|
db.index.fulltext.eventually_consistent_refresh_parallelism
描述 |
可以并行进行全文索引刷新的线程数,即可以并行刷新的最终一致性全文索引数。 |
有效值 |
最小为 1 的整数。 |
默认值 |
|
db.index.fulltext.eventually_consistent_index_update_queue_max_length
描述 |
全文索引的 最终一致性 模式通过将索引更新排队以在后台线程中稍后应用来工作。此新生成器为此队列中在任何时间点允许存在的索引更新数量设置了上限。达到该限制时,提交过程将减慢并等待索引更新应用线程在队列中腾出一些空间。 |
有效值 |
介于 |
默认值 |
|
db.index_sampling.background_enabled
描述 |
启用或禁用后台索引采样。 |
有效值 |
一个布尔值。 |
默认值 |
|
日志记录设置
Neo4j 有两个不同的日志记录配置文件,一个用于 neo4j.log,其中包含有关 Neo4j 的一般信息;另一个用于通过 Log4j 2 进行的所有其他类型的日志记录的配置文件(gc.log 除外,它由 Java 虚拟机 (JVM) 处理)。有关更多信息,请参阅 日志记录。
db.logs.query.annotation_data_format动态
描述 |
用于 JSON 注释数据的格式。
这仅在查询日志为 JSON 格式时有效。 |
有效值 |
[CYPHER, JSON, FLAT_JSON] 中的一个。 |
默认值 |
|
db.logs.query.early_raw_logging_enabled动态
描述 |
记录查询文本和参数而不混淆密码。这允许在解析开始之前更早地记录查询。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.logs.query.enabled动态
描述 |
记录已执行的查询。有效值为
日志条目被写入查询日志。 此功能在 Neo4j 企业版中可用。 |
有效值 |
[OFF, INFO, VERBOSE] 中的一个。 |
默认值 |
|
db.logs.query.max_parameter_length动态
描述 |
设置日志中每个参数的最大字符长度。这仅在 |
有效值 |
一个整数。 |
默认值 |
|
db.logs.query.obfuscate_errors动态引入于 2026.01.3
描述 |
如果为 true,则在将错误信息写入查询日志之前,混淆所有可能包含敏感数据的错误信息。当查询日志使用 JSON 格式时,这适用于 |
有效值 |
一个布尔值。 |
默认值 |
|
db.logs.query.obfuscate_literals动态
描述 |
如果为 true,则在将查询写入查询日志之前混淆查询中的所有字面量。请注意,节点标签、关系类型和映射属性键保持可见。更改此设置不会影响已缓存的查询。要立即应用更改,您还必须调用 |
有效值 |
一个布尔值。 |
默认值 |
|
|
请记住,如果 Neo4j 收到无法解析的格式错误的查询,它无法混淆其字面量(因为它不知道哪些部分是字面量),因此查询文本将不会包含在任何日志记录中。 |
db.logs.query.parameter_logging_enabled动态
描述 |
记录正在被记录的已执行查询的参数。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.logs.query.plan_description_enabled动态
描述 |
记录查询计划描述表,这对调试目的非常有用。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.logs.query.threshold动态
描述 |
如果查询的执行时间超过此阈值,则在查询完成后记录该查询 - 前提是将查询日志记录设置为 INFO。默认为 0 秒,即所有查询都会被记录。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.logs.query.transaction.enabled动态企业版
描述 |
记录事务的开始和结束。有效值为 'OFF', 'INFO' 或 'VERBOSE'。OFF:不记录。INFO:记录耗时超过配置阈值 |
有效值 |
[OFF, INFO, VERBOSE] 中的一个。 |
默认值 |
|
db.logs.query.transaction.threshold动态
描述 |
如果事务打开的时间超过此阈值,则在事务完成后记录该事务 - 前提是将事务日志记录 ( |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.logs.config于 2025.01 更改
描述 |
调试、查询、http 和安全日志的日志配置路径。 |
有效值 |
路径。如果是相对路径,则从 server.directories.configuration 解析。 |
默认值 |
|
server.logs.gc.options
描述 |
GC 日志记录选项。 |
有效值 |
一个字符串。 |
默认值 |
|
server.logs.gc.rotation.keep_number
描述 |
要保留的 GC 日志数量。 |
有效值 |
一个整数。 |
默认值 |
|
内存设置
内存设置控制分配给 Neo4j 的内存量及其使用方式。建议进行一定程度的测试和调整,以确定可用内存的最佳分配方案。有关如何调整这些设置的更多信息,请参阅 内存配置、磁盘、RAM 和其他提示 以及 垃圾收集器调整。
db.memory.pagecache.warmup.enable
描述 |
页缓存可以配置为对已加载的页面进行使用采样,这些采样可用于构建活动加载配置文件。根据该配置文件,页面可以在重启、复制等过程中重新加载。此设置允许禁用该行为。此功能在 Neo4j 企业版中可用。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.memory.pagecache.warmup.order在 2026.03 中引入
描述 |
根据配置文件对页缓存文件进行预热的顺序。 |
有效值 |
[NONE, ALPHABETIC, PRIORITY] 中的一个。 |
默认值 |
|
db.memory.pagecache.warmup.preload
描述 |
页缓存预热可以配置为预取文件,最好在缓存大小大于存储大小时进行。可预取的文件可以通过 'dbms.memory.pagecache.warmup.preload.allowlist' 进行过滤。启用此项将禁用按配置文件的预热。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.memory.pagecache.warmup.preload.allowlist
描述 |
页缓存预热预取文件允许列表正则表达式。默认匹配所有文件。 |
有效值 |
一个字符串。 |
默认值 |
|
db.memory.pagecache.warmup.profile.interval企业版
描述 |
页缓存的分析频率。准确的配置文件允许页缓存在此重启后进行主动预热,从而缩短达到性能指标所需的平均时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.memory.transaction.max动态
描述 |
限制单个事务可以消耗的内存量(以字节为单位,或者后缀为 'k' 的千字节,'m' 的兆字节,以及 'g' 的千兆字节)。零表示“最大可能值”。 |
有效值 |
字节大小(有效的乘数为 |
默认值 |
|
db.memory.transaction.total.max动态
描述 |
限制一个数据库中所有事务可以消耗的内存量(以字节为单位,或者后缀为 'k' 的千字节,'m' 的兆字节,以及 'g' 的千兆字节)。零表示“无限”。 |
有效值 |
字节大小(有效的乘数为 |
默认值 |
|
server.db.query_cache_size已在 5.7 中弃用
描述 |
每个数据库的缓存 Cypher 查询执行计划数量。缓存中可保持的最大查询计划数量为 |
有效值 |
最小值为 |
默认值 |
|
替换为 |
dbms.memory.tracking.enable
描述 |
启用堆外和堆内内存跟踪。对于集群,不应将其设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.memory.transaction.total.max动态
描述 |
限制所有运行中事务可以消耗的内存量(以字节为单位,或者后缀为 'k' 的千字节,'m' 的兆字节,以及 'g' 的千兆字节)。零表示“无限”。默认为堆大小限制的 70%。 |
有效值 |
字节大小(有效的乘数为 |
默认值 |
server.memory.heap.initial_size
描述 |
初始堆大小。默认情况下,它是根据可用系统资源计算得出的。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
server.memory.heap.max_size
描述 |
最大堆大小。默认情况下,它是根据可用系统资源计算得出的。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
server.memory.pagecache.directio
描述 |
对页缓存使用直接 I/O。此设置仅在 Linux 上受支持,且仅适用于使用平台对齐页面大小的记录格式子集。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.memory.pagecache.flush.buffer.enabled动态
描述 |
页缓存可以配置为使用临时缓冲区进行刷新。如果可能,它用于将一系列多个缓存页面合并为一个更大的缓冲区,以最大限度地减少执行的单个 IOPS 数量,并更好地利用可用的 I/O 资源,尤其是在这些资源受限时。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.memory.pagecache.flush.buffer.size_in_pages动态
描述 |
页缓存可以配置为使用临时缓冲区进行刷新。如果可能,它用于将一系列多个缓存页面合并为一个更大的缓冲区,以最大限度地减少执行的单个 IOPS 数量,并更好地利用可用的 I/O 资源,尤其是在这些资源受限时。使用此设置可配置单个文件刷新缓冲区的大小(以页面为单位,8KiB)。为了能够在页缓存刷新期间利用此缓冲区,必须启用缓冲刷新。 |
有效值 |
介于 |
默认值 |
|
server.memory.pagecache.scan.prefetchers
描述 |
进行顺序扫描时用于预取数据的最大工作线程数。设置为 '0' 可禁用扫描的预取。 |
有效值 |
介于 |
默认值 |
|
server.memory.pagecache.size
描述 |
用于映射存储文件的内存量。如果 Neo4j 在专用服务器上运行,则通常建议为操作系统留出约 2-4GB,给 JVM 足够的堆来容纳所有事务状态和查询上下文,然后将剩余部分留给页缓存。如果未配置页缓存内存,则会根据可用系统资源计算启发式设置。默认情况下,页缓存的大小将为可用 RAM 的 50% 减去最大堆大小。页缓存的大小也不会大于最大堆大小的 70 倍(由于堆中页缓存的一些开销)。 |
有效值 |
一个字节大小(有效乘数为 |
默认值 |
server.memory.query_cache.sharing_enabled企业版
描述 |
启用在不同数据库之间共享缓存空间。开启此选项后,数据库将共享缓存空间,但不共享缓存条目。这意味着数据库可以存储和检索共享缓存中的条目,但它可能无法检索由另一个数据库生成的条目。但是,根据约束的缓存大小和缓存驱逐策略,数据库可能会根据需要驱逐来自其他数据库的条目。本质上,数据库可能会竞争缓存空间,但可能不会观察彼此的条目。 开启此选项后,所有数据库可用的缓存空间通过 |
有效值 |
一个布尔值。 |
默认值 |
|
server.memory.query_cache.shared_cache_num_entries动态企业版
描述 |
所有数据库的缓存查询数量。缓存中可保持的最大查询数量正好是 |
有效值 |
最小值为 |
默认值 |
|
server.memory.query_cache.per_db_cache_num_entries动态
描述 |
每个数据库的缓存查询数量。缓存中可保持的最大查询数量为 |
有效值 |
最小值为 |
默认值 |
|
指标设置
指标设置控制 Neo4j 是否记录指标、记录哪些指标、如何记录它们以及如何公开它们。为了更好地理解指标设置以及如何配置它们,请参阅 指标。
server.metrics.csv.enabled企业版
描述 |
设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
server.metrics.csv.interval企业版
描述 |
CSV 文件的报告间隔。即,新数据行追加到 CSV 文件的频率。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.metrics.csv.rotation.compression企业版
描述 |
决定对 csv 历史记录文件使用什么压缩。 |
有效值 |
[NONE, ZIP, GZ] 中的一个。 |
默认值 |
|
server.metrics.csv.rotation.keep_number企业版
描述 |
csv 文件的最大历史记录文件数量。 |
有效值 |
最小为 |
默认值 |
|
server.metrics.csv.rotation.size企业版
描述 |
csv 文件自动轮换的文件大小(以字节为单位)。如果设置为零,则不会发生轮换。接受二进制后缀 |
有效值 |
字节大小(有效的乘数为 |
默认值 |
|
server.metrics.enabled企业版
描述 |
启用指标。将其设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
server.metrics.filter企业版
描述 |
通过使用逗号分隔的通配模式列表来指定应启用哪些指标。只有匹配过滤器的指标才会被启用。例如, |
有效值 |
以逗号分隔的列表,其中每个元素都是一个可以使用 |
默认值 |
|
|
有关详细信息,请参阅 Neo4j 2025-2026 系列中的更改。 |
server.metrics.deny_filter企业版引入于 2025.10
描述 |
通过使用逗号分隔的通配模式列表来指定应禁用哪些指标。覆盖 |
有效值 |
以逗号分隔的列表,其中每个元素都是一个可以使用 |
默认值 |
server.metrics.graphite.enabled企业版
描述 |
设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
server.metrics.graphite.interval企业版
描述 |
Graphite 的报告间隔。即,向 Graphite 发送更新指标的频率。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.metrics.graphite.server企业版
描述 |
Graphite 服务器的主机名或 IP 地址。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.metrics.jmx.enabled企业版
描述 |
设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
Neo4j 浏览器和客户端设置
Neo4j 浏览器和客户端设置仅适用于 Neo4j 浏览器和客户端。
browser.allow_outgoing_connections企业版
描述 |
配置 Neo4j 浏览器传出连接的策略。 |
有效值 |
一个布尔值。 |
默认值 |
|
browser.credential_timeout企业版
描述 |
配置 Neo4j 浏览器在空闲此周期后使登录用户超时。将其设置为 0 表示没有限制。 |
有效值 |
一个持续时间(有效单位为:ns, μs, ms, s, m, h 和 d)。 |
默认值 |
|
browser.post_connect_cmd
描述 |
当 Neo4j 浏览器成功连接到此服务器时运行的命令。用分号分隔多个命令。 |
有效值 |
一个字符串。 |
默认值 |
browser.remote_content_hostname_whitelist
描述 |
允许 Neo4j 浏览器从中获取内容的主机白名单。 |
有效值 |
一个字符串。 |
默认值 |
|
browser.retain_connection_credentials企业版
描述 |
配置 Neo4j 浏览器是否存储用户凭据。 |
有效值 |
一个布尔值。 |
默认值 |
|
Kubernetes 设置
Kubernetes 设置用于配置在 Kubernetes 上运行的集群,其中每个服务器都作为 Kubernetes 服务运行。其他服务器的地址可以使用 List Service API 获取,如 Kubernetes API 文档 中所述。有关更多信息,请参阅 Kubernetes 中的发现。
dbms.kubernetes.address企业版
描述 |
Kubernetes API 的地址。 |
有效值 |
格式为 |
默认值 |
|
dbms.kubernetes.ca_crt企业版
描述 |
Kubernetes API CA 证书的文件位置。 |
有效值 |
一个路径。 |
默认值 |
|
dbms.kubernetes.cluster_domain企业版
描述 |
Kubernetes 集群域。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.kubernetes.label_selector企业版
描述 |
Kubernetes API 的 LabelSelector。 |
有效值 |
一个字符串。 |
默认值 |
dbms.kubernetes.namespace企业版
描述 |
Kubernetes API 命名空间的文件位置。 |
有效值 |
一个路径。 |
默认值 |
|
安全设置
安全设置用于配置 Neo4j 部署的安全性。有关 Neo4j 安全性的全面信息,请参阅 安全性 部分。
dbms.security.allow_csv_import_from_file_urls
描述 |
确定 Cypher 在使用 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.auth_cache_max_capacity企业版
描述 |
身份验证和授权缓存的最大容量(分别)。 |
有效值 |
一个整数。 |
默认值 |
|
dbms.security.auth_cache_ttl企业版
描述 |
使用外部身份验证提供程序(OIDC、LDAP 或插件)时,缓存的身份验证和授权信息的存活时间 (TTL)。将 TTL 设置为 0 将禁用身份验证缓存。在使用 LDAP 身份验证提供程序时禁用缓存,需要使用 LDAP 系统帐户来解析授权信息。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.security.auth_cache_use_ttl企业版
描述 |
启用外部身份验证提供程序(OIDC、LDAP 或插件)的身份验证和授权信息缓存的基于时间的驱逐。禁用此设置将使缓存永久存在,仅在超过 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.auth_enabled
描述 |
启用访问 Neo4j 的身份验证要求。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.auth_minimum_password_length
描述 |
密码中所需的最小字符数。 |
有效值 |
最小为 |
默认值 |
|
dbms.security.auth_lock_time
描述 |
在配置的失败身份验证尝试次数后,用户帐户应被锁定的时间长度。在锁定期间结束之前,锁定的用户将无法登录,即使提供了正确的凭据。不建议将此配置选项设置为较低的值,因为它可能使攻击者更容易对密码进行暴力破解。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.security.auth_max_failed_attempts
描述 |
在实施用户锁定配置的时间长度(由 |
有效值 |
最小值为 |
默认值 |
|
dbms.security.authentication_providers企业版
描述 |
包含用户和角色的安全身份验证提供程序列表。这可以是任何内置的 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
dbms.security.authorization_providers企业版
描述 |
包含用户和角色的安全授权提供程序列表。这可以是任何内置的 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
dbms.security.abac.authorization_providers企业版引入于 2026.03
描述 |
授权提供程序的列表,其属性用于评估授权规则。 |
有效值 |
一个以逗号分隔的字符串列表,其中的条目必须是有效的 OIDC 授权提供程序,并且这些条目必须存在于 dbms.security.authorization_providers 中。 |
默认值 |
dbms.security.cluster_status_auth_enabled企业版
描述 |
要求对访问 Causal Clustering(因果集群)状态端点进行授权。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.http_access_control_allow_origin
描述 |
通过任何 HTTP 或 HTTPS 连接器发送的 Access-Control-Allow-Origin 标头值。默认值为 '*',以实现最广泛的兼容性。请注意,此处提供的任何 URI 都会将 HTTP/HTTPS 访问限制为仅该 URI。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.http_auth_allowlist
描述 |
定义无需 Neo4j 身份验证即可访问的 HTTP 路径的允许列表。 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
dbms.security.http_strict_transport_security
描述 |
HTTP Strict-Transport-Security (HSTS) 响应标头的值。此标头告知浏览器网页应仅通过 HTTPS 而非 HTTP 进行访问。它会附加到每个 HTTPS 响应中。该设置默认未设置,因此不发送 'Strict-Transport-Security' 标头。该值应包含诸如 'max-age'、'includeSubDomains' 和 'preload' 之类的指令。 |
有效值 |
一个字符串。 |
默认值 |
dbms.security.http_static_content_security_policy_header
描述 |
定义返回给静态端点内容的 Content-Security-Policy 标头。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.key.name动态企业版
描述 |
用于对称加密的 256 位 AES 加密密钥的名称。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.keystore.password动态企业版
描述 |
用于访问存储 256 位 AES 加密密钥的密钥库的密码,该密钥用于对称加密。 |
有效值 |
一个安全的字符串。 |
默认值 |
dbms.security.keystore.path动态企业版
描述 |
存储 256 位 AES 加密密钥的密钥库的位置,该密钥用于对系统数据库中保存的机密进行对称加密。 |
有效值 |
一个路径。 |
默认值 |
dbms.security.ldap.authentication.attribute动态企业版
描述 |
查找用户时要使用的属性。使用此设置需要将 |
有效值 |
匹配模式 |
默认值 |
|
dbms.security.ldap.authentication.cache_enabled企业版
描述 |
确定是否应缓存通过 LDAP 服务器进行身份验证的结果。缓存用于限制已成功通过身份验证的用户在网络上必须执行的 LDAP 请求数量。只要现有的缓存条目处于活动状态(请参阅 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.ldap.authentication.mechanism企业版
描述 |
LDAP 身份验证机制。这是 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.ldap.authentication.search_for_attribute企业版
描述 |
通过搜索用户的唯一属性来执行身份验证。使用此设置需要配置 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.ldap.authentication.user_dn_template动态企业版
描述 |
LDAP 用户 DN 模板。LDAP 对象由其专有名称 (DN) 引用,用户 DN 是 LDAP 完全限定的唯一用户标识符。此设置用于从登录时提交的身份验证令牌中包含的用户主体生成符合 LDAP 目录模式的 LDAP DN。特殊令牌 {0} 是一个占位符,用户主体将在此处替换到 DN 字符串中。 |
有效值 |
必须是包含 '{0}' 的字符串,以了解在何处插入运行时身份验证主体。 |
默认值 |
|
dbms.security.ldap.authorization.access_permitted_group动态企业版
描述 |
用户必须属于的 LDAP 组才能获得对系统的任何访问权限。设置此项可限制对属于特定组的 LDAP 用户子集的访问。如果未设置,则任何通过 LDAP 成功验证的用户都将有权访问 PUBLIC 角色以及通过 |
有效值 |
一个字符串。 |
默认值 |
dbms.security.ldap.authorization.group_membership_attributes动态企业版
描述 |
用户对象上包含组的属性名称列表,在启用 LDAP 授权时用于映射到角色。当 |
有效值 |
一个以逗号分隔的字符串列表,且不能为空。 |
默认值 |
|
dbms.security.ldap.authorization.group_to_role_mapping动态企业版
描述 |
从 LDAP 组名到 Neo4j 角色名的授权映射。该映射应格式化为以分号分隔的键值对列表,其中键是 LDAP 组名,值是对应角色名的逗号分隔列表。例如:group1=role1;group2=role2;group3=role3,role4,role5 您也可以在组名周围使用空格和引号,以使此映射更具可读性,例如 `dbms.security.ldap.authorization.group_to_role_mapping`=\
"cn=Neo4j Read Only,cn=users,dc=example,dc=com" = reader; \
"cn=Neo4j Read-Write,cn=users,dc=example,dc=com" = publisher; \
"cn=Neo4j Schema Manager,cn=users,dc=example,dc=com" = architect; \
"cn=Neo4j Administrator,cn=users,dc=example,dc=com" = admin
|
有效值 |
必须是分号分隔的键值对列表或为空的字符串。 |
默认值 |
dbms.security.ldap.authorization.nested_groups_enabled动态企业版
描述 |
此设置确定是否处理多个 LDAP 搜索结果(这是查找嵌套组所必需的)。如果设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.ldap.authorization.nested_groups_search_filter动态企业版
描述 |
用于查找用户所属嵌套组的搜索模板。该过滤器应包含占位符令牌 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.ldap.authorization.system_password企业版
描述 |
当 |
有效值 |
一个安全的字符串。 |
默认值 |
dbms.security.ldap.authorization.system_username企业版
描述 |
当 |
有效值 |
一个字符串。 |
默认值 |
dbms.security.ldap.authorization.use_system_account企业版
描述 |
使用系统帐户而不是用户自己的帐户执行授权信息的 LDAP 搜索。如果设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.ldap.authorization.user_search_base动态企业版
描述 |
启用 LDAP 授权时用于搜索用户对象的基对象或命名上下文的名称。一种常见的情况是,这与 |
有效值 |
一个不能为空的字符串。 |
默认值 |
|
dbms.security.ldap.authorization.user_search_filter动态企业版
描述 |
启用 LDAP 授权时用于搜索用户主体的 LDAP 搜索过滤器。该过滤器应包含占位符令牌 {0},它将替换为用户主体。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.ldap.connection_timeout企业版
描述 |
建立 LDAP 连接的超时时间。如果无法在给定时间内与 LDAP 服务器建立连接,则会中止尝试。值为 0 表示使用网络协议(即 TCP)的超时值。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.security.ldap.host企业版
描述 |
用于身份验证和授权的 LDAP 服务器的 URL。该设置的格式为 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.ldap.read_timeout企业版
描述 |
LDAP 读取请求(即搜索)的超时时间。如果 LDAP 服务器未在给定时间内响应,则该请求将被中止。值为 0 表示无限期等待响应。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
dbms.security.ldap.referral企业版
描述 |
建立连接时的 LDAP 引用行为。它是
|
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.ldap.use_starttls企业版
描述 |
使用机会性 TLS 与 LDAP 服务器进行安全通信。首先将与 LDAP 服务器建立初始不安全连接,并发出 STARTTLS 命令以在启动身份验证之前协商将连接升级到 TLS。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.log_successful_authentication企业版
描述 |
设置为将成功的身份验证事件记录到安全日志中。如果设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.logs.ldap.groups_at_debug_level_enabled企业版
描述 |
当设置为 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.oidc.<provider>.audience动态企业版
描述 |
ID 令牌中 Audience (aud) 声明的预期值。 |
有效值 |
一个以逗号分隔的字符串列表,且不能为空。 |
dbms.security.oidc.<provider>.auth_endpoint动态企业版
描述 |
OIDC 授权端点。如果未提供,Neo4j 将尝试从 well_known_discovery_uri 中发现它。 |
有效值 |
一个 URI |
dbms.security.oidc.<provider>.auth_flow动态企业版
描述 |
要使用的 OIDC 流程。此流程通过发现端点暴露给客户端。支持的值为 |
有效值 |
[PKCE, IMPLICIT] 之一。 |
默认值 |
|
dbms.security.oidc.<provider>.auth_params动态企业版已弃用
描述 |
授权端点所需的可选附加参数。请改用 params。该映射是以分号分隔的键值对列表。例如: |
有效值 |
简单的键值映射模式 |
默认值 |
|
dbms.security.oidc.<provider>.authorization.group_to_role_mapping动态企业版
描述 |
从 IdP 组名到 Neo4j 角色名的授权映射。该映射应格式化为以分号分隔的键值对列表,其中键是 IdP 组名,值是对应角色名的逗号分隔列表。例如:group1=role1;group2=role2;group3=role3,role4,role5 您也可以在组名周围使用空格和引号,以使此映射更具可读性,例如 dbms.security.oidc.<provider>.authorization.group_to_role_mapping=\
"Neo4j Read Only" = reader; \
"Neo4j Read-Write" = publisher; \
"Neo4j Schema Manager" = architect; \
"Neo4j Administrator" = admin
|
有效值 |
必须是分号分隔的键值对列表或为空的字符串 |
dbms.security.oidc.<provider>.claims.groups动态企业版
描述 |
用作 Neo4j 组列表的声明。这些可以直接是 Neo4J 角色,也可以使用 dbms.security.oidc.<provider>.authorization.group_to_role_mapping 进行映射。指定的声明应该是一个表示单个组的字符串类型,或者一个表示多个组的字符串数组。 |
有效值 |
一个字符串。 |
dbms.security.oidc.<provider>.claims.username动态企业版
描述 |
用作 Neo4j 中用户名的声明。这通常是 sub,但在某些情况下,可能需要使用其他内容,例如电子邮件。 |
有效值 |
一个字符串。 |
默认值 |
|
dbms.security.oidc.<provider>.client_id动态企业版已弃用
描述 |
客户端 ID。未使用。此值以前用于验证 id_token 中的 |
有效值 |
一个字符串。 |
dbms.security.oidc.<provider>.config动态企业版
描述 |
接受的值(均为可选)为
|
有效值 |
简单的键值映射模式 |
默认值 |
|
dbms.security.logs.oidc.jwt_claims_at_debug_level_enabled
描述 |
当设置为
|
||
有效值 |
一个布尔值。 |
||
默认值 |
|
dbms.security.oidc.<provider>.display_name企业版
描述 |
由发现端点提供给客户端(Bloom、Browser 等)的面向用户的提供程序名称。 |
有效值 |
一个字符串。 |
dbms.security.oidc.<provider>.get_groups_from_user_info动态企业版
描述 |
启用后,Neo4j 会从提供程序用户信息端点获取组。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.oidc.<provider>.get_username_from_user_info动态企业版
描述 |
启用后,Neo4j 会从提供程序用户信息端点获取用户名。 |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.oidc.<provider>.issuer动态企业版
描述 |
ID 令牌中 iss 声明的预期值。如果未提供,Neo4j 将尝试从 well_known_discovery_uri 中发现它。 |
有效值 |
一个字符串。 |
dbms.security.oidc.<provider>.jwks_uri动态企业版
描述 |
身份提供程序的 JWK 公钥集的位置。如果未提供,Neo4j 将尝试从 well_known_discovery_uri 中发现它。 |
有效值 |
一个 URI |
dbms.security.oidc.<provider>.params动态企业版
描述 |
该映射是以分号分隔的键值对列表。例如: client_id: the SSO Idp client idenfifier. response_type: code if auth_flow is pkce or token for implicit auth_flow. scope: often containing a subset of 'email profile openid groups'. 例如: |
有效值 |
简单的键值映射模式 |
默认值 |
|
dbms.security.oidc.<provider>.token_endpoint动态企业版
描述 |
OIDC 令牌端点。如果未提供,Neo4j 将尝试从 well_known_discovery_uri 中发现它。 |
有效值 |
一个 URI |
dbms.security.oidc.<provider>.token_params动态企业版
描述 |
令牌端点所需的可选查询参数。该映射是以分号分隔的键值对列表。例如: |
有效值 |
简单的键值映射模式 |
默认值 |
|
dbms.security.oidc.<provider>.user_info_uri动态企业版
描述 |
身份提供程序的用户信息 URI。 |
有效值 |
一个 URI |
dbms.security.oidc.<provider>.well_known_discovery_uri动态企业版
描述 |
用于获取身份提供程序设置的 OpenID Connect 发现端点。如果未提供,则应存在 |
有效值 |
一个 URI |
dbms.security.procedures.allowlist
描述 |
要加载的程序列表(逗号分隔)。该列表可以包含完全限定的程序名称,以及带有通配符 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
dbms.security.procedures.unrestricted
描述 |
允许完全访问数据库的程序和用户定义函数列表(逗号分隔)。该列表可以包含完全限定的程序名称,以及带有通配符 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
dbms.security.require_local_user企业版
描述 |
此设置控制外部身份验证是否必须创建本地用户。如果设置为默认值 ( |
有效值 |
一个布尔值。 |
默认值 |
|
dbms.security.tls_reload_enabled企业版在 2025.03 中引入
描述 |
启用通过调用程序动态重新加载 TLS 配置和证书的功能。 |
有效值 |
一个布尔值。 |
默认值 |
|
服务器目录设置
服务器目录设置可用于更改 Neo4j 文件的默认位置。有关更多信息,请参阅 默认文件位置。
server.directories.cluster_state企业版
描述 |
用于保存包括 Raft 日志在内的集群状态的目录。 |
有效值 |
路径。如果是相对路径,则从 server.directories.data 解析。 |
默认值 |
|
server.directories.configuration企业版2025.01 中引入
描述 |
配置目录的根位置。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.data
描述 |
数据目录的路径。您不得配置多个 Neo4j 安装以使用相同的数据目录。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.dumps.root
描述 |
Neo4j 将存储数据库转储的根位置,在删除所述数据库时可以选择性地生成这些转储。 |
有效值 |
路径。如果是相对路径,则从 server.directories.data 解析。 |
默认值 |
|
server.directories.import
描述 |
设置与 Cypher |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
server.directories.lib
描述 |
lib 目录的路径。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.licenses
描述 |
licenses 目录的路径。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.logs
描述 |
logs 目录的路径。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.metrics企业版
描述 |
CSV 文件的目标位置:一个目录的路径,将在其中写入每个报告字段的 CSV 文件。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.neo4j_home
描述 |
目录设置相对于此根目录进行解析。由服务器在启动时计算并设置。默认为当前工作目录。 |
有效值 |
绝对路径。 |
默认值 |
server.directories.plugins
描述 |
数据库插件目录的位置。如果将包含数据库程序的已编译 Java JAR 文件放在此目录中,它们将被加载。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
server.directories.run
描述 |
run 目录的路径。此目录保存 Neo4j 的运行时状态,例如在后台运行时产生的 pidfile。pidfile 在启动 neo4j 时创建,在停止时删除。它可以放置在内存文件系统(如 tmpfs)上。 |
有效值 |
路径。如果是相对路径,则从 server.directories.neo4j_home 解析。 |
默认值 |
|
服务器设置
服务器设置仅适用于特定服务器,并且可以在整个集群/DBMS 的配置文件之间有所不同。
server.backup.exec_connector.command企业版
描述 |
为 ExecDataConnector 列表执行的命令 |
有效值 |
一个字符串。 |
默认值 |
server.backup.exec_connector.scheme企业版
描述 |
ExecDataConnector 将匹配的方案 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
server.backup.listen_address企业版
描述 |
备份服务器监听的网络接口和端口。 |
有效值 |
格式为 |
默认值 |
|
server.backup.advertised_address企业版2025.05 中引入
描述 |
备份服务器的公告地址。默认为默认公告地址与备份监听地址中定义的端口的组合。 |
有效值 |
套接字地址,格式为 |
默认值 |
|
server.backup.store_copy_max_retry_time_per_request企业版
描述 |
存储复制期间每个请求的最大重试时间。常规存储文件和索引在存储复制期间在单独的请求中下载。这配置了失败请求允许重新发送的最长时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
server.config.strict_validation.enabled
描述 |
严格的配置验证将防止数据库在 neo4j 设置命名空间(例如 dbms.、cypher. 等)中指定了未知配置选项,或者配置被多次声明时启动。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.databases.default_to_read_only动态
描述 |
此实例上的任何数据库是否默认处于只读状态。如果 |
有效值 |
一个布尔值。 |
默认值 |
|
server.databases.read_only动态
描述 |
防止写入查询的数据库列表。未包含在此列表中的数据库无论如何都可能处于只读状态,具体取决于 |
有效值 |
一个以逗号分隔的集合,其中每个元素都是一个有效的数据库名称,仅包含字母字符、数字、点和连字符,长度在 3 到 63 个字符之间,以字母字符或数字开头,但不能以 system 名称开头。 |
默认值 |
server.databases.writable动态
描述 |
允许写入查询的数据库列表。未包含在此列表中的数据库无论如何都将允许写入查询,除非 |
有效值 |
一个以逗号分隔的集合,其中每个元素都是一个有效的数据库名称,仅包含字母字符、数字、点和连字符,长度在 3 到 63 个字符之间,以字母字符或数字开头,但不能以 system 名称开头。 |
默认值 |
server.dynamic.setting.allowlist企业版
描述 |
允许动态更改的设置名称模式列表(逗号分隔)。该列表可以包含完整的设置名称,以及带有通配符 |
有效值 |
逗号分隔的列表,其中每个元素都是一个字符串。 |
默认值 |
|
server.jvm.additional
描述 |
附加的 JVM 参数。参数顺序可能很重要。要使用 Java 商业功能,解锁商业功能的参数必须先于配置值字符串中启用特定功能的参数。 |
有效值 |
一个或多个 JVM 参数。 |
默认值 |
有关 server.jvm.additional 默认值的详细信息,请参阅 neo4j.conf 文件 → server.jvm.additional 的默认值。
server.panic.shutdown_on_panic企业版
描述 |
控制如果发生服务器紧急情况(不可恢复的错误),Neo4j 进程是关闭还是继续运行。服务器紧急情况发生后,可能会丢失大量功能。恢复全部功能将需要重启 Neo4j 进程。 |
有效值 |
一个布尔值。 |
默认值 |
|
server.threads.worker_count
描述 |
Neo4j 工作线程的数量。此设置仅对 REST 有效,不会影响 bolt-server。它设置 neo4j-server 使用的 Jetty 服务器的工作线程数量。当您计划执行多个并发 REST 请求以从数据库获得更多吞吐量时,可以调整此选项。您的操作系统可能会强制执行低于此处指定的最大值的限制。可用处理器的数量,对于拥有超过 500 个处理器的机器,则为 500。 |
有效值 |
介于 |
默认值 |
事务设置
db.lock.acquisition.timeout动态
描述 |
应获取锁的最大时间间隔。零(默认)表示禁用超时。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.shutdown_transaction_end_timeout
描述 |
在允许启动的数据库关闭继续之前,等待正在运行的事务完成的最长时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.transaction.bookmark_ready_timeout动态
描述 |
等待书签所代表的数据库状态的最长时间。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.transaction.concurrent.maximum动态
描述 |
并发运行的最大事务数。如果设置为 0,则禁用限制。 |
有效值 |
一个整数。 |
默认值 |
|
db.transaction.monitor.check.interval
描述 |
配置事务监视器检查之间的时间间隔。确定监视器线程检查事务超时的频率。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.transaction.sampling.percentage动态
描述 |
事务采样百分比。 |
有效值 |
介于 |
默认值 |
|
db.transaction.timeout动态
描述 |
事务应该完成的最大时间间隔。 |
有效值 |
一个持续时间(有效单位为: |
默认值 |
|
db.transaction.tracing.level动态
描述 |
事务创建跟踪级别。 |
有效值 |
[DISABLED, SAMPLE, ALL] 之一。 |
默认值 |
|
事务日志设置
事务日志保留尚未应用于存储文件的事务列表。这对于恢复是必要的。以下设置配置修剪操作后保留的事务日志数量以及事务日志文件的大小。
另请参阅 检查点设置。
db.recovery.fail_on_missing_files
描述 |
如果 |
有效值 |
一个布尔值。 |
默认值 |
|
db.tx_log.buffer.size
描述 |
序列化事务日志时,它们将临时存储在字节缓冲区中,该缓冲区将在事务结束时或当缓冲区已满时的任何时刻被刷新。默认情况下,字节缓冲区的大小基于可用 CPU 的数量,最小缓冲区大小为 512KB。每多 4 个 CPU 将向缓冲区大小增加 512KB。在这种默认方案中,最大缓冲区大小为 4MB,考虑到在多数据库环境中每个数据库可以有一个事务日志编写器。例如,拥有 4 个 CPU 的运行时将具有 1MB 的缓冲区大小;拥有 8 个 CPU 的运行时将具有 1MB 512KB 的缓冲区大小;拥有 12 个 CPU 的运行时将具有 2MB 的缓冲区大小。 |
有效值 |
最小为 |
默认值 |
db.tx_log.preallocate动态
描述 |
指定 Neo4j 是否应尝试提前预分配逻辑日志文件。它通过确保有足够的空间来容纳新生成的文件并避免文件级碎片来优化文件系统。 |
有效值 |
一个布尔值。 |
默认值 |
|
db.tx_log.rotation.retention_policy动态
描述 |
指定 Neo4j 应保留逻辑事务日志以备份数据库的时间。例如, |
有效值 |
匹配模式 |
默认值 |
|