知识库

如何设置 Neo4j 以在 Linux 服务器重启时启动

如果您想在 Linux 系统上使用 tar 安装来模拟 Neo4j RPM 服务,请按照以下步骤操作

以 root 身份

  1. 将 $NEO4J_HOME/bin/neo4j 脚本文件复制到 /etc/init.d

  2. 编辑 /etc/init.d/neo4j 脚本文件,取消注释 NEO4J_HOME 变量并将其设置为正确的 Neo4j 主目录值。NEO4J_HOME 变量的设置位于标记的部分

    # Provides these environment variables:
    NEO4J_HOME=<full_path_to_your_NEO4J_HOME>

完成这些更改后,您可以以 root 身份手动启动 neo4j 服务。

如果您以 root 身份执行以下操作,neo4j 将以 “neo4j” 用户启动,因此 pid 将归该用户所有

# su - neo4j -c "service neo4j start"

例如,如果您的 neo4j 用户拥有 sudo 权限,也可以在普通用户层面执行这些命令

$ sudo service neo4j start

要在 Linux 服务器重启时设置 Neo4j 的停止/启动自动化,请按照以下步骤操作

以 root 身份

a) 使用以下内容创建文件 /etc/init.d/neo4j_ctl

#!/bin/sh

        OWNER=neo4j #Set to the owner of the Neo4j installation

        case "$1" in
        'start')
            su - $OWNER -c "service neo4j start"
            ;;
        'stop')
            su - $OWNER -c "service neo4j stop"
            ;;
        'restart')
            su - $OWNER -c "service neo4j restart"
            ;;
        *)
            echo "Usage: $0 { start | stop | restart }"
            exit 1
            ;;
        esac
        exit 0

b) 设置脚本的权限

# chmod 744 /etc/init.d/neo4j_ctl

c) 通过关闭数据库来测试脚本

# /etc/init.d/neo4j_ctl stop

d) 通过启动数据库来测试脚本

# /etc/init.d/neo4j_ctl start

e) 配置系统在正确的运行级别启动 Neo4j,并在运行级别 0 时停止 Neo4j。

运行以下命令以确定 Linux 所在的运行级别

# /sbin/runlevel

如果运行级别是 3,则按以下步骤操作

# cd /etc/rc3.d
# ln -s ../init.d/neo4j_ctl S40neo4j_ctl
# cd /etc/rc0.d
# ln -s ../init.d/neo4j_ctl K30neo4j_ctl

如果运行级别是 5,则按以下步骤操作

# cd /etc/rc5.d
# ln -s ../init.d/neo4j_ctl S40neo4j_ctl
# cd /etc/rc0.d
# ln -s ../init.d/neo4j_ctl K30neo4j_ctl

f) 重启 Linux 系统并检查 Neo4j 是否已自动重启。

© . This site is unofficial and not affiliated with Neo4j, Inc.