dbtoyaml - Database to YAML
dbtoyaml — extract the schema of a PostgreSQL database in YAML format
Synopsis
dbtoyaml [option...] dbname
Description
dbtoyaml is a utility for extracting the schema of a PostgreSQL database to a YAML formatted specification. By default, the specification is output as a single output stream, which can be redirected or explicitly sent to a file.
A sample of the output format is as follows:
schema public:
table film:
columns:
- id:
type: integer
not_null: true
- title:
type: character varying(32)
primary_key:
film_pkey:
columns:
- id
See YAML Format Reference for the full YAML format reference.
Positional arguments
dbnameThe name of the database whose schema is to be extracted.
Options
dbtoyaml accepts the following arguments (in addition to the Common Command Line Options):
-o <file>,--output <file>Send output to the specified file name.
-n <schema>,--schema <schema>Extract only a SQL schema (namespace) matching schema. By default, all SQL schemas are extracted. Multiple schemas can be extracted by using multiple
-noptions. Note that normally all objects that belong to the SQL schema are extracted as well, unless otherwise excluded.-O,--no-ownerExclude object ownership information from the output.
-t <table>,--table <table>Extract only a table matching table. By default, all tables are extracted. Multiple tables can be extracted by using multiple
-tswitches.
Examples
To extract a database called testdb into a file:
dbtoyaml testdb > testdb.yaml
To extract only the PostgreSQL schema named public:
dbtoyaml --schema=public testdb > testdb.yaml
To extract the tables named film and genre to a named file:
dbtoyaml -t film -t genre testdb -o testdb.yaml