neo4j配置详解

发布时间:2024年01月01日

neo4j.conf 约定

neo4j.conf文件是Neo4j中配置设置的主要来源,包含配置设置键到值的映射。neo4j.conf文件中的大多数配置设置直接应用于Neo4j本身,但也有与Neo4j运行的Java运行时(JVM)相关的其他设置。

neo4j.conf 约定

  • 等号(=)将配置设置KV配置。

  • 以数字符号(#)开头的行作为注释处理。

  • 不支持尾随注释。

  • 空行将被忽略。

  • 配置neo4j.conf中的设置将覆盖所有默认值。如果要用自定义值修改默认值,则必须显式列出默认值和新值。

  • 配置设置是无序。

  • 默认情况下,配置设置启用了严格的验证。如果Neo4j.conf文件包含错字、错误信息或重复(server.jvm.additional除外),它会阻止Neo4j启动。如果为server.jvm.additional设置了多个值。每个设置值向java启动程序添加一个自定义JVM参数。

  • 要禁用严格验证,请设置server.config.strict_validate.enabled=false

  • 默认情况下,字符编码为ISO 8859-1。可以通过将环境变量NEO4J_CONFIG_FILE_CHARSET设置为utf8来覆盖。

配置设置

通用格式

Neo4j配置设置有以下通用格式:

<prefix>.<scope>.<component>...<component>.<name>

scope一般有:

  • db
  • dbms
  • server
  • browser
  • client

JVM配置

SettingDescription
server.memory.heap.initial_size初始化堆大小,默认情况下根据系统资源计算。
server.memory.heap.max_size堆最大值,默认情况下根据系统资源计算。
server.jvm.additional附加参数

如果希望很好地控制系统行为,建议将堆大小参数设置为相同的值,以避免不必要的完全垃圾收集暂停。

列出当前有效配置

SHOW SETTINGS
YIELD name, value
WHERE name STARTS WITH 'server.default'
RETURN name, value
ORDER BY name
LIMIT 3;

命令扩展

命令展开提供了一个额外的功能来配置Neo4j,它允许您指定设置来自外部文件的值的脚本。这对以下情况特别有用:

  • 避免以明文形式在neo4j.conf文件中设置敏感信息,如用户名、密码、密钥等。

  • 处理在文件系统不可访问的环境中运行的实例的配置设置。

neo4j.conf 文件中通过$() 把脚本的值作为参数。例如:dbms.setting=$(script_to_execute)

该配置接受可以由拥有并执行Neo4j服务器的用户在子进程中执行的任何命令。这也意味着,在将Neo4j设置为服务的情况下,命令在服务中执行。

可以使用curl 命令为配置设置获取令牌或值。例如,可以通过将neo4j.conf文件中的任何敏感信息替换为对某种提供者的安全引用来应用额外的安全级别。

启用

--expand-commands参数

bin/neo4j start --expand-commands

默认文件位置

File typeDescriptionLinux / macOS / Docker
Bin运行文件位置<neo4j-home>/bin
CertificatesTLS证书<neo4j-home>/certificates
ConfigurationThe Neo4j configuration settings, Log4j configuration settings, and the JMX access credentials.<neo4j-home>/conf/neo4j.conf <neo4j-home>/conf/server-logs.xml <neo4j-home>/conf/user-log.xml
Data [3]数据文件<neo4j-home>/data
ImportLOAD CSV 文件/import
Labs [4]APOC Core<neo4j-home>/labs
Lib<neo4j-home>/lib
Licenses<neo4j-home>/licenses
Logs<neo4j-home>/logs
Metrics度量<neo4j-home>/metrics
Plugins插件<neo4j-home>/plugins
Products<neo4j-home>/products
Run进程id<neo4j-home>/run

自定义文件位置

环境变量设置:

LocationDefaultEnvironment variable
<neo4j-home>bin 目录的父目录NEO4J_HOME
conf<neo4j-home>/confNEO4J_CONF

其他设置:

#server.directories.data=data
#server.directories.plugins=plugins
#server.directories.logs=logs
#server.directories.lib=lib
#server.directories.run=run
#server.directories.licenses=licenses
#server.directories.metrics=metrics
#server.directories.transaction.logs.root=data/transactions
#server.directories.dumps.root=data/dumps
#server.directories.import=import

端口

监听地址配置设置

侦听地址配置设置将设置要侦听的网络接口和端口。例如,ip地址为127.0.0.1,端口为7687,可设置为127.0.0.1:7687。下表显示了可用的neo4j特定端口和相关配置设置的概述:

NameDefault portRelated configuration setting
backup6362server.backup.listen_address
HTTP7474server.http.listen_address
HTTPS7473server.https.listen_address
Bolt7687server.bolt.listen_address
Cluster discovery management5000server.discovery.listen_address
Cluster transaction6000server.cluster.listen_address
Cluster RAFT7000server.cluster.raft.listen_address
Cluster routing connector7688server.routing.listen_address
Graphite monitoring2003server.metrics.graphite.server
Prometheus monitoring2004server.metrics.prometheus.endpoint
JMX monitoring3637server.jvm.additional=-Dcom.sun.management.jmxremote.port=3637
Remote debugging5005server.jvm.additional=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005

配置设置server.default_listen_address 将默认网络接口配置为侦听传入的连接。

广播地址设置

连接配置

可用连接器

Connector nameProtocolDefault port number
server.boltBolt7687
server.httpHTTP7474
server.httpsHTTPS7473

初始化密码

见:https://neo4j.com/docs/operations-manual/5/configuration/set-initial-password/

密码和用户恢复

见:https://neo4j.com/docs/operations-manual/5/configuration/password-and-user-recovery/

修改动态配置

//显示配置
SHOW SETTINGS
YIELD name, isDynamic
WHERE isDynamic
RETURN name
//修改配置
CALL dbms.setConfigValue(setting, value)

更多配置

见:https://neo4j.com/docs/operations-manual/5/configuration/configuration-settings/

  • 检查点配置
  • 集群配置
  • 连接配置
  • cypher配置
  • 数据库配置
  • DBMS配置
  • 导入配置
  • 索引配置
  • 日志配置
  • 内存配置
  • 度量配置
  • 安全配置
  • K8S配置
  • 目录配置
  • 服务配置
  • 事务配置
  • 事务日志配置
文章来源:https://blog.csdn.net/demon7552003/article/details/135301792
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。