Одна из малоизвестных вещей об онлайн-инструменте резервного копирования 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 falsePerforming full backup from 'single://127.0.0.1'Files copied................ doneDone |
Если бы мы запустили это без флага проверки, мы бы также увидели выходные данные средства проверки согласованности:
|
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/fooPerforming full backup from 'single://127.0.0.1'Files copied................ doneFull 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/fooFull consistency check.................... 10%.................... 20%.................... 30%.................... 40%.................... 50%.................... 60%.................... 70%.................... 80%.................... 90%.................... 100% |
Сам инструмент согласованности принимает флаг « config », который дает вам некоторый контроль над тем, что вы хотите проверить на согласованность.
Различные параметры определены в org.neo4j.consistency.ConsistencyCheckSettings .
Например, если мы хотим изменить файл, в который записывается отчет проверки согласованности, мы можем добавить следующее свойство в наш файл конфигурации:
|
1
2
|
$ tail -n 1 conf/neo4j.propertiesconsistency_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 |
Большую часть времени вам не нужно слишком беспокоиться об одной из этих команд, но я всегда забываю, какие есть различные варианты, поэтому я подумал, что лучше написать их, пока они свежи в моей памяти.