文章目录
neo4j
默认密码
windows-community安装
解压和设置NEO4J_HOME就可以了
set NEO4J_ACCEPT_LICENSE_AGREEMENT=yes
set NEO4J_ACCEPT_LICENSE_AGREEMENT=eval
windows-desktop安装和新建database
前置:安装前先删干净
https://blog.youkuaiyun.com/qq_40808877/article/details/133968674
卸载不彻底
C:\Users\xxxxxx.Neo4jDesktop
C:\Users\xxxxxx.Neo4jDesktop\persist
都删了
Desktop版官网安装教程
官网下载的时候会有一个activation key
然后添加一个database
设置下数据库名和密码,我这里设置的数据库是test,密码是rootroot。
建好就可以start了。start会慢一点。
启动好后可以打开浏览页面。直接open
http://localhost:7474是http协议的url
bolt://localhost:7687是bolt协议。
进入http://localhost:7474后输入用户密码,用户名是neo4j,密码是刚刚设置的数据库密码。
linux-community安装(命令行)和新建database
主要问题在于我在linux服务器上没有管理员权限,安装有点别扭。
官网安装教程
具体流程:
先在官网下载对应的文件(linux版)
下载链接
我下的文件版本是neo4j-community-5.21.2,解压一下:tar zxf neo4j-community-5.21.2
设置下环境变量,把解压后的neo4j-community-5.21.2/bin放到环境变量的path里。
neo4j的启动和停止
启动:neo4j start
console启动:neo4j console
查看运行状态:neo4j status
停止:neo4j stop
csdn上新建database的做法
stackoverflow上新建database的做法
两者是一样的,很暴力,但是好像只能这样。。
具体做法:
安装目录里找到conf/neo4j.conf
中的dbms.active_database=neo4j
并修改neo4j为新建的数据库名称,然后重启neo4j。
如果找不到,就自己添加。就可以新建database。
可能遇到的问题
遇到问题的时候命令里添加--verbose
查看下报错。
Q1 端口被占用?
报错neo4j aused by: io.netty.channel.unix.Errors$NativeIoException: bind(..) failed: Address already in use
解决办法:netstat -tuln | grep <端口号>
或者lsof -i:<端口号>
根据报错查看占用的端口,然后杀掉占端口的进程
Q2 转发远程服务器端口号本地端口,从而在本地查看browser
报错WebSocket connection failure. Due to security constraints in your web browser, the reason for the failure is not available to this Neo4j Driver
参考做法(失败)
上述做法是在conf配置里取消一行内容的注释,但是我这版的conf根本没有这行内容。硬添加会报错。
参考做法(成功)
远程服务器端口的7474(http)和(7687)端口都要转发。
尝试了下,需要端口原封不动的转发(即,不能把7474端口转发到7475)。
错误:ssh -R 7475:localhost:7474 -N <本地计算机账号名>@<本地计算机ip>
正确:ssh -R 7474:localhost:7474 -N <本地计算机账号名>@<本地计算机ip>
Q3 输错密码太多次超时
报错Security.AuthenticationRateLimit: The client has provided incorrect authentication details too many times in a row.
https://github.com/neo4j/docker-neo4j/issues/385
只能多等等了。。。等时间过了再回来试试。
python使用
Bolt 协议是一种二进制协议,性能比Http更好。数据多并发强的时候Bolt。 数据少、性能要求不高、查询简单用Http。
参考
照上面参考的使用就可以了,windows和linux两版的连接都没有问题。
密码都设置了rootroot。
neo4j用的cypher查询语言
neo4j包
连接driver:
from neo4j import GraphDatabase
driver = GraphDatabase.driver("bolt://localhost:7687", auth=("neo4j", "rootroot")) # neo4j是用户名 rootroot是密码,根据具体情况填写
增删改查
官网增删改查介绍
注意所有的参数名不能以单个的_
结尾,避免和关键词配置参数冲突。