1.Neo4j简介
Neo4j是一个高性能的、NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下,而不是严格、静态的表中,但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。Neo4j是基于Java的图形数据库,运行Neo4j需要启动JVM进程,因此必须安装JDK1.8及以上版本。
Neo4j分为Neo4j分社区版(Community Edition)和企业版(Enterprise Edition),社区版为免费版本。Neo4j社区版和企业版在功能上没有本质区别,主要区别在如下几点:
1)容量:社区版最多支持 320 亿个节点、320 亿个关系和 640 亿个属性,而企业版没有这个限制。
2)并发:社区版只能部署成单实例,不能做集群。而企业版可以部署成高可用集群或因果集群,从而可以解决高并发量的问题。
3)容灾:由于企业版支持集群,部分实例出故障不会影响整个系统正常运行。
4)热备:社区版只支持冷备份,即需要停止服务后才能进行备份,而企业版支持热备,第一次是全量备份,后续是增量备份。
5)性能:社区版最多用到 4 个内核,而企业能用到全部内核,且对性能做了精心的优化。企业版的性能大概是社区版的2~4倍。
6)支持:企业版客户能得到 5X10 电话支持(Neo4j 美国电话、邮件,微云数聚电话、微信、邮件)。
教程:https://www.w3cschool.cn/neo4j/
2.下载安装
1.下载地址:
Neo4j 国内:http://we-yun.com/index.php/blog/releases-56.html
Neo4j 官方:https://neo4j.com
2.解压
# 国内下载解压命令 使用-zxvf会报错
tar -xvf neo4j-community-3.4.5-unix.tar.gz
3.修改配置
在安装目录下找到conf目录下的neo4j.conf文件,修改相应配置如下
vim neo4j.conf
# 开启后可远程通过ip访问neo4j数据库
dbms.connectors.default_listen_address=0.0.0.0
# 默认端口 bolt是7687 http是7474 https是7473 没有特殊要求可以不修改
dbms.connector.bolt.listen_address=:7687
dbms.connector.http.listen_address=:7474
dbms.connector.https.listen_address=:7473
4.启动及其他命令
进入bin目录执行执行如下命令
# 后台启动:
./neo4j start
# 查看状态:
./neo4j status
# 停止:
./neo4j stop
# 重启:
./neo4j restart
5.客户端访问
http://host:7474/browser/
Host中输入:bolt://host:7687
第一次访问图数据库所在的机器上的7474端口时,账号neo4j,密码neo4j,会提示修改初始密码。
3.其他配置
vi /etc/rc.d/rc.local
# 在文件最后添加如下命令行:
/安装路径/bin/neo4j start
# rc.local需设置可执行权限
4.创建一个实例
-- 创建节点 CREATE (<node-name>:<label-name>)
CREATE (emp:Employee)
CREATE (dept:Dept)
创建具有属性的节点
CREATE (
<node-name>:<label-name>
{
<Property1-name>:<Property1-Value>
........
<Propertyn-name>:<Propertyn-Value>
}
)
CREATE (dept:Dept { deptno:10,dname:"Accounting",location:"Hyderabad" })
CREATE (emp:Employee{ id:123,name:"Lokesh",sal:35000,deptno:10 })
关系
MATCH (emp:Employee {id:123}) , (dept:Dept{deptno:10})
CREATE (emp)-[relation:WORKING_FOR ]->(dept)