设置 Neo4j 服务以使用不同的服务 ID 运行
默认情况下,当通过 yum 或 apt-get 安装 neo4j 为 RPM 包时,会创建一个用户 neo4j 和组 neo4j,并以 neo4j 用户运行。然而可能需要将 Neo4j 服务以除 neo4j 之外的其他服务 ID 运行。因此本文将探讨如何配置服务 ID 来运行 Neo4j 服务。
为简化起见,假设此操作在 Redhat Release 7.x 上进行
遵循 Neo4j 操作手册文档中指定的说明来安装 Neo4j Enterprise。 /docs/operations-manual/current/installation/linux/rpm/
Neo4j 服务安装完成后,会创建一个名为 neo4j 的新用户和组。使用 sudo systemctl start neo4j 启动 Neo4j 服务时,服务由 neo4j 用户启动。
要以不同用户设置并启动 Neo4j 服务,我们必须遵循下面列出的步骤。
我们将使用用户 testuser 和组 testuser 来设置 Neo4j 服务。
第一步是编辑 neo4j.service,将用户和组更改为 testuser,使服务能够以该用户和组启动。
sudo vi /usr/lib/systemd/system/neo4j.service
如下所示编辑,修改 User 和 Group。
[Unit]
Description=Neo4j Graph Database
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/home/rohan_kharwar/neo4j-enterprise-3.5.5/bin/neo4j console
Restart=on-failure
User=testuser
Group=testuser
Environment="NEO4J_CONF=/home/rohan_kharwar/neo4j-enterprise-3.5.5/conf" "NEO4J_HOME=/home/rohan_kharwar/neo4j-enterprise-3.5.5"
LimitNOFILE=60000
TimeoutSec=120
[Install]
WantedBy=multi-user.target
第二步是将以下文件的所有者更改为 testuser:testuser。适用于 RPM 安装
/etc/neo4j /etc/neo4j/jmx.access /etc/neo4j/jmx.password /etc/neo4j/neo4j.conf /var/lib/neo4j /var/lib/neo4j/data /var/lib/neo4j/data/databases /var/lib/neo4j/import /var/lib/neo4j/plugins /var/log/neo4j /var/run/neo4j
步骤记录如下
$ sudo chown testuser:testuser -R /etc/neo4j
$ sudo chown testuser:testuser -R /var/lib/neo4j
$ sudo chown testuser:testuser -R /var/log/neo4j
$ sudo chown testuser:testuser -R /var/run/neo4j
完成上述步骤后,文件所有者应更改为 testuser。然后以如下方式启动 neo4j 服务
$ sudo systemctl start neo4j
这样应以已设置的服务用户启动。
要验证 neo4j 服务是否以用户 testuser 启动,执行 ps -ef | grep -i neo4j
输出应显示 testuser,如下所示
testuser 3296 1 26 18:00 ? 00:00:19 /usr/bin/java -cp /var/lib/neo4j/plugins:/etc/neo4j:/usr/share/neo4j/lib/*:/var/lib/neo4j/plugins/* -server -XX:+UseG1GC -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch -XX:+UnlockExperimentalVMOptions -XX:+TrustFinalNonStaticFields -XX:+DisableExplicitGC -Djdk.tls.ephemeralDHKeySize=2048 -Djdk.tls.rejectClientInitiatedRenegotiation=true -Dunsupported.dbms.udc.source=rpm -Dfile.encoding=UTF-8 com.neo4j.server.enterprise.CommercialEntryPoint --home-dir=/var/lib/neo4j --config-dir=/etc/neo4j
此页面有帮助吗?