Est-il possible de créer/supprimer différentes bases de données dans la base de données graph Neo4j comme dans MySQL? Ou, au moins, comment supprimer tous les nœuds et toutes les relations d’un graphique existant pour obtenir une configuration propre aux tests, par exemple, à l’aide de commandes Shell similaires à rmrel
ou rm
?
Vous pouvez simplement supprimer le répertoire entier du graphe avec rm -rf
, car Neo4j ne stocke rien en dehors de cela:
rm -rf data/*
En outre, vous pouvez bien sûr parcourir tous les nœuds et supprimer leurs relations et les nœuds eux-mêmes, mais cela peut s'avérer trop coûteux, rien que pour les tests ...
commande encore plus simple pour supprimer tous les nœuds et toutes les relations:
MATCH (n)
OPTIONAL MATCH (n)-[r]-()
DELETE n,r
Nous pouvons supprimer tous les nœuds avec des relations ,
MATCH (n)
DETACH DELETE n
Il n’existe actuellement aucune option permettant de créer plusieurs bases de données dans Noe4j. Vous devez créer plusieurs magasins de données Neo4j. Voir référence .
Création d'une nouvelle base de données dans Neo4j
Avant de démarrer la communauté neo4j, cliquez sur l'option de navigation.
et choisissez un répertoire différent
et cliquez sur le bouton de démarrage.
Nouvelle base de données créée sur ce répertoire
manière rapide et sale qui fonctionne bien:
bin/neo4j stop
rm -rf data/
mkdir data
bin/neo4j start
Pour tous ceux qui ont besoin d’un graphique vierge pour exécuter une suite de tests - https://github.com/jexp/neo4j-clean-remote-db-addon est une excellente extension permettant de nettoyer la base de données. Un appel REST. Évidemment, ne l'utilisez pas en production!
Exécutez votre code de test sur une autre instance de neo4j.
conf/neo4j-server.properties
Et mettre org.neo4j.server.webserver.port
à un non utilisé../neo4j stop
et rm -rf data/graph.db
sur le démontage.Pour plus de détails, voir neo4j: Comment changer de base de données? et le docs .
Dans Neo4j 2.0.0 le? n'est plus pris en charge. Utilisez OPTIONAL MATCH à la place:
START n=node(*)
OPTIONAL MATCH (n)-[r]-()
delete n,r;
La réponse la plus simple est: [~ # ~] non [~ # ~]
La meilleure façon de "recommencer" est de
ou
Il existe un moyen de supprimer tous les nœuds et toutes les relations (comme décrit ici )
MATCH (n)
OPTIONAL MATCH (n)-[r]-()
DELETE n,r
Dans la version 2.0.0 -M6, vous pouvez exécuter le script Cypher suivant pour supprimer tous les nœuds et toutes les relations:
start n=node(*)
match (n)-[r?]-()
delete n,r
À partir de la version 3, je pense qu’il est maintenant possible de créer des instances de base de données distinctes. Par conséquent, leur emplacement est légèrement différent.
Référence à: https://neo4j.com/developer/guide-import-csv/
Le --into retail.db est évidemment la base de données cible, qui ne doit pas contenir une base de données existante.
Sur ma boîte Ubuntu, l'emplacement est:
/var/lib/neo4j/data/databases
où je ne vois actuellement que graph.db
qui, je crois, doit être le défaut.
Vous pouvez supprimer vos fichiers de données et si vous souhaitez suivre cette procédure, je vous recommande de supprimer uniquement votre graph.db, par exemple. Sinon, vous allez gâcher vos informations d'authentification.