当前位置: 代码网 > it编程>前端脚本>Python > centos系统中neo4j数据库和python环境部署

centos系统中neo4j数据库和python环境部署

2024年08月02日 Python 我要评论
最近因为项目需要,到了一个纯局域网环境中进行知识图谱构建。对于小规模数据,neo4j社区版能够满足基本的建模和查询需要(大规模数据需要商业版,或是选用其他开源分布式图数据库如nebula等)。本文主要介绍图数据库和python环境的部署过程和关键操作,以及一些遇到的问题。

最近因为项目需要,到了一个纯局域网环境中进行知识图谱构建。对于小规模数据,neo4j社区版能够满足基本的建模和查询需要(大规模数据需要商业版,或是选用其他开源分布式图数据库如nebula等)。本文主要介绍图数据库和python环境的部署过程和关键操作,以及一些遇到的问题。

部署需求

现状:手头有一台服务器,安装了centos系统,没有图形化界面。

目标:服务器上建立图数据库,并且有python开发环境支持我们进行图数据库的构建的查询开发。

主要思路:服务器没有图形化界面,作为开发环境不太合适,因此计划服务器上部署的neo4j和python能够被局域网远程机器所访问,在其他机器上通过浏览器进行neo4j的操作和python代码编写。考虑到机器在局域网中,后续的方案基本上都是通过离线下载,导入,本地编译或安装的方式进行。

技术方案:neo4j+python+jupyter notebook

系统现状

系统版本查询

cat /etc/redhat-release

安装python版本

python --version

安装基本工具:

yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel readline-devel sqlite-devel

neo4j图数据库部署

neo4j图数据库运行依赖于java-jdk,首先需要进行java-jdk部署.

java-jdk版本取决于neo4j,对应关系不展开。本文使用的是neo4j 5.21.0+java-jdk 21的方案。

java-jdk部署

1.下载地址:java downloads | oracle]

2.迁移到服务器上

3.解压缩到指定目录

tar -zxvf jdk-版本号-linux-x64.tar.gz -c /opt/

4.配置环境变量,让系统识别到:

vi /etc/profile #打开环境配置文件,在文件最后插入以下内容
# 以下是profile文件要添加内容
export java_home=/opt/jdk-版本号 #配置主地址
export path=$path:$java_home/bin #配置启动地址

5.运行配置方案,让方案生效:

source /etc/profile

6.检查安装是否成功

java -version

neo4j部署

1.下载:[neo4j deployment center - graph database & analytics]

2.迁移到服务器上

3.解压到指定目录

tar xvf neo4j-community-3.5.26-unix.tar.gz -c /opt/

4.修改配置,开放监听ip和端口,让远程服务器能够访问

vi ./opt/neo4j-community/conf/neo4j.conf #路径自己修改,主要打开neo4j配置文件,在里面添加两句话
#以下是neo4j.conf文档内添加内容
dbms.connector.http.listen_address=0.0.0.0:7474 #添加http监听
dbms.connector.bolt.listen_address=0.0.0.0:7687 #添加bolt连接监听

5.在neo4j安装目录下的服务启动

./bin/neo4j start #启动neo4j
./bin/neo4j status #查看启动状态

6.测试,在局域网其他机器打开http://服务器ip:7474,进入neo4j管理页面。

首次进去初始账号和密码都是neo4j,进去后让你修改密码

如果发现无法打开,在配置正确情况下,确认局域网互通且服务器防火墙配置。纠错这里不展开。

python环境部署

可以独立地安装python+jupyter,本次我直接安装了anaconda,里面包含了python和jupyter等一些工具,如果要轻量化部署则还是分开安装好些。

anaconda部署

1.下载,直接打开网址,或是使用命令,在其他机器下载后,迁移到服务器。

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/anaconda3-2023.03-1-linux-x86_64.sh

2.安装:

bash anaconda3-版本号-linux-x86_64.sh

3.配置环境变量,默认安装地址的话,一般会自动配置环境变量,但如果是自定义地址,还是自己配置下环境变量靠谱些。配置方案与jdk类似,需要添加的是这个。

export path=/opt/anaconda3/bin:$path

4.检查安装是否成功

conda list

jupyter配置

1.检查jupyter是否安装成功了

jupyter notebook --version

2.生成配置文件

jupyter notebook --generate-config

命令会生成一个配置文件~/.jupyter/jupyter_notebook_config.py

3.配置监听地址和端口,密码

c.notebookapp.ip = '*' #所有地址都监听
c.notebookapp.port = 8888 #监听端口
c.notebookapp.password = u'sha1:xxxxxxxxxxxxxxxxxxxxxx' #访问密码哈希值

密码的生成使用需要在python环境内运行以下代码:

from notebook.auth import passwd
passwd()

结果让你输入密码以及生成该密码的哈希值。

4.启动服务

jupyter notebook

5.如果为了更安全,可以使用ssh端口转发(不一定)

ssh -n -f -l localhost:xxxx:localhost:yyyy username@server_ip

其中xxxx是本地端口,yyyy是服务器上jupyter运行的端口(默认为8888)。

在远程浏览器中打开http://服务器ip:8888,进入jupyter。

如果进入成功,输入密码就可以远程进行代码编写和编译工作。

如果无法打开,自己搜索,一般也是配置,网络和防火墙问题。

neo4j python支持安装

在python中操作neo4j需要安装对应的库,py2neo由于停止更新了,目前版本不支持最新的python版本,所以使用neo4j的python库。

1.离线下载地址:[neo4j · pypi]

2.传输wheel文件:
将下载的.whl文件复制到离线安装的目标机器上。

3.使用pip进行离线安装:
在目标机器上,使用pip安装这些wheel文件:

pip install --no-index --find-links=file:///path/to/offline/wheels neo4j

4.验证安装:
安装完成后,使用以下命令验证neo4j python驱动程序是否安装成功:

python -c "import neo4j"


 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com