Резервное копирование Neo4j Community Edition в windows

В настоящее время я использую Neo4j Community версии 1.8.2 с Windows 8. Возможно ли резервное копирование БД версии сообщества neo4j в windows?

4 ответов


Как сказал Пангея, официальный инструмент резервного копирования доступен только на Enterprise Edition.

его предложение использовать инструменты резервного копирования Windows не является хорошим вариантом, если вы не знаете других вещей о Neo4j. Neo4j не очищает информацию сразу, как и Lucene, поэтому, если вы используете что-то вроде резервной копии Windows, вы не получите базу данных в стабильной резервной копии. Вам нужно либо использовать инструмент резервного копирования Neo4j, либо отключить базу данных Graph, чтобы все сбросы / закрытия, а затем резервное копирование с помощью Windows.


вот мои сценарии Powershell для Community edition

#http://stackoverflow.com/questions/1153126/how-to-create-a-zip-archive-with-powershell
function zipFiles()
{
    param(
        [Parameter(Mandatory=$true,Position=0)]$zipfilename
        ,[Parameter(Mandatory=$true,Position=1)]$sourcedir
    )

   Add-Type -Assembly System.IO.Compression.FileSystem
   $compressionLevel = [System.IO.Compression.CompressionLevel]::Optimal
   [System.IO.Compression.ZipFile]::CreateFromDirectory($sourcedir, $zipfilename, $compressionLevel, $false)
}

#http://stackoverflow.com/questions/18612294
function BackupNeo4jCommunity
{
    param(
        [Parameter(Mandatory=$true,Position=0)]$serviceName
        ,[Parameter(Mandatory=$true,Position=1)]$sourceNeoFolder
        ,[Parameter(Mandatory=$true,Position=2)]$zipFilename
    )

    Stop-Service $serviceName

    zipFiles $zipfilename $sourceNeoFolder

    Start-Service $serviceName
}

BackupNeo4jCommunity -serviceName neoWindowsServiceName -sourceNeoFolder "D:\neo4j\myapp\data\graph.db" -zipFilename "D:\Downloads\neo-data.zip"

служба резервного копирования доступна только в enterprise edition. Вы можете запланировать регулярное резервное копирование файлов данных Neo4j с помощью инструменты, которые поставляются с Windows.


мы с другом!

они могут работать, но neo4j довольно явно в их руководстве:

напротив, копирование и вставка баз данных файловой системы не поддерживается [1]

так! Ваш путь установки neo4j имеет папку bin. В нем, у вас есть neo4j.bat и neo4j-admin.bat. Вы можете использовать их для остановки базы данных, дампа базы данных поддерживаемым способом и запуска резервной копии базы данных.

  • убедитесь, что neo4j*.bat файлы знают, где ваш java есть. Например, используя метод установки chocolatey по умолчанию, вы можете иметь эту структуру файлов 'C:\tools\neo4j-community\neo4j-community-VERSION\java\jdkVERSION'. Задать переменной JAVA_HOME переменная по мере необходимости окружающей среды. например, в PowerShell, $ENV:JAVA_HOME = 'C:\tools\neo4j-community\neo4j-community-VERSION\java\jdkVERSION'
  • проверьте, если это сработало! C:\tools\neo4j-community\neo4j-community-3.2.3\bin\neo4j-admin.bat help. Если это не удалось, вы получите сообщение об ошибке, говорящее что-то вроде Invoke-Neo4jAdmin : Could not find java at...
  • он работал? Остановите службу, создайте резервную копию, запустите службу.

вот супер простой пример; вы хотели бы проверить пути, добавить ошибку обращение и так далее.

$ENV:JAVA_HOME = 'C:\tools\neo4j-community\neo4j-community-VERSION\java\jdkVERSION'
C:\tools\neo4j-community\neo4j-community-VERSION\bin\neo4j.bat stop
C:\tools\neo4j-community\neo4j-community-VERSION\bin\neo4j-admin.bat dump --database graph.db --to=C:\temp\neo4j.dump
C:\tools\neo4j-community\neo4j-community-VERSION\bin\neo4j.bat start

этот код может измениться, если у вас есть пробелы в вашем пути, среди прочих отклонений среды...

удачи!