2016-06-20 2 views
1

В Neo4j 2.x мы могли бы легко запустить сервер, используя указанную папку данных с простой командой:Запуск Neo4j 3.0 с конкретной папке базы данных

./neo4j console -path data/databases/my_graph.db/ 

В 3.0 швы игнорировать настройки Также путь - при использовании neo4j-shell как в 2.x, так и в 3.0, он правильно принимает -path аргумент и изменяет используемые данные.

Как я могу запустить neo4j с помощью указанной папки данных?

Зачем они меняют это таким несовместимым способом?

EDIT 1: Я нашел комментарий к этому changelog

Тем не менее они не определяют, как перезапись конфигурации при запуске Neo4j.

ответ

1

Путь СУБД теперь хранится в /etc/neo4j/neo4j.conf значение, которое хранится как dbms.directories.data

Столкнувшись с такой же проблемой, и не в состоянии выяснить, как начать с -path, , что я сделал вместо этого является копииneo4j.conf файла в новый файл neo4j.conf.bak

Тогда измените значение dbms.directories.data в первом файле и перезапустите базу данных.

Переименуйте и замените файлы для переключения баз данных.

Это может быть не идеальное решение, но оно работает. Надеюсь, это поможет.

+1

Ну, я знаю, что смогу это сделать, но мое дело в том, чтобы иметь несколько баз данных с одним набором данных, но с разным количеством элементов, поэтому я хотел бы изменить их в момент запуска. могу я поеду с некоторым скриптом, который будет вставлять dbname в neo4j.conf.template, скопировать его в neo4j.conf и начать neo4j нормально. –

+0

У меня также есть другие базы данных, и я хочу загрузить тот, который я хочу в py2neo, в virtualenv. Я изменил dbms.directories.data, но не успел: результаты базы данных всегда пусты, не могу загрузить папку. Папка принадлежит пользователю neo4j. – user305883

+0

То, что я закончил, имеет конфигурацию по умолчанию, указывающую на «graph.db», но я использую символические ссылки - таким образом, я могу легко изменить, какую БД загружать с помощью простого скрипта магии bash. –

0

Попробуйте установить значение переменной NEO4J_CONF окружающей среды

NEO4J_CONF=/path/to/config_dir

Вы можете создать несколько конфиги и установить эту переменную соответствующим образ перед запуском Neo4j запуском

NEO4J_CONF=/path/to/config_dir neo4j start

Так добавить каталог neo4j.test конфигурации и neo4j.production config, внутри них устанавливается свойство dbms.active_database в neo4j.conf, затем соответствующим образом установите переменную окружения при желании использовать технологию производства/тестирования/разработки.

+0

A Я упомянул в комментарии ниже - я закончил использование символических ссылок на график по умолчанию.db в config - это также позволяет легко переключаться с одного набора данных на другой. –

+0

Благодарим за отзыв, Вы должны выбрать официальный правильный ответ на свой вопрос. Использование 'NEO4J_CONF' немного более точно соответствует их способу конфигурации и является самым гибким решением. (Помните, что вам не нужно сохранять свои конфигурации в/etc ...) –

+0

Вот их официальная страница базы знаний по конфигурации https://neo4j.com/developer/kb/how-do-i-quickly- переключаться между ними и множеством графов-без модификации-Neo4j-Conf / –

Смежные вопросы