Thread: DDL for database creation
Hello psql friends,
Is there a way to reconstruct DDL for creation of existing databases? For example, I need to create dev environment for some (not all) of our existing databases, and I would like to keep the same encoding, connection limit (if anything was specified), etc. Is there a way to create this DDL?
Thank you!
On Sat, Mar 9, 2019 at 02:13:57AM +0000, Julie Nishimura wrote: > Hello psql friends, > Is there a way to reconstruct DDL for creation of existing databases? For > example, I need to create dev environment for some (not all) of our existing > databases, and I would like to keep the same encoding, connection limit (if > anything was specified), etc. Is there a way to create this DDL? pg_dump --schema-only maybe? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + As you are, so once was I. As I am, so you will be. + + Ancient Roman grave inscription +
Bruce Momjian <bruce@momjian.us> writes: > On Sat, Mar 9, 2019 at 02:13:57AM +0000, Julie Nishimura wrote: >> Is there a way to reconstruct DDL for creation of existing databases? For >> example, I need to create dev environment for some (not all) of our existing >> databases, and I would like to keep the same encoding, connection limit (if >> anything was specified), etc. Is there a way to create this DDL? > pg_dump --schema-only maybe? The specific settings the OP mentions are database-level settings; so she'd need pg_dumpall (perhaps with -g), or pg_dump with -C. regards, tom lane
On 3/8/19 9:20 PM, Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: >> On Sat, Mar 9, 2019 at 02:13:57AM +0000, Julie Nishimura wrote: >>> Is there a way to reconstruct DDL for creation of existing databases? For >>> example, I need to create dev environment for some (not all) of our existing >>> databases, and I would like to keep the same encoding, connection limit (if >>> anything was specified), etc. Is there a way to create this DDL? >> pg_dump --schema-only maybe? > The specific settings the OP mentions are database-level settings; > so she'd need pg_dumpall (perhaps with -g), or pg_dump with -C. Why not "pg_dumpall --schema-only" in combination with "pg_dumpall -g"? https://www.postgresql.org/docs/9.6/app-pg-dumpall.html -s --schema-only Dump only the object definitions (schema), not data. -- Angular momentum makes the world go 'round.