目的: 用於社交關係的管理和維護. 社交關係是一種網狀的關係圖, RDBMS難於維護這樣的數據.
須要知足下面幾個條件java
neo4j-apoc-procedures
插件安裝 APOC插件mysql
設置一下環境變量git
NEO4J_INSTALL_PATH=/path/to/neo4j
安裝插件和JDBC驅動
把mysql-connector-java-8.0.11.jar複製到Neo4j安裝目錄中的plugins
子目錄下.github
cp mysql-connector-java-8.0.11.jar $NEO4J_INSTALL_PATH/plugins
重啓Neo4jsql
使用 apoc.load.driver
存儲過程加載驅動數據庫
call apoc.load.driver('com.mysql.jdbc.Driver')
執行MySQL查詢, 並在Neo4j建立節點(頂點)和關係(邊)服務器
CALL apoc.load.jdbc( 'jdbc:mysql://localhost/db?user=root&password=root&useUnicode=true&characterEncoding=utf8', 'select * from users_copy' ) YIELD row CREATE (n:User {uuid: row.uuid, user_id: row.user_id, name: row.name})
說明: 調用 apoc.load.jdbc 存儲過程鏈接到MySQL服務器, 數據庫名稱爲 db, 用戶名和密碼都爲 root, 鏈接到數據庫後執行查詢select * from users
, 針對結果集的每一行, 產生一個 user 變量. 針對每一個 user 變量, 執行 Cypher 語句:CREATE (n:User {name: user.name})
把 User 節點插入到 Neo4j 中
若是出現以下錯誤:ide
No suitable driver found for jdbc:mysql://localhost:3306/db?user=root&password=root
須要檢查:ui
Neo4j 支持各類類型的數據源, 包括數據庫, JSON, ElasticSearch, XML等. 參考APOC User Guide 的 Data Integration 章節.spa