如何使用neo4j在一台服务器上创建多个数据库?我有多个客户端,我想将所有客户端信息分成不同的数据库,以避免数据泄漏.
Ste*_*ter 37
您需要在conf/neo4j.properties
和中安装多个具有不同端口配置的Neo4j安装conf/neo4j-server.properties
.
或者,您可以使用某些虚拟化或容器工具(如http // docker.io)来实现更复杂的方法.
或者label
为客户端添加一个特殊的节点,例如:ClientName
.或为每个客户端数据库创建根节点,并始终在第一个节点开始查询.
在neo4j db中,你可以有单独的子图.如果您对代码编程很好,那么就没有理由发生这样的泄漏.
正如@ stefan-armbruster所提到的,最好使用多个Neo4j docker容器实例来运行多个数据库
可能在docker compose文件下面应该可以帮助您
version: '2'
services:
neo4j:
image: neo4j:latest
network_mode: host
restart: always
environment:
- NEO4J_AUTH: neo4j/neo4j
cap_add:
- SYS_RESOURCE
ports:
- "7474:7474"
- "7687:7687"
volumes:
- $HOME/neo4j/data:/data
Run Code Online (Sandbox Code Playgroud)
将以上内容保存到docker-compose.yml后,请运行以下命令
docker-compose up
Run Code Online (Sandbox Code Playgroud)
如果您想在后台运行
docker-compose up -d
Run Code Online (Sandbox Code Playgroud)
现在,您应该能够访问数据库,如下所示http://localhost:7474
:如果您使用的是docker-machine,则必须使用docker-machine IP地址访问数据库
通过维护多个带有不同端口的docker-compose文件,您可以维护多个数据库,这不仅适用于neo4j,还可以用于任何类型的数据库(Mongo,Redis,RabbitMQ等)。
用于指定其他docker compose文件,请尝试以下命令
docker-compose -f <your docker compose file name>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16603 次 |
最近记录: |