Let me rephrase the vocabulary:
: a JVM running Neo4j, potentially multiple databases
: a "graph space". Any query is run within a defined database and cannot break out of it. The very same
concept of "create database" e.g. in mysql. Different databases can have different permissions being set up.
: a set of nodes/rels residing inside a database. Think about unconnected components.
A transaction is always on a database level, there's no notion of cross-database transactions.
A nice example of multiple databases: consider a large company where multiple departments work with graphs that need to be strictly separated for either legal or organizational reasons. IT doesn't want to maintain a bunch of different servers (or containers). So they could go with one instance (potentially clustered) and create a separate db for each department.