Одна из малоизвестных вещей об онлайн-инструменте резервного копирования Neo4j , о котором я писал на прошлой неделе , заключается в том, что концептуально он состоит из двух частей:
- Копирование файлов магазина в любое место по вашему выбору
- Проверка соответствия этих файлов хранилища.
По умолчанию оба они запускаются при запуске сценария ‘neo4j-backup’, но иногда полезно иметь возможность запускать их отдельно.
Если мы хотим просто запустить копирование файлов хранилища как часть процесса, мы можем указать инструменту резервного копирования пропустить проверку согласованности, используя флаг « verify »:
1
2
|
$ pwd /Users/markneedham/Downloads/neo4j-enterprise-2 .0.0 |
1
2
3
4
5
|
$ . /bin/neo4j-backup -from single: //127 .0.0.1 -to /tmp/foo -verify false Performing full backup from 'single://127.0.0.1' Files copied ................ done Done |
Если бы мы запустили это без флага проверки, мы бы также увидели выходные данные средства проверки согласованности:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
|
$ . /bin/neo4j-backup -from single: //127 .0.0.1 -to /tmp/foo Performing full backup from 'single://127.0.0.1' Files copied ................ done Full consistency check .................... 10% .................... 20% .................... 30% .................... 40% .................... 50% .................... 60% .................... 70% .................... 80% .................... 90% .................... 100% Done |
Если у нас уже есть резервная копия и мы хотим запустить только проверку согласованности, мы можем запустить следующую команду:
01
02
03
04
05
06
07
08
09
10
11
12
|
$ java - cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool /tmp/foo Full consistency check .................... 10% .................... 20% .................... 30% .................... 40% .................... 50% .................... 60% .................... 70% .................... 80% .................... 90% .................... 100% |
Сам инструмент согласованности принимает флаг « config », который дает вам некоторый контроль над тем, что вы хотите проверить на согласованность.
Различные параметры определены в org.neo4j.consistency.ConsistencyCheckSettings .
Например, если мы хотим изменить файл, в который записывается отчет проверки согласованности, мы можем добавить следующее свойство в наш файл конфигурации:
1
2
|
$ tail -n 1 conf/neo4j.properties consistency_check_report_file=/tmp/foo.txt |
А затем запустите инструмент согласованности следующим образом:
1
|
$ java - cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool -config conf /neo4j .properties /tmp/foo |
Если есть какие-либо несоответствия, они теперь будут записаны в этот файл, а не в файл в каталоге магазина.
Вы также можете передать этот флаг «config» инструменту резервного копирования, и он будет использовать его при запуске проверки согласованности. например
1
|
$ . /bin/neo4j-backup -from single: //127 .0.0.1 -to /tmp/foo -verify false -config conf /neo4j .properties |
Большую часть времени вам не нужно слишком беспокоиться об одной из этих команд, но я всегда забываю, какие есть различные варианты, поэтому я подумал, что лучше написать их, пока они свежи в моей памяти.