文档说明
虽然Neo4j-ETL提供了很简便的界面导入功能,但是无法进行定时同步,实际生产中还是使用命令行导入的情况较多,官方文档写的混乱很难通过看它配置成功,故写此文档进行详细说明,此文档主要说明Neo4j-ETL的安装及操作说明。
软件下载及安装
Neo4j Desktop
下载地址
应用安装
注意:此应用要求JDK11以上版本环境,安装前需部署JDK环境
按照安装引导一步步安装即可,安装完成后第一次启动应用时会提示输入验证码。直接输入如下验证码即可,其它信息不用填写。
eyJhbGciOiJQUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6Inp5cDMwN0BxcS5jb20iLCJtaXhwYW5lbElkIjoiMTg2NDljM2YzMDg1LTBmNmM0MTA0NjZkZGQzLTNlNjA0ODA5LTEwMDIwMC0xODY0OWMzZjMwOTI3YiIsIm1peHBhbmVsUHJvamVjdElkIjoiNGJmYjI0MTRhYjk3M2M3NDFiNmYwNjdiZjA2ZDU1NzUiLCJvcmciOiJpdGR2IiwicHViIjoibmVvNGouY29tIiwicmVnIjoiemhhbmcgeXVucGVuZyIsInN1YiI6Im5lbzRqLWRlc2t0b3AiLCJleHAiOjE3MDc4MjA4MDQsInZlciI6IioiLCJpc3MiOiJuZW80ai5jb20iLCJuYmYiOjE2NzYyODQ4MDQsImlhdCI6MTY3NjI4NDgwNCwianRpIjoibV92dkctdnlaIn0.vc_SOmnrcgk6ePGm6x6KVDT1TI0FU-dvGskhkGAdjiuPSTi4-whTsmp1YS9AAMPCB9r7R-gHXz9r-6PqyMo2x0ZasOwENQOQfQMd7t5-q2T9LJ5iqlqCizntYS4b6v-EA32G8W47FTqbJaQPHSeT212MrPlHxxBBNk3VD-2-GxpCdfOmWY9Us2odZRGmcs8Gl5ocbyUhG6nG9XnnxzFVC3efYSADzEZonm1NlUAsUZIMxbRCGSWV3W_g60ToN4isho_tpnmw6Kehq4_Wa0jCiOn5R3KO-A0FgSiy_oOo0aQnwRqYOOXNMa2X1pmkU1VNeLqbeSud4-2L9TARJtPvHw
neo4j-etl-cli
下载地址
https://github.com/neo4j-contrib/neo4j-etl/releases/latest
应用安装
完成下载后,将文件包上传至linux服务器,解压后即可直接使用。注意当需要连接指定数据库时需将相应库jdbc驱动包放置到lib目录下。
生成mapping文件
Neo4j Desktop创建远程Neo4j库连接
启动Neo4j Desktop。
连接远程Neo4j
创建连接后,点击connect按钮,连接远程库。
打开Neo4j-ETL-Tool
新增数据库连接
点击ADD CONNECTION按钮,新增数据库连接
填写数据库连接信息后,执行TEST AND SAVE CONNECTION
选择源数据库和Neo4j库
选择指定源数据库及Neo4j库,点击START MAPPING按钮,生成MAPPING。
配置映射导入数据
配置映射
生成关系
如需创建关系,则需在源库中创建关系表,关系表中有其他两表的主键,并创建与其它两表的外键,当导入时会自动带出关系。
导入数据
选择需导入的Neo4j目标库及导入模式,单次提交行数等,点击IMPORT DATA进行数据导入。
通过日志查找json文件
找到以上两文件上传至linux服务器Neo4j-ETL-Tool-Cli,供后期命令行导入使用。
编辑命令行启动任务
复制日志启动命令
修改成linux启动命令
/opt/neo4j-etl-cli-1.6.0/bin/neo4j-etl export --mapping-file "/opt/neo4j-etl-cli-1.6.0/job/test_test/mysql_test_test_mapping.json" --rdbms:password "11111" --rdbms:user "root" --rdbms:url "jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&autoReconnect=true&useSSL=false&useCursorFetch=true&allowPublicKeyRetrieval=true" --options-file "/opt/neo4j-etl-cli-1.6.0/job/test_test/import-tool-options.json" --using "cypher:fromSQL" --unwind-batch-size 1000 --tx-batch-size 10000 --neo4j:url "bolt://192.168.11.11:7687" --neo4j:user "neo4j" --neo4j:password "mima"
配置调度任务
在调度系统中配置shell脚本任务,设置定时执行,定时将数据导入Neo4j。