1

centos7.9中安装neo4j 4.1.1

 1 year ago
source link: https://blog.51cto.com/u_13753753/5938500
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

centos7.9中安装neo4j 4.1.1_雍州无名的技术博客_51CTO博客

雍州无名 2022-12-15 08:43:27 博主文章分类:neo4j ©著作权

文章标签 HTTP SSL java 文章分类 其它 系统/运维 阅读数191

1.环境准备

安装jdk11

2.安装neo4j

tar -zxvf neo4j-community-4.1.1-unix.tar.gz -C /usr/local/

修改环境变量

NEO4J_HOME=/usr/local/neo4j-community-4.1.1PATH=$PATH:$NEO4J_HOME/bin
centos7.9中安装neo4j 4.1.1_SSL
source /etc/profile

修改limits.conf文件

vim /etc/security/limits.conf

neo4j soft nofile 40000neo4j hard nofile 40000
centos7.9中安装neo4j 4.1.1_SSL_02

修改配置文件neo4j.conf 

cd /usr/local/neo4j-community-4.1.1/conf

只修改修改2个参数即可

vim neo4j.conf

dbms.default_listen_address=0.0.0.0 #数据库所在机器的ipdbms.default_advertised_address=0.0.0.0 #数据库所在机器的ip

启动Neo4j

neo4j start

访问:​ ​http://10.2.3.114:7474​

默认用户名:neo4j   密码:neo4j 

第一次登陆后需要重新设置密码

centos7.9中安装neo4j 4.1.1_SSL_03
centos7.9中安装neo4j 4.1.1_SSL_04
centos7.9中安装neo4j 4.1.1_SSL_05

3.Neo4的neo4j.conf文件配置详情

#*****************************************************************
# Neo4j configuration
#
# For more details and a complete list of settings, please see
# https://neo4j.com/docs/operations-manual/current/reference/configuration-settings/
#*****************************************************************

# The name of the default database
#默认数据库的名称是neo4j(有效的数据库名称。 仅包含字母字符,数字,点和破折号,长度在3到63个字符之间。 它应该以字母字符开头,但不能以“ system”名称开头。)
#dbms.default_database=neo4j

# Paths of directories in the installation.
#安装中目录的路径,默认使用当前安装Neo4j的目录
#dbms.directories.data=data #数据目录的路径。您不能将多个Neo4j安装配置为使用同一数据目录。
#dbms.directories.plugins=plugins #数据库插件目录的位置。如果将包含数据库过程的已编译Java JAR文件放置在此目录中,则将加载它们。
#dbms.directories.logs=logs #日志目录的路径
#dbms.directories.lib=lib #lib目录的路径。
#dbms.directories.run=run #运行目录的路径。 该目录保存Neo4j的运行时状态,例如在后台运行时的pidfile。 pidfile是在启动neo4j时创建的,并在停止它时被删除。 可以将其放置在内存文件系统(例如tmpfs)上。
#dbms.directories.transaction.logs.root=data/transactions #存储事物日志的位置

# This setting constrains all `LOAD CSV` import files to be under the `import` directory. Remove or comment it out to
# allow files to be loaded from anywhere in the filesystem; this introduces possible security problems. See the
# `LOAD CSV` section of the manual for details.
#此设置将所有“ LOAD CSV”导入文件限制在“ import”目录下。 删除或注释 则允许从文件系统中的任何位置加载文件; 这引入了可能的安全问题
dbms.directories.import=import

# Whether requests to Neo4j are authenticated.
# To disable authentication, uncomment this line
#是否验证对Neo4j的请求。要禁用身份验证,请取消注释此行
#dbms.security.auth_enabled=false

# Enable this to be able to upgrade a store from an older version.
#是否开启自动升级(默认关闭)
#dbms.allow_upgrade=true

#********************************************************************
# Memory Settings
#********************************************************************
#
# Memory settings are specified kilobytes with the 'k' suffix, megabytes with
# 'm' and gigabytes with 'g'.
# If Neo4j is running on a dedicated server, then it is generally recommended
# to leave about 2-4 gigabytes for the operating system, give the JVM enough
# heap to hold all your transaction state and query context, and then leave the
# rest for the page cache.

# Java Heap Size: by default the Java heap size is dynamically calculated based
# on available system resources. Uncomment these lines to set specific initial
# and maximum heap size.
#Java堆大小:默认情况下,Java堆大小是基于可用系统资源动态计算的,可自己设置初始堆大小和最大堆大小值,具体值需要根据自己系统及数据量大小而定
#dbms.memory.heap.initial_size=512m #初始堆大小。 默认情况下,它是根据可用的系统资源来计算的。 (有效单位为k,K,m,M,g,G)。
#dbms.memory.heap.max_size=512m #最大堆大小。 默认情况下,它是根据可用的系统资源来计算的。 (有效单位为k,K,m,M,g,G)

# The amount of memory to use for mapping the store files.
# The default page cache memory assumes the machine is dedicated to running
# Neo4j, and is heuristically set to 50% of RAM minus the Java heap size.
#设置缓存,单位可以是k/m/g,建议设置为RAM的50%减去最大Java堆大小(此参数很重要),如果未做设置则具体值需要根据自己系统及数据量大小而定
#dbms.memory.pagecache.size=10g

# Limit the amount of memory that all of the running transaction can consume.
# By default there is no limit.
#限制所有正在运行的事务可以消耗的内存量。默认情况下没有限制
#dbms.memory.transaction.global_max_size=256m

# Limit the amount of memory that a single transaction can consume.
# By default there is no limit.
#限制单个事务可以消耗的内存量。默认情况下没有限制
#dbms.memory.transaction.max_size=16m

# Transaction state location. It is recommended to use ON_HEAP.
#事务状态位置。建议使用ON-HEAP
dbms.tx_state.memory_allocation=ON_HEAP

#*****************************************************************
# Network connector configuration
#*****************************************************************

# With default configuration Neo4j only accepts local connections.
# To accept non-local connections, uncomment this line:
#使用默认配置Neo4j仅接受本地连接。要接受非本地连接,请取消注释此行
#dbms.default_listen_address=0.0.0.0

# You can also choose a specific network interface, and configure a non-default
# port for each connector, by setting their individual listen_address.

# The address at which this server can be reached by its clients. This may be the server's IP address or DNS name, or
# it may be the address of a reverse proxy which sits in front of the server. This setting may be overridden for
# individual connectors below.
#dbms.default_advertised_address=localhost

# You can also choose a specific advertised hostname or IP address, and
# configure an advertised port for each connector, by setting their
# individual advertised_address.

# By default, encryption is turned off.
# To turn on encryption, an ssl policy for the connector needs to be configured
# Read more in SSL policy section in this file for how to define a SSL policy.

# Bolt connector
dbms.connector.bolt.enabled=true #Bolt 连接开启
#dbms.connector.bolt.tls_level=DISABLED #要求使用此连接器的加密级别,默认是禁用(REQUIRED, OPTIONAL, DISABLED)
#dbms.connector.bolt.listen_address=:7687 #连接器应绑定的地址,套接字地址。 如果缺少端口或主机名,则从dbms.default_listen_address获取它

# HTTP Connector. There can be zero or one HTTP connectors.
dbms.connector.http.enabled=true #启用http连接器。
#dbms.connector.http.listen_address=:7474 #连接器应绑定的地址。

# HTTPS Connector. There can be zero or one HTTPS connectors.
dbms.connector.https.enabled=false #启用https连接器。(默认关闭)
#dbms.connector.https.listen_address=:7473 #连接器应绑定的地址。

# Number of Neo4j worker threads.
#运行线程数,取值范围是1〜44738
#dbms.threads.worker_count=

#*****************************************************************
# SSL policy configuration #SSL策略配置
#*****************************************************************

# Each policy is configured under a separate namespace, e.g.
# dbms.ssl.policy.<scope>.*
# <scope> can be any of 'bolt', 'https', 'cluster' or 'backup'
#
# The scope is the name of the component where the policy will be used
# Each component where the use of an ssl policy is desired needs to declare at least one setting of the policy.
# Allowable values are 'bolt', 'https', 'cluster' or 'backup'.

# E.g if bolt and https connectors should use the same policy, the following could be declared
# dbms.ssl.policy.bolt.base_directory=certificates/default
# dbms.ssl.policy.https.base_directory=certificates/default
# However, it's strongly encouraged to not use the same key pair for multiple scopes.
#
# N.B: Note that a connector must be configured to support/require
# SSL/TLS for the policy to actually be utilized.
#
# see: dbms.connector.*.tls_level

# SSL settings (dbms.ssl.policy.<scope>.*)
# .base_directory Base directory for SSL policies paths. All relative paths within the
# SSL configuration will be resolved from the base dir.
#
# .private_key A path to the key file relative to the '.base_directory'.
#
# .private_key_password The password for the private key.
#
# .public_certificate A path to the public certificate file relative to the '.base_directory'.
#
# .trusted_dir A path to a directory containing trusted certificates.
#
# .revoked_dir Path to the directory with Certificate Revocation Lists (CRLs).
#
# .verify_hostname If true, the server will verify the hostname that the client uses to connect with. In order
# for this to work, the server public certificate must have a valid CN and/or matching
# Subject Alternative Names.
#
# .client_auth How the client should be authorized. Possible values are: 'none', 'optional', 'require'.
#
# .tls_versions A comma-separated list of allowed TLS versions. By default only TLSv1.2 is allowed.
#
# .trust_all Setting this to 'true' will ignore the trust truststore, trusting all clients and servers.
# Use of this mode is discouraged. It would offer encryption but no security.
#
# .ciphers A comma-separated list of allowed ciphers. The default ciphers are the defaults of
# the JVM platform.

# Bolt SSL configuration
#dbms.ssl.policy.bolt.enabled=true
#dbms.ssl.policy.bolt.base_directory=certificates/bolt
#dbms.ssl.policy.bolt.private_key=private.key
#dbms.ssl.policy.bolt.public_certificate=public.crt
#dbms.ssl.policy.bolt.client_auth=NONE

# Https SSL configuration
#dbms.ssl.policy.https.enabled=true
#dbms.ssl.policy.https.base_directory=certificates/https
#dbms.ssl.policy.https.private_key=private.key
#dbms.ssl.policy.https.public_certificate=public.crt
#dbms.ssl.policy.https.client_auth=NONE

# Cluster SSL configuration
#dbms.ssl.policy.cluster.enabled=true
#dbms.ssl.policy.cluster.base_directory=certificates/cluster
#dbms.ssl.policy.cluster.private_key=private.key
#dbms.ssl.policy.cluster.public_certificate=public.crt

# Backup SSL configuration
#dbms.ssl.policy.backup.enabled=true
#dbms.ssl.policy.backup.base_directory=certificates/backup
#dbms.ssl.policy.backup.private_key=private.key
#dbms.ssl.policy.backup.public_certificate=public.crt

#*****************************************************************
# Logging configuration #日志配置
#*****************************************************************

# To enable HTTP logging, uncomment this line
#是否启用HTTP日志记录(要启用HTTP日志记录,请取消注释此行)
#dbms.logs.http.enabled=true

# Number of HTTP logs to keep.
#要保留的HTTP日志数。
#dbms.logs.http.rotation.keep_number=5

# Size of each HTTP log that is kept.
#保存的每个HTTP日志的大小。
#dbms.logs.http.rotation.size=20m

# To enable GC Logging, uncomment this line
#要启用GC日志记录,请取消注释此行
#dbms.logs.gc.enabled=true

# GC Logging Options
#GC记录选项
# see https://docs.oracle.com/en/java/javase/11/tools/java.html#GUID-BE93ABDC-999C-4CB5-A88B-1994AAAC74D5
#dbms.logs.gc.options=-Xlog:gc*,safepoint,age*=trace

# Number of GC logs to keep.
#GC日志保留数
#dbms.logs.gc.rotation.keep_number=5

# Size of each GC log that is kept.
#GC日志文件大小
#dbms.logs.gc.rotation.size=20m

# Log level for the debug log. One of DEBUG, INFO, WARN and ERROR. Be aware that logging at DEBUG level can be very verbose.
#调试日志的日志级别。 调试,信息,警告和错误之一。 请注意,在DEBUG级别记录日志可能非常冗长
#dbms.logs.debug.level=INFO

# Size threshold for rotation of the debug log. If set to zero then no rotation will occur. Accepts a binary suffix "k",
# "m" or "g".
#调试日志阈值大小
#dbms.logs.debug.rotation.size=20m

# Maximum number of history files for the internal log.
#最多保留日志文件数
#dbms.logs.debug.rotation.keep_number=7

#*****************************************************************
# Miscellaneous configuration #其他配置
#*****************************************************************

# Enable this to specify a parser other than the default one.
#启用此选项可指定默认解析器以外的解析器。
#cypher.default_language_version=3.5 #设置此项以指定默认解析器(语言版本) [default, 3.5, 4.0, 4.1]

# Determines if Cypher will allow using file URLs when loading data using
# `LOAD CSV`. Setting this value to `false` will cause Neo4j to fail `LOAD CSV`
# clauses that load data from the file system.
#是否允许Cypher在Load CSV时引用互联网上的地址
#dbms.security.allow_csv_import_from_file_urls=true


# Value of the Access-Control-Allow-Origin header sent over any HTTP or HTTPS
# connector. This defaults to '*', which allows broadest compatibility. Note
# that any URI provided here limits HTTP/HTTPS access to that URI only.
#dbms.security.http_access_control_allow_origin=*

# Value of the HTTP Strict-Transport-Security (HSTS) response header. This header
# tells browsers that a webpage should only be accessed using HTTPS instead of HTTP.
# It is attached to every HTTPS response. Setting is not set by default so
# 'Strict-Transport-Security' header is not sent. Value is expected to contain
# directives like 'max-age', 'includeSubDomains' and 'preload'.
#dbms.security.http_strict_transport_security=

# Retention policy for transaction logs needed to perform recovery and backups.
#执行恢复和备份所需的事务日志的保留策略。
#使Neo4j保留逻辑事务日志,以便能够备份数据库。 可用于指定阈值,以在此之后修剪逻辑日志。 例如,“ 10天”将删除仅包含比当前时间早10天的事务的逻辑日志,或者“ 100k txs”将保留100k个最新事务并修剪任何较早的事务。
dbms.tx_log.rotation.retention_policy=1 days #使Neo4j保留逻辑事务日志,以便能够备份数据库。

# Only allow read operations from this Neo4j instance. This mode still requires
# write access to the directory for lock purposes.
#dbms.read_only=false #仅允许从此Neo4j实例进行读取操作。

# Comma separated list of JAX-RS packages containing JAX-RS resources, one
# package name for each mountpoint. The listed package names will be loaded
# under the mountpoints specified. Uncomment this line to mount the
# org.neo4j.examples.server.unmanaged.HelloWorldResource.java from
# neo4j-server-examples under /examples/unmanaged, resulting in a final URL of
# http://localhost:7474/examples/unmanaged/helloworld/{nodeId}
#dbms.unmanaged_extension_classes=org.neo4j.examples.server.unmanaged=/examples/unmanaged

# A comma separated list of procedures and user defined functions that are allowed
# full access to the database through unsupported/insecure internal APIs.
#dbms.security.procedures.unrestricted=my.extensions.example,my.procedures.*

# A comma separated list of procedures to be loaded by default.
# Leaving this unconfigured will load all procedures found.
#dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*

#********************************************************************
# JVM Parameters #JVM参数
#********************************************************************

# G1GC generally strikes a good balance between throughput and tail
# latency, without too much tuning.
#G1GC通常在吞吐量和拖尾之间达到良好的平衡
dbms.jvm.additional=-XX:+UseG1GC

# Have common exceptions keep producing stack traces, so they can be
# debugged regardless of how often logs are rotated.
dbms.jvm.additional=-XX:-OmitStackTraceInFastThrow

# Make sure that `initmemory` is not only allocated, but committed to
# the process, before starting the database. This reduces memory
# fragmentation, increasing the effectiveness of transparent huge
# pages. It also reduces the possibility of seeing performance drop
# due to heap-growing GC events, where a decrease in available page
# cache leads to an increase in mean IO response time.
# Try reducing the heap memory, if this flag degrades performance.
dbms.jvm.additional=-XX:+AlwaysPreTouch

# Trust that non-static final fields are really final.
# This allows more optimizations and improves overall performance.
# NOTE: Disable this if you use embedded mode, or have extensions or dependencies that may use reflection or
# serialization to change the value of final fields!
dbms.jvm.additional=-XX:+UnlockExperimentalVMOptions
dbms.jvm.additional=-XX:+TrustFinalNonStaticFields

# Disable explicit garbage collection, which is occasionally invoked by the JDK itself.
dbms.jvm.additional=-XX:+DisableExplicitGC

#Increase maximum number of nested calls that are can be inlined from 9 (default) to 15
dbms.jvm.additional=-XX:MaxInlineLevel=15

# Restrict size of cached JDK buffers to 256 KB
dbms.jvm.additional=-Djdk.nio.maxCachedBufferSize=262144

# More efficient buffer allocation in Netty by allowing direct no cleaner buffers.
dbms.jvm.additional=-Dio.netty.tryReflectionSetAccessible=true

# Exits JVM on the first occurrence of an out-of-memory error. Its preferable to restart VM in case of out of memory errors.
#在第一次出现内存不足错误时退出JVM。 如果出现内存不足错误,最好重启VM。
# dbms.jvm.additional=-XX:+ExitOnOutOfMemoryError

# Remote JMX monitoring, uncomment and adjust the following lines as needed. Absolute paths to jmx.access and
# jmx.password files are required.
# Also make sure to update the jmx.access and jmx.password files with appropriate permission roles and passwords,
# the shipped configuration contains only a read only role called 'monitor' with password 'Neo4j'.
# For more details, see: http://download.oracle.com/javase/8/docs/technotes/guides/management/agent.html
# On Unix based systems the jmx.password file needs to be owned by the user that will run the server,
# and have permissions set to 0600.
# For details on setting these file permissions on Windows see:
# http://docs.oracle.com/javase/8/docs/technotes/guides/management/security-windows.html
#dbms.jvm.additional=-Dcom.sun.management.jmxremote.port=3637
#dbms.jvm.additional=-Dcom.sun.management.jmxremote.authenticate=true
#dbms.jvm.additional=-Dcom.sun.management.jmxremote.ssl=false
#dbms.jvm.additional=-Dcom.sun.management.jmxremote.password.file=/absolute/path/to/conf/jmx.password
#dbms.jvm.additional=-Dcom.sun.management.jmxremote.access.file=/absolute/path/to/conf/jmx.access

# Some systems cannot discover host name automatically, and need this line configured:
#dbms.jvm.additional=-Djava.rmi.server.hostname=$THE_NEO4J_SERVER_HOSTNAME

# Expand Diffie Hellman (DH) key size from default 1024 to 2048 for DH-RSA cipher suites used in server TLS handshakes.
# This is to protect the server from any potential passive eavesdropping.
dbms.jvm.additional=-Djdk.tls.ephemeralDHKeySize=2048

# This mitigates a DDoS vector.
dbms.jvm.additional=-Djdk.tls.rejectClientInitiatedRenegotiation=true

# Enable remote debugging
#dbms.jvm.additional=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005

# This filter prevents deserialization of arbitrary objects via java object serialization, addressing potential vulnerabilities.
# By default this filter whitelists all neo4j classes, as well as classes from the hazelcast library and the java standard library.
# These defaults should only be modified by expert users!
# For more details (including filter syntax) see: https://openjdk.java.net/jeps/290
#dbms.jvm.additional=-Djdk.serialFilter=java.**;org.neo4j.**;com.neo4j.**;com.hazelcast.**;net.sf.ehcache.Element;com.sun.proxy.*;org.openjdk.jmh.**;!*

# Increase the default flight recorder stack sampling depth from 64 to 256, to avoid truncating frames when profiling.
dbms.jvm.additional=-XX:FlightRecorderOptions=stackdepth=256

# Allow profilers to sample between safepoints. Without this, sampling profilers may produce less accurate results.
dbms.jvm.additional=-XX:+UnlockDiagnosticVMOptions
dbms.jvm.additional=-XX:+DebugNonSafepoints

#********************************************************************
# Wrapper Windows NT/2000/XP Service Properties
#********************************************************************
# WARNING - Do not modify any of these properties when an application
# using this configuration file has been installed as a service.
# Please uninstall the service before modifying this section. The
# service can then be reinstalled.

# Name of the service
dbms.windows_service_name=neo4j

#********************************************************************
# Other Neo4j system properties
#********************************************************************


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK