neo4j導入導出方法

在 Neo4j 中,如果需要將數據從 一個環境導出,再 導入到另一個環境(如從開發環境遷移到生產環境),可以通過以下方法實現:


方法 1:使用 neo4j-admin 導出和導入(完整數據庫遷移)


一、全庫導出與導入(neo4j-admin

1. 導出數據(源環境)
# 1. 停止 Neo4j 容器
docker-compose stop neo4j# 2. 執行導出(生成 `neo4j.dump`)
docker-compose run --rm neo4j \neo4j-admin database dump neo4j \--to-path=/var/lib/neo4j/backups/# 3. 從容器復制備份文件到宿主機
docker cp neo4j:/var/lib/neo4j/backups/neo4j.dump ./backups/# 4. 重啟 Neo4j(可選)
docker-compose start neo4j
2. 導入數據(目標環境)
# 1. 將 `neo4j.dump` 復制到目標機的掛載目錄(如 `./backups/`)
scp ./backups/neo4j.dump user@target:/path/to/backups/# 2. 停止目標 Neo4j
docker-compose stop neo4j# 3. 執行導入(覆蓋現有數據)
docker-compose run --rm neo4j \neo4j-admin database load neo4j \--from-path=/var/lib/neo4j/backups/neo4j.dump \--force# 4. 重啟 Neo4j
docker-compose start neo4j
驗證數據
MATCH (n) RETURN count(n);  -- 檢查節點數量
SHOW CONSTRAINTS;          -- 驗證約束和索引


方法 2:使用 apoc.exportapoc.import(部分數據遷移)

適用于 導出特定數據(如子圖、CSV/JSON) 并導入到其他環境。

步驟 1:在源環境導出數據

(1)導出為 Cypher 腳本(包含節點和關系)
CALL apoc.export.cypher.all("export.cypher", {format: 'plain'});
  • 導出文件export.cypher(默認存儲在 /var/lib/neo4j/import/
(2)導出為 CSV/JSON
// 導出查詢結果為 CSV
CALL apoc.export.csv.query("MATCH (u:User) RETURN u.name AS name, u.age AS age","users.csv",{}
);// 導出查詢結果為 JSON
CALL apoc.export.json.query("MATCH (u:User) RETURN u","users.json",{}
);

步驟 2:將導出文件復制到目標環境

# 從容器復制到宿主機
docker cp neo4j:/var/lib/neo4j/import/export.cypher ./backups/# 傳輸到目標機器
scp ./backups/export.cypher user@target-machine:/path/to/import/

步驟 3:在目標環境導入數據

(1)導入 Cypher 腳本
// 直接執行導出的 Cypher 腳本
CALL apoc.cypher.runFile("file:///export.cypher");
(2)導入 CSV/JSON
// 導入 CSV
LOAD CSV WITH HEADERS FROM 'file:///users.csv' AS row
CREATE (:User {name: row.name, age: toInteger(row.age)});// 導入 JSON
CALL apoc.load.json("file:///users.json") YIELD value AS row
CREATE (u:User) SET u = row;

方法 3:使用 Neo4j 瀏覽器導出 & 導入

(1)在源環境導出數據

  1. 打開 Neo4j 瀏覽器(http://localhost:7474)。
  2. 執行查詢(如 MATCH (n) RETURN n)。
  3. 點擊 “Export” 按鈕,選擇 CSV/JSON 格式下載。

(2)在目標環境導入數據

  1. 將下載的文件放入目標 Neo4j 的 import 目錄。
  2. 使用 LOAD CSVapoc.load.json 導入(參考方法 2)。

對比不同方法

方法適用場景優點缺點
neo4j-admin dump/load全庫遷移完整備份,包含索引/約束需停機
apoc.export/import部分數據遷移靈活,可導出子圖需手動處理索引
Neo4j 瀏覽器導出簡單查詢導出無需命令行僅適合小數據量

注意事項

  1. 版本兼容性:確保源和目標 Neo4j 版本一致,否則 neo4j-admin 可能不兼容。
  2. 文件權限:確保目標 Neo4j 有權限讀取導入文件。
  3. APOC 插件:目標環境需安裝相同版本的 APOC。

總結

  • 全庫遷移 → 用 neo4j-admin dump/load(最可靠)。
  • 部分數據遷移 → 用 apoc.export + LOAD CSV/apoc.import
  • 簡單數據導出 → 用 Neo4j 瀏覽器 + CSV/JSON。

按需選擇方法即可!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/93610.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/93610.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/93610.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Diamond基礎2:開發流程之LedDemo

文章目錄1.關聯VS Code2.Diamond工程目錄3.Led Demo開發流程4.燒寫bit文件5.傳送門1.關聯VS Code 和Vivado一樣,Diamond也可以使用第三方的編輯器,VS Code編輯器因為可以安裝各種插件,并且對verilog開發的支持也算完善,所以很受歡…

Golang 后臺技術面試套題 1

文章目錄1.網絡1.1 瀏覽器從輸入網址到展示頁面,描述下整個過程?1.2 HTTP 502,503 和 504 是什么含義?區別以及如何排查?1.3 HTTPS 通信過程為什么要約定加密密鑰 code,用非對稱加密不行嗎?1.4 …

【科研繪圖系列】R語言繪制蝶形條形圖蝶形柱狀堆積圖

文章目錄 介紹 加載R包 數據下載 導入數據 數據預處理 畫圖 系統信息 參考 介紹 【科研繪圖系列】R語言繪制蝶形條形圖&蝶形柱狀堆積圖 加載R包 library(tidyverse) library(ggsignif) library(RColorBrewer) library(dplyr) library(reshape2) library(grid

Jeecg后端經驗匯總

Jeecg是一個不錯的低代碼平臺,極大的降低了很多開發人員接私活的難度,也極大的降低了開發全套功能的難度。但是一碼歸一碼,開發人員的水平很一般,如下:(1)普通用戶可以修改管理員密碼&#xff0…

ethernet_input到應用層處理簡單分析

1、驅動層:從硬件讀取數據并構造pbuf中斷觸發后,驅動層的接收任務(或輪詢函數)會從網卡硬件讀取數據,并將其封裝為 LWIP 可識別的pbuf結構體(LWIP 的數據緩沖區)。關鍵函數:驅動自定…

C#WPF實戰出真汁05--左側導航

1、左側導航設計要點清晰的信息架構 確保導航結構層次分明,主分類與子分類邏輯清晰,避免過度嵌套。使用分組、縮進或分隔線區分不同層級,保持視覺可讀性。直觀的圖標與標簽 為每個導航項搭配簡潔的圖標,強化視覺識別。標簽文字需簡…

大模擬 Major

題目來源:2025 Wuhan University of Technology Programming Contest 比賽鏈接:Dashboard - 2025 Wuhan University of Technology Programming Contest - Codeforces 題目大意: 模擬 16 支隊伍的瑞士輪比賽結果,規則太多&…

【手撕JAVA多線程】1.從設計初衷去看JAVA的線程操作

目錄 前言 概述 主動阻塞/喚醒 代碼示例 實現 為什么必須在同步塊中使用 計時等待是如何實現的 被動阻塞/喚醒 為什么要有被動阻塞/喚醒 實現(鎖升級) 前言 JAVA多線程相關的內容很多很雜,但工作中用到的頻率不高,用到…

UE5多人MOBA+GAS 46、制作龍卷風技能

文章目錄創建龍卷風GA創建蒙太奇創捷一系列GE添加數據表添加到角色中創建龍卷風GA GA_Tornado 添加標簽 // 龍卷風冷卻CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Ability_Tornado_Cooldown)// 通用技能傷害CRUNCH_API UE_DECLARE_GAMEPLAY_TAG_EXTERN(Ability_Generic_Dama…

如何在ubuntu下安裝libgpiod庫

以下是關于如何在ubuntu下安裝libgpiod庫的兩種安裝方式以及遇到ubuntu存在多個工具鏈導致編譯失敗的解決方法。如果想要自由選擇使用不同版本的libgpiod,可以選擇手動編譯安裝方式,系統安裝默認1.6.3版本(ubuntu22.04)。手動編譯安裝1、在github上下載要…

qt vs2019編譯QXlsx

1、安裝ActivePerl2、打開pro文件,直接編譯即可第一個簡單實例:#include "xlsxcellrange.h" #include "xlsxchart.h" #include "xlsxchartsheet.h" #include "xlsxdocument.h" #include "xlsxrichstring.h…

計算機存儲器分類和層次結構詳解

存儲器是計算機系統的核心部件之一,其核心功能是存儲程序(指令)和數據,是馮諾依曼體系結構“存儲程序”概念的物質基礎。它直接關系到計算機系統的性能、容量和成本。 存儲器核心內容總覽表分類維度存儲器層級技術實現速度容量成本…

通過rss訂閱小紅書,程序員將小紅書同步到自己的github主頁

title: 通過rss訂閱小紅書,程序員將小紅書同步到自己的github主頁 tags: 個人成長 categories:雜談最近在做一些新的嘗試,把文本的內容轉化為漫畫和圖片,方便大眾閱讀,恰好小紅書很適合分發這些內容,于是我開通了小紅書…

麒麟KylinOS V10-SP3 安裝FastGPT

1. 操作系統環境CPU:20核 Xeon(R) Platinum 8457C 內存:64GB GPU:4090 操作系統:KylinOS-V10-SP32. 安裝docker、docker-compose、fastgpt下載安裝docker、docker-compose1. 下載docker docker 下載地址: https://do…

前端/在vscode中創建Vue3項目

Contenthtml input元素添加css樣式使用js添加交互按鈕點擊提示輸入框字符計數使用 npm 來管理項目包安裝 Node.js初始化項目安裝依賴包創建一個基于 Vite 的 Vue 項目創建項目進入項目目錄安裝依賴調用代碼格式化工具啟動開發服務器在瀏覽器中訪問html input元素 <input ty…

HiSmartPerf使用WIFI方式連接Android機顯示當前設備0.0.0.0無法ping通!設備和電腦連接同一網絡,將設備保持亮屏重新嘗試

在使用HiSmartPerf使用WIFI方式連接Android機時&#xff0c;如果出現無法ping通0.0.0.0的情況&#xff0c;可以嘗試以下步驟解決問題&#xff1a;問了一下AI&#xff0c;給出的解答如下&#xff1a; 檢查網絡連接 &#xff1a;確保設備和電腦連接到同一局域網的Wi-Fi。可以在手…

SpringWeb是什么東西?

SpringWeb是個什么東西&#xff1f;SpringWeb是一個Java開發Web項目時的Web層框架。所謂Web層&#xff0c;就是直接和用戶打交道的框架&#xff0c;用戶(User)也就是顧客&#xff0c;顧客就是上帝&#xff0c;我們說是Web項目&#xff0c;通常也就是說B/S架構的項目&#xff0c…

docker+nginx+keepalived+openappsec+web ui+crowdsec部署安全代理

docker+nginx+keepalived+openappsec+web ui+crowdsec部署安全代理 一、環境介紹 二、基礎環境安裝 1、優化系統參數 2、安裝docker 3、創建容器網絡 4、安裝測試容器(可選) 三、安裝nginx 1、拉取鏡像 2、創建映射目錄 3、準備默認配置文件 4、證書文件準備 5、啟動nginx容器…

自動駕駛中安全相關機器學習功能的可靠性定義方法

摘要當前標準無法涵蓋高自動化駕駛中基于機器學習功能的安全需求。由于神經網絡的不透明性&#xff0c;一些自動駕駛功能無法按照 V 模型進行開發。這些功能需要對標準進行擴展。本文聚焦這一空白&#xff0c;為這類功能定義了功能可靠性&#xff0c;以幫助未來的標準控制基于機…

css實現圓角+邊框漸變+背景半透明

ui小姐姐經常搞一些花里胡哨的東西&#xff0c;圓角邊框漸變背景半透明&#xff0c;雖然每個都可以弄&#xff0c;但是合在一起真的不好弄&#xff0c;主要是因為通過border–image設置的邊框漸變&#xff0c;無法使用圓角&#xff0c;下面是自己搜索整理的一些可以的方案。 方…