当前位置: 首页 > news >正文

neo4j教程-安装部署

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数据库。

相关文章:

neo4j教程-安装部署

neo4j教程-安装部署 Neo4j的关键概念和特点 •Neo4j是一个开源的NoSQL图形存储数据库,可为应用程序提供支持ACID的后端。Neo4j的开发始于2003年,自2007年转变为开源图形数据库模型。程序员使用的是路由器和关系的灵活网络结构,而不是静态表…...

网络面试合集

传输层的数据结构是什么? 就是在问他的协议格式:UDP&TCP 2.1.1三次握手 通信前,要先建立连接,确保双方都是在线,具有数据收发的能力。 2.1.2四次挥手 通信结束后,会有一个断开连接的过程&#xff0…...

java+springboot+mysql智慧办公OA管理系统

项目介绍: 使用javaspringbootmysql开发的智慧办公OA管理系统,系统包含超级管理员,系统管理员、员工角色,功能如下: 超级管理员:管理员管理;部门管理;职位管理;员工管理…...

【教程】Tkinter实现Python软件自动更新与提醒

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 文件下载:https://download.csdn.net/download/sxf1061700625/88134425 示例演示: 参考代码: import os import _thread import shutil import subprocess import sys import …...

音频深度学习变得简单:自动语音识别 (ASR),它是如何工作的

一、说明 在过去的几年里,随着Google Home,Amazon Echo,Siri,Cortana等的普及,语音助手已经无处不在。这些是自动语音识别 (ASR) 最著名的示例。此类应用程序从某种语言的语音音频剪辑开始&…...

反射简述

什么是反射反射在java中起到什么样的作用获取class对象的三种方式反射的优缺点图 什么是反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性&…...

Kotlin泛型的协变与逆变

以下内容摘自郭霖《第一行代码》第三版 泛型的协变 一个泛型类或者泛型接口中的方法,它的参数列表是接收数据的地方,因此可以称它为in位置,而它的返回值是输出数据的地方,因此可以称它为out位置。 先定义三个类: op…...

【后端面经】微服务构架 (1-6) | 隔离:如何确保心悦会员体验无忧?唱响隔离的鸣奏曲!

文章目录 一、前置知识1、什么是隔离?2、为什么要隔离?3、怎么进行隔离?A) 机房隔离B) 实例隔离C) 分组隔离D) 连接池隔离 与 线程池隔离E) 信号量隔离F) 第三方依赖隔离二、面试环节1、面试准备2、基本思路3、亮点方案A) 慢任务隔离B) 制作库与线上库分离三、章节总结 …...

复习之kickstart无人职守安装脚本

一、kickstart简介 kickstart是红帽发行版中的一种安装方式,它通过以配置文件的方式来记录linux系统安装的各项参数和想要安装的软件。只要配置正确,整个安装过程中无需人工交互参与,达到无人值守安装的目的。 二、kickstar文件的生成 进入/…...

CSS动画——实现波浪摇摆效果...

一、效果展示 以下主要实现四个动画: 元素上下摇摆动画波浪上下摇摆动画气泡上升及消失动画连续气泡右飘动画 二、实现思路 这里主要讲一下波浪上下摇摆动画和连续气泡右飘动画的实现思路 这里拿一张波浪图来举例解释实现波浪动画的思路: 波浪的摇…...

【MyBatis学习】Spring Boot(SSM)单元测试,不用打包就可以测试我们的项目了,判断程序是否满足需求变得如此简单 ? ? ?

前言: 大家好,我是良辰丫,在上一篇文章中我们学习了MyBatis简单的查询操作,今天来介绍一下Spring Boot(SSM)的一种单元测试,有人可能会感到疑惑,框架里面还有这玩意?什么东东呀,框架里面是没有这的,但是我们简单的学习一下单元测试,可以帮助我们自己测试代码,学习单元测试可以…...

JavaScript 类

本文内容学习于:后盾人 (houdunren.com) 1.可以使用类声明和赋值表达式定义类,推荐使用类声明来定义类 //类声明 class User {} console.log(new User()); //赋值表达式定义类 let Article class {}; console.log(new Article()); //类方法间不需要逗号…...

SpringBoot的static静态资源访问、参数配置、代码自定义访问规则

目录 1. 静态资源1.1 默认静态资源1.2 Controller高优先级1.3 修改静态资源的URL根路径1.4 修改静态资源的目录1.5 访问webjars依赖包的静态资源1.6 静态资源的关闭1.7 静态资源在浏览器的缓存1.8 静态资源实战1.9 通过代码自定义静态资源访问规则 1. 静态资源 查看源码如下&a…...

IO进、线程——线程(线程的创建、线程的退出、线程的回收、线程的分离和多线程并发编程)

线程 并发执行的轻量级进程 进程是资源分配的最小单位,线程是任务调度的最小单位 线程是进程的一部分,是任务调度的最小单位。一个进程可以包含多个线程,这些线程可以并发执行,共享进程的资源,但每个线程都有自己的…...

neo4j教程-Cypher操作

Cypher基础操作 Cypher是图形存储数据库Neo4j的查询语言,Cypher是通过模式匹配Neo4j数据库中的节点和关系,从而对数据库Neo4j中的节点和关系进行一系列的相关操作。 下面,通过一张表来介绍一下常用的Neo4j操作命令及相关说明,具…...

秋招算法备战第31天 | 贪心算法理论基础、455.分发饼干、376. 摆动序列、53. 最大子序和

贪心算法理论基础 贪心算法并没有固定的套路,唯一的难点就是如何通过局部最优,推出整体最优。如何验证可不可以用贪心算法呢?最好用的策略就是举反例,如果想不到反例,那么就试一试贪心吧。刷题或者面试的时候&#xf…...

页面生成图片或PDF node-egg

没有特别的幸运,那么就特别的努力!!! 中间件:页面生成图片 node-egg 涉及到技术node egg Puppeteer 解决文书智能生成多样化先看效果环境准备初始化项目 目录结构核心代码 完整代码https://gitee.com/hammer1010_ad…...

go常用知识点

go env -w GO111MODULEon go env -w GOPROXYhttps://goproxy.cn,direct 打包一个目录下的多个包时 go build ./… go install ./… 测试时,命令行:go test . //目录下所有单元测试都会执行 go test -v 目录 //测试覆盖率 go test -cover //使用cove…...

ComPDFKit PDF SDK(支持Web、Android、IOS、Windows、Server、API、跨平台)

1. SDK、API是什么? SDK是软件开发工具包的缩写,指的是一组用于开发软件应用的工具、库和文档。SDK包含一系列的函数、类和方法,开发人员可以使用这些工具和资源来开发、测试和部署应用程序。SDK可以提供各种功能和技术支持,如图…...

使用maven容器打包java项目

docker run --rm -v /path/to/your/microservice:/app -w /app maven:latest mvn clean package 解释一下上面的命令: docker run:运行Docker容器。--rm:在容器运行结束后自动删除容器,避免堆积未使用的容器。-v /path/to/you…...

Linux调试信息双输出:script与tee工具详解

1. Linux调试信息双输出方案概述在Linux系统开发过程中,调试信息的输出管理是每个开发者都会遇到的常规需求。默认情况下,使用printf等函数输出的调试信息会直接显示在终端(标准输出stdout)上。但在实际开发场景中,我们…...

VMware 虚拟机 Kali Linux 光标消失?五步实操攻略轻松找回

在 VMware Workstation Pro 中运行 Kali Linux 时,不少用户会遇到 “光标隐形” 的棘手问题 —— 系统可正常操作,但光标一进入虚拟机窗口就消失。这一现象多由硬件兼容性、驱动配置或增强工具缺失导致,并非硬件故障。本文整合社区实测有效方…...

企业开始用 AI 后,最容易被忽略的其实是这件事!

这两年,越来越多企业开始尝试把 AI 用到日常办公中。从写邮件、整理纪要,到查询知识库、生成文档,AI 正在从个人工具变成企业工作的一部分。但很多企业在推进 AI 时,首先关注的往往是功能和效率,比如“能不能写”“能不…...

深入解析 Android 开发高级工程师:职责、技能与面试精要

在移动互联网时代,Android 平台作为全球最大的移动操作系统之一,其应用开发人才的需求持续旺盛。对于追求技术深度和业务影响力的开发者而言,进阶成为 Android 开发高级工程师是一个重要的里程碑。这不仅要求开发者具备扎实的编码功底和丰富的项目经验,更需要其在架构设计、…...

前端微前端架构:大项目的救命稻草还是自找麻烦?

前端微前端架构:大项目的救命稻草还是自找麻烦? 毒舌时刻 微前端?听起来就像是一群前端工程师为了显得自己很高级,特意发明的复杂术语。不就是把一个大应用拆成几个小应用嘛,至于搞得这么玄乎吗? 你以为拆成…...

TransCAD新手必看:如何用表格链接快速创建矩阵OD并生成期望线(附详细步骤图)

TransCAD实战指南:从表格链接到期望线可视化的全流程解析 引言 在交通规划与空间分析领域,TransCAD作为一款专业的GIS软件,其强大的数据处理和可视化能力一直备受推崇。对于初学者而言,掌握表格链接创建矩阵OD并生成期望线的技巧&…...

KingbaseES V008R006C008B0014物理备份实战:sys_rman从配置到自动化的完整避坑指南

KingbaseES物理备份实战:从sys_rman配置到自动化运维的深度解析 凌晨三点,数据库告警铃声突然响起——某核心业务系统的KingbaseES实例因磁盘故障导致数据丢失。此时,一个配置得当的sys_rman物理备份系统将成为最后的救命稻草。不同于简单的操…...

Qwen-Image-Edit-F2P在Vue前端项目中的可视化应用

Qwen-Image-Edit-F2P在Vue前端项目中的可视化应用 1. 引言 想象一下这样的场景:用户上传一张简单的人脸照片,几秒钟后就能看到自己穿着优雅礼服站在巴黎街头,或是化身古风侠客执剑而立。这种曾经只存在于科幻电影中的体验,现在通…...

【技术突破】douyin-downloader:重新定义抖音内容采集效率的智能引擎

【技术突破】douyin-downloader:重新定义抖音内容采集效率的智能引擎 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser …...

OpenStack Train版三节点部署全攻略:从CentOS 7.6配置到Dashboard上线

OpenStack Train版三节点部署实战:从CentOS 7.6到Dashboard的完整指南 当企业需要构建私有云平台时,OpenStack作为最成熟的开源IaaS解决方案之一,其灵活性和可扩展性备受青睐。本文将带您完成一个生产级的三节点OpenStack Train版部署&#x…...