Neo4j在線(全量/增量)和離線備份教程(含單機和集羣恢復教程)

    本文根據Neo4j3.5官方文檔編寫。主要介紹離線備份、單機/集羣恢復,在線全量/增量備份、單機/集羣恢復。

    說在前頭,Neo4j社區版僅支持離線備份,企業版才支持在線備份

    我用的社區版是3.5.8,企業版是3.5.7,默認數據爲graph.db

一、離線備份與恢復

    主要是用 neo4j-admin dump 和 neo4j-admin load 命令

1、備份命令

neo4j stop && neo4j-admin dump --database=graph.db --to=/backups/neo4j-`date "+%Y_%m_%d"`.dump && neo4j start

    --database  要備份的數據庫

    --to 備份路徑

2、恢復命令

    2.1 單機恢復

neo4j stop && neo4j-admin load --from=/backups/neo4j-`date "+%Y_%m_%d"`.dump --database=graph.db --force && neo4j start

    2.2 集羣恢復

    (1)關閉集羣所有實例

neo4j stop

    (2)解綁實例。每個集羣實例上都運行如下命令

neo4j-admin unbind --database=graph.db

    (3)恢復。每個集羣實例上都運行如下命令

neo4j-admin load --from=/backups/neo4j-`date "+%Y_%m_%d"`.dump --database=graph.db --force

    (4)開啓集羣內所有實例

neo4j start

二、在線備份與恢復

    主要是用 neo4j-admin backupneo4j-admin restore 命令

1、備份命令

    1.1 全量備份

neo4j-admin backup --backup-dir=/backups/ --name=neo4j-`date "+%Y_%m_%d"`.backup

    1.2 增量備份

neo4j-admin backup --backup-dir=/backups/ --name=neo4j-`date "+%Y_%m_%d"`.backup --fallback-to-full=true --check-consistency=true

2、恢復命令

    2.1 單機恢復

neo4j stop && neo4j-admin restore --from=/backups/neo4j-***.backup --database=graph.db --force && neo4j start

    2.2 集羣恢復

    (1)關閉集羣所有實例

neo4j stop

    (2)解綁實例。每個集羣實例上都運行如下命令

neo4j-admin unbind --database=graph.db

    (3)恢復。每個集羣實例上都運行如下命令

neo4j-admin restore  --from=/backups/neo4j-***.backup --database=graph.db --force

    (4)開啓集羣內所有實例

neo4j start

總結

1、 離線備份產生的是dump後綴的文件,不能直接打開可讀;而在線備份產生的是和neo4j/data/databases/***.db內容一樣的文件夾,可以直接看文件夾結構

2、在線備份的增量其實是檢測備份目錄有沒有同名的備份文件,有則追加數據至該文件夾,沒有就全量一份。

3、在線備份可以通過添加參數--from ip:端口,  從而實現遠程在線備份

4、遠程在線備份時,只要有neo4j-admin工具即可備份,無需啓動實例。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章