</indexterm>
<para>
- A <productname>PostgreSQL</productname> database cluster
- contains one or more named databases. Users and groups of users are
- shared across the entire cluster, but no other data is shared across
- databases. Any given client connection to the server can access
- only the data in a single database, the one specified in the connection
- request.
+ A <productname>PostgreSQL</productname> database cluster contains
+ one or more named databases. Roles and a few other object types are
+ shared across the entire cluster. A client connection to the server
+ can only access data in a single database, the one specified in the
+ connection request.
</para>
<note>
<para>
Users of a cluster do not necessarily have the privilege to access every
- database in the cluster. Sharing of user names means that there
- cannot be different users named, say, <literal>joe</literal> in two databases
+ database in the cluster. Sharing of role names means that there
+ cannot be different roles named, say, <literal>joe</literal> in two databases
in the same cluster; but the system can be configured to allow
<literal>joe</literal> access to only some of the databases.
</para>
</indexterm>
<para>
- A database is a named collection of <acronym>SQL</acronym> objects
- (<quote>database objects</quote>). Generally, every database
- object (tables, functions, etc.) belongs to one and only one
- database. (However there are a few system catalogs, for example
- <literal>pg_database</literal>, that belong to a whole cluster and
- are accessible from each database within the cluster.) More
- accurately, a database is a collection of schemas and the schemas
- contain the tables, functions, etc. So the full hierarchy is:
- server, database, schema, table (or some other kind of object,
+ A small number of objects, like role, database, and tablespace
+ names, are defined at the cluster level and stored in the
+ <literal>pg_global</literal> tablespace. Inside the cluster are
+ multiple databases, which are isolated from each other but can access
+ cluster-level objects. Inside each database are multiple schemas,
+ which contain objects like tables and functions. So the full hierarchy
+ is: cluster, database, schema, table (or some other kind of object,
such as a function).
</para>