CockroachDB includes a set of system catalogs that provide non-stored data to client applications.
The following system catalogs are available as schemas preloaded to every database:
information_schema, a schema provided for compatibility with the SQL standard.crdb_internal, a schema with information about CockroachDB internals.pg_catalog, a schema provided for compatibility with PostgreSQL.pg_extension, a schema catalog with information about CockroachDB extensions.
New in v25.4:
Access to the crdb_internal schema and to tables and built-in functions in the system database is controlled by the allow_unsafe_internals session variable. For more information, see crdb_internal access control. The system and crdb_internal schemas are intended for advanced support scenarios only, and should be accessed under the guidance of Cockroach Labs.
In a future major release, the allow_unsafe_internals session variable will default to off. To prepare for this change and assess potential downstream impacts on your setup, set allow_unsafe_internals to off in a non-production environment.
Tables in the system catalogs have varying levels of stability. Not all system catalog tables are meant for programmatic purposes. For more information, see API Support Policy.
To see all of the system catalogs for the current database, you can use a SHOW SCHEMAS statement:
> SHOW SCHEMAS;
schema_name | owner
---------------------+--------
crdb_internal | NULL
information_schema | NULL
pg_catalog | NULL
pg_extension | NULL
public | admin
(5 rows)