Querying the database
Querying using console​
Memgraph supports the openCypher query language which has been developed by Neo4j. It is a declarative language developed specifically for interaction with graph databases, which is currently going through a vendor-independent standardization process.
The easiest way to execute openCypher queries against Memgraph is by using Memgraph's command-line tool, mgconsole, which is installed together with Memgraph.
If you installed Memgraph using Docker, you will need to run the client
using the following command (remember to replace HOST
with valid IP of
the container - see Docker Note):
docker run -it --entrypoint=mgconsole memgraph --host HOST --use-ssl=False
Otherwise, you can connect to the running Memgraph instance by issuing the following shell command:
mgconsole --use-ssl=False
After the client has started it should present a command prompt similar to:
Type :help for shell usage
Quit the shell by typing Ctrl-D(eof) or :quit
Connected to 'memgraph://127.0.0.1:7687'
memgraph>
At this point, it is possible to execute openCypher queries on Memgraph. Each
query needs to end with the ;
(semicolon) character. For example:
CREATE (u:User {name: "Alice"})-[:Likes]->(m:Software {name: "Memgraph"});
The above will create 2 nodes in the database, one labeled "User" with name "Alice" and the other labeled "Software" with name "Memgraph". It will also create a relationship that "Alice" likes "Memgraph".
To find created nodes and relationships, execute the following query:
MATCH (u:User)-[r]->(x) RETURN u, r, x;
Telemetry​
Telemetry is an automated process by which data is collected at a remote point. At Memgraph, we use telemetry for the sole purpose of improving our product, thereby collecting data about the machine that executes the database (CPU, memory, OS, and kernel information) as well as data about the database runtime (CPU usage, memory usage, vertices, and edges count).
Here at Memgraph, we care deeply about the privacy of our users and do not
collect any sensitive information. If you wish to disable Memgraph's telemetry
features, you can do so easily, either by altering the line in
/etc/memgraph/memgraph.conf
that enables telemetry (set
--telemetry-enabled=true
to the following --telemetry-enabled=false
), or by
including --telemetry-enabled=false
as a command-line argument when running
the executable.
To learn more about telemetry in Memgraph, visit the concept page.
Where to next?​
To learn more about the Cypher language, visit the Cypher manual or Memgraph Playground for interactive guides. For real-world examples of how to use Memgraph, we strongly suggest going through one of the available Tutorials. Details on what can be stored in Memgraph can be found in the article about Data storage.
Getting help​
Visit the Getting help page in case you run into any kind of problem or you have additional questions.