Table of Contents
pg_aggregate
pg_am
pg_amop
pg_amproc
pg_attrdef
pg_attribute
pg_authid
pg_auth_members
pg_cast
pg_class
pg_collation
pg_constraint
pg_conversion
pg_database
pg_db_role_setting
pg_default_acl
pg_depend
pg_description
pg_enum
pg_event_trigger
pg_extension
pg_foreign_data_wrapper
pg_foreign_server
pg_foreign_table
pg_index
pg_inherits
pg_init_privs
pg_language
pg_largeobject
pg_largeobject_metadata
pg_namespace
pg_opclass
pg_operator
pg_opfamily
pg_partitioned_table
pg_policy
pg_proc
pg_publication
pg_publication_rel
pg_range
pg_replication_origin
pg_rewrite
pg_seclabel
pg_sequence
pg_shdepend
pg_shdescription
pg_shseclabel
pg_statistic
pg_statistic_ext
pg_statistic_ext_data
pg_subscription
pg_subscription_rel
pg_tablespace
pg_transform
pg_trigger
pg_ts_config
pg_ts_config_map
pg_ts_dict
pg_ts_parser
pg_ts_template
pg_type
pg_user_mapping
pg_available_extensions
pg_available_extension_versions
pg_backend_memory_contexts
pg_config
pg_cursors
pg_file_settings
pg_group
pg_hba_file_rules
pg_indexes
pg_locks
pg_matviews
pg_policies
pg_prepared_statements
pg_prepared_xacts
pg_publication_tables
pg_replication_origin_status
pg_replication_slots
pg_roles
pg_rules
pg_seclabels
pg_sequences
pg_settings
pg_shadow
pg_shmem_allocations
pg_stats
pg_stats_ext
pg_stats_ext_exprs
pg_tables
pg_timezone_abbrevs
pg_timezone_names
pg_user
pg_user_mappings
pg_views
The system catalogs are the place where a relational database
management system stores schema metadata, such as information about
tables and columns, and internal bookkeeping information.
PostgreSQL's system catalogs are regular
tables. You can drop and recreate the tables, add columns, insert
and update values, and severely mess up your system that way.
Normally, one should not change the system catalogs by hand, there
are normally SQL commands to do that. (For example, CREATE
DATABASE
inserts a row into the
pg_database
catalog — and actually
creates the database on disk.) There are some exceptions for
particularly esoteric operations, but many of those have been made
available as SQL commands over time, and so the need for direct manipulation
of the system catalogs is ever decreasing.