知识库

在 Neo4j 3.1 中手动将 neo4j-wrapper.conf 合并到 neo4j.conf

Neo4j 3.1 在 Neo4j 3.0 已有的配置更改基础上更进一步,统一为单一配置文件:conf/neo4j.conf。该文件是将 conf/neo4j.confconf/neo4j-wrapper.conf 的内容合并后的结果。升级过程并不会自动合并这两个文件,且 conf/neo4j-wrapper.conf 已被弃用,但在 3.x 版结束前仍然受支持。因此,此时合并两者是可选的,但作为为后续版本做准备的良好步骤,建议进行合并。

可以直接复制 conf/neo4j-wrapper.conf 的全部内容并粘贴到 conf/neo4j.conf 的末尾。或者,使用下面的示例脚本。只需复制脚本,粘贴到 $NEO4J_HOME/bin 下的新文件并赋予可执行权限,然后运行即可。

#!/usr/bin/env bash
# This script will merge an existing neo4j.conf and neo4j-wrapper.conf
# This script is designed to be run from the bin/ directory of Neo4j, and expects both neo4j.conf
# and neo4j-wrapper.conf to be located in the conf/ directory.
# This is a sample script that is not part of the Neo4j project.
# Please be sure to read, understand and adapt this script as appropriate for your environment

set -o errexit -o nounset -o pipefail
[[ "${TRACE:-}" ]] && set -o xtrace

: "${NEO4J_BIN:=$(dirname "$0")}"
readonly NEO4J_BIN
. "${NEO4J_BIN}/neo4j-shared.sh"

main() {
  setup_environment
  check_java
  build_classpath
  export NEO4J_HOME NEO4J_CONF

  NOW=$(date +"%s")
  CONF_CONTAINS_WRAPPER=$(ls "${NEO4J_CONF}" | grep -x "neo4j-wrapper.conf" | wc -l | tr -d '[:space:]')
  # Check if there is a neo4j-wrapper.conf in conf directory
  if [ "$CONF_CONTAINS_WRAPPER" = "1" ]; then
    # Make a copy of current neo4j.conf file
    echo "Making backup of ${NEO4J_CONF}/neo4j.conf"
    cp "${NEO4J_CONF}/neo4j.conf" "${NEO4J_CONF}/neo4j.conf.bak.${NOW}"
    # Append neo4j-wrapper.conf to end of current neo4j.conf file
    echo "Appending ${NEO4J_CONF}/neo4j-wrapper.conf to the end of ${NEO4J_CONF}/neo4j.conf"
    echo "# Appended neo4j-wrapper.conf settings following this line" >> ${NEO4J_CONF}/neo4j.conf
    cat "${NEO4J_CONF}/neo4j-wrapper.conf" >> ${NEO4J_CONF}/neo4j.conf
    mv "${NEO4J_CONF}/neo4j-wrapper.conf" "${NEO4J_CONF}/neo4j-wrapper.conf.deprecated.${NOW}"
    # Success!
    echo "Successfully merged. Restart neo4j for changes to take effect."
  else
    echo "No neo4j-wrapper.conf found, exiting"
  fi
}

main "$@"
© . This site is unofficial and not affiliated with Neo4j, Inc.