neo4j教程-安装部署
Neo4j的关键概念和特点
•Neo4j是一个开源的NoSQL图形存储数据库,可为应用程序提供支持ACID的后端。Neo4j的开发始于2003年,自2007年转变为开源图形数据库模型。程序员使用的是路由器和关系的灵活网络结构,而不是静态表,但是可以享受企业级质量数据库的所有好处。与关系数据库索引,对于许多应用程序,Neo4j可以提供数量级的性能优势。
•与传统的数据库按行,列和表排列数据不同,Neo4j具有灵活的结构,该结构由数据记录之间的存储关系定义。
•使用Neo4j,每个数据记录或节点都存储指向与其连接的所有节点的直接指针。由于Neo4j是围绕此简单而强大的优化设计的,因此与其他数据库相比,它以更快的速度和更大的深度执行复杂连接的查询。
•之所以说Neo4j是基于图形存储的数据库,是因为它可以有效地将属性图模型实施到存储级别。这就意味着数据存储方式与用户在图形构想上的存储方式是完全一致的,并且数据库使用指针来导航和遍历图形。
•Neo4j具有一些针对图形存储数据库所特有的功能,其中Cypher作为一种类似于SQL的声明性查询语言对图进行了优化。这种查询语言现在也在通过openCypher项目被其他数据库(如SAP HANA Graph和Redis graph)使用。
•由于Neo4j有效地表示了节点和关系,因此在深度和广度方面在大型的图中可以进行恒定时间遍历。在适度的硬件上可以扩展到数十亿个节点,更好的支持了大数据时代较大数据量的存储分析。
•Neo4j具有可以随时间适应的灵活的属性图架构,可以在后续实现中添加新的关系以实现捷径并在业务需求变化快时加速域数据的速度。
•Neo4j通过分片和联合查询扩展应用程序,以适应用户不断增长的业务需求。同时,该数据库具有细粒度的安全性,LDAP /目录服务,安全性日志记录等等。可以有效地确保数据安全。Neo4j的通用属性图模型使项目可以轻松地随着业务需求的变化而流畅地发展。其本机图形数据库为大型、互连的数据集上的多跳查询提供一致的实时性能。基于筏的因果群集,滚动升级,热备份等带来了高可用性。Neo4j包含功能强大的工具,可帮助开发人员有效地编写,分析和调试查询以及可视化和导航数据。
Neo4j的安装与配置
Neo4j是基于Java的图形数据库,运行Neo4j需要启动JVM进程,因此在安装Neo4j前必须安装JAVA SE的JDK。从Oracle官方网站下载Java SE JDK,地址为:https://www.oracle.com/cn/java/technologies/javase-downloads.html
Java JDK安装
1.双击.exe安装包(当前的最新版本)
2.根据向导安装
3.配置环境变量
- 编辑系统变量区的Path,点击新建,然后输入 %JAVA_HOME%\bin
4.测试
打开命令提示符CMD(WIN+R,输入cmd),输入 java -version,若提示Java的版本信息,则证明环境变量配置成功
Neo4j的安装和配置
1.下载安装包
官网下载地址:Neo4j Download Center - Graph Database & Analytics
本教程下载的是最新的:
2.解压安装包
Neo4j应用程序有如下主要的目录结构:
文件夹名称 | 相关说明 |
---|---|
bin | 存放Neo4j的可执行程序 |
conf | 存放Neo4j启动的相关配置文件 |
data | 存放Neo4j数据库的核心文件 |
lib | 存放Neo4j所依赖的jar包 |
logs | 存放Neo4j的日志文件 |
plugins | 存放Neo4j的插件 |
3.配置环境变量(和Java 环境变量设置步骤一致)
将下载的压缩文件解压到系统合适的位置后需要创建主目录环境变量NEO4J_HOME,变量值设置为主目录路径。图是主目录路径为D:\sorftware\neo4j-community-5.10.0的环境变量。
- 编辑系统变量区的Path,点击新建,然后输入 %NEO4J_HOME%\bin
4.其他配置
•Neo4j的配置文件存储在conf目录下,Neo4j通过配置文件neo4j.conf控制服务器的工作。默认情况下,不需要进行任意配置,就可以启动服务器。
•Neo4j的核心数据文件默认存储在data/graph.db目录中,要改变默认的存储目录,可以在配置选项更新。下面的代码展示了限定文件存储在data/graph.db目录中的指令。
dbms.active_database=graph.db
•数据库的安全验证默认是启用的,可以从配置选项中停用该内容。以下代码表示安全验证不启用。
dbms.security.auth_enabled=false
•在配置选项中还可以配置Java堆内存的大小。下列代码分别是配置Java堆内存的最大值和最小值。
dbms.memory.heap.initial_size=512m
dbms.memory.heap.max_size=512m
5.配置防火墙【能访问则不需要】
•Neo4j支持三种网络协议,分别是Bolt,HTTP和HTTPS,默认的连接器配置有三种,为了使用这三个端口,需要在Windows防火墙中创建Inbound Rules,允许通过端口7687,7474和7473访问本机。
•默认情况Neo4j只允许本地主机访问,如果希望通过网络远程访问择需要修改监听地址为0.0.0.0。以下指令更改监听地址为0.0.0.0
dbms.connectors.default_listen_address=0.0.0.0
•这之后连接各个网络协议的监听地址和端口。
dbms.connector.bolt.enabled=true
dbms.connector.bolt.listen_address=0.0.0.0:7687
dbms.connector.http.enabled=true
dbms.connector.http.listen_address=0.0.0.0:7474
dbms.connector.https.enabled=true
dbms.connector.https.listen_address=0.0.0.0:7473
启动neo4j
•以系统用户身份通过命令行neo4j.bat console运行Neo4j。
1)以管理员身份运行cmd
2)在命令行处输入neo4j.bat console
•把Neo4j安装为服务使用指令bin\neo4j install-service;卸载服务使用指令bin\neo4j uninstall-service。Neo4j服务的启动停止重启和查询状态分别使用指令start、stop、restart和status。
Neo4j服务器具有一个集成的浏览器,在一个运行的服务器实例上访问 “http://localhost:7474/”,打开浏览器,显示启动页面。
默认的用户名和密码均为neo4j
登录后需重置密码(至少八位)
Neo4j-web UI界面
Web UI界面主要是由四个部分组成,具体如下:
左侧
Web UI界面的左侧是一个工具栏面板,面板上有六个按钮,从上往下分别表示数据库、收藏、文档、云服务、浏览器设置、关于Neo4j。
顶部
WebUI界面的顶部是一个命令行输入框,用于执行相关命令或Cypher查询语句,命令行输入框右侧有三个按钮,分别表示收藏、清除和执行操作。
中部
Web UI界面的中间部分是Neo4j的主界面,一共包含三个模块,分别是Start Learning、Write Code、MonitorNeo4j,其中Start Learning用于学习和了解Neo4j的基本概念,Write Code用于创建官方引导实例,Monitor用于监控数据库的运行状态。
底部
WebUI界面的底部是Neo4j数据库连接的相关信息。
Web UI界面的中间部分是Neo4j的主界面,一共包含三个模块,分别是Start Learning、Write Code、MonitorNeo4j,其中Start Learning用于学习和了解Neo4j的基本概念,Write Code用于创建官方引导实例,Monitor用于监控数据库的运行状态。
底部
WebUI界面的底部是Neo4j数据库连接的相关信息。
至此,我们完成了基于Windows平台部署Neo4j数据库。