故障诊断——neo4j入门

发布于:2025-03-13 ⋅ 阅读:(15) ⋅ 点赞:(0)

文章目录

neo4j

QuickStart

详情可见博客:https://www.cnblogs.com/nhdlb/p/18703804,使用docker拉取最近的一个版本进行创建

docker run -it -d -p 7474:7474 -p 7687:7687 \
-v /disk5/neo4j_docker/data:/data \
-v /disk5/neo4j_docker/logs:/logs \
-v /disk5/neo4j_docker/conf:/var/lib/neo4j/conf \
-v /disk5/neo4j_docker/import:/var/lib/neo4j/import \
-v /disk5/neo4j_docker/plugins:/var/lib/neo4j/plugins \
-e NEO4J_AUTH=neo4j/password \
--name neo4j neo4j:5.26.2

docker参数含义解释:

-p 7474:7474  宿主机端口映射,7474端口为Neo4j界面访问端口
-p 7687:7687  宿主机端口映射,7687端口为后台API接口访问端口
-v /home/neo4j/data:/data  宿主机目录挂载,将Neo4j存储数据挂载到宿主机目录
-v /home/neo4j/logs:/logs  宿主机目录挂载,将Neo4j运行日志挂载到宿主机目录
-v /home/neo4j/conf:/var/lib/neo4j/conf  宿主机目录挂载,将Neo4j配置文件挂载到宿主机目录
-v /home/neo4j/import:/var/lib/neo4j/import  宿主机目录挂载,将Neo4j数据导入目录挂载到宿主机目录
-v /home/neo4j/plugins:/var/lib/neo4j/plugins  宿主机目录挂载,将Neo4j插件安装目录挂载到宿主机目录
-e NEO4J_AUTH=neo4j/password  配置Neo4j的登录密码,用户名必须是neo4j,密码可以自定义

启动后直接浏览器访问webui界面即可,ip:7474/browser/,用户名:neo4j,密码:password

Demo

详情可见b站:https://www.bilibili.com/video/BV13K4y187b4

image-20250312203448603

信息补充:

华工科技 湖北 深交所
安琪酵母 湖北 上交所
国信证券 广东 深交所
中科创达 北京 深交所
招商银行 深圳 上交所
  • 创建单个节点

    create(variable:lable{key1:value1,key2:value2}) return variable
    
    create(n:Stock {name:'安琪酵母',code:'600298',lauchDate:date('2000-08-18')}) return n
    
  • 创建多个节点:股票、交易所、省市标签

    create(variable:lable{key1:value1,key2:value2}),(:lable{key1.1:value1.1,key2.1:value2.1}) return variable
    
    // 创建股票节点
    create(n:Stock {name:'安琪酵母',code:'600298',lauchDate:date('2000-08-18')}), (n:Stock {name:'安招商银行',code:'600036',lauchDate:date('2002-08-09')})return n
    // 创建交易所节点
    create(n:SecuritiesExchange{name:'上海证券交易所'}),(:SecuritiesExchange{name:'深圳证券交易所'})return n;
    // 创建省市节点
    create(n:Province{name:'湖北'}),(:Province{name:'北京'}),(:Province{name:'广东'})return n;
    
  • 建立关系:股票和省市、股票、交易所关系

    match(a:lable1),(b:lable2)
    where a.name ='value1' and b.name='value3'
    create (a)-[r:relationship]->(b) return r
    
    // 创建股票和交易所关系
    match(a:Stock),(b:SecuritiesExchange)
    where a.name = '安琪酵母' and b.name='上海证券交易所'
    create (a)-[r:Exchange]->(b) return r
    // 创建股票和省市名称关系
    MATCH(a: Stock) ,(b: Province)
    WHERE a.name='安琪酵母' AND b.name='湖北'
    CREATE (a)-【r:Area】->(b) RETURN r
    
  • 查询节点和关系

    match(a:variable)
    where a.name = 'key1'
    return a
    
    // 查询某个股票的节点
    match(a:Stock)
    where a.name = '安琪酵母'
    return a
    
  • 查询某个标签下所有节点

    // 查询股票标签下所有节点
    match(a:Stock)
    return a
    
  • 查询两个节点之间的关系

    // 查询两个具体节点的关系
    match(:Stock{name:'安琪酵母'})-[r]->(:Province{name:'湖北'}) return r
    
  • 查询关系的类型

    // type获取某个节点所有关系的类型
    match(:Stock{name:'安琪酵母'})-[r]->()
    return type(r)
    
  • 删除两个节点的关系

    // 删除两个节点的关系
    match (:Stock{name:'安琪酵母'})-[r]->(:Province{name:'湖北'}) delete r
    
  • 删除某个标签下所有的关系

    // 删除股票标签下所有的关系
    match(:Stock)-[r]->() delete r
    
  • 删除节点

    match(a:Stock)
    where a.name = '中科创达'
    delete a
    
    // 删除某个标签下的节点
    match(n:Stock)
    delete n
    
    // 删除所有节点
    match(n)
    delete n
    
  • 增加节点属性

    match(a:Stock)
    where a.name= '安琪酵母'
    set a.abbr = 'AQJM' return a
    
  • 删除节点属性

    match(a:Stock)
    where a.name='中科创达'
    remove a.abbr