Обсуждение: Need create table statements from metadata

Поиск
Список
Период
Сортировка

Need create table statements from metadata

От
David Gauthier
Дата:
psql (9.6.7, server 9.5.2) on linux.

I have 2 DBs, one for dev the other is live.  I want to recreate several tables in the dev db using the same metadata found in the live db.  But I'm too lazy to manually transcribe everything and that's prone to error anyway.

In the past, I would just run pg_dump and capture metadata only for selected tables, then use that to (re)create that tables in the other DB.  But where I am now, they don't give me the privs to run pg_dump.  

So I was wondering if there's a way to do this quickly and cleanly without pg_dump.  Perhaps a stored procedure that pg_dump uses (or something like that) ?

Thanks in Advance !

Re: Need create table statements from metadata

От
Adrian Klaver
Дата:
On 6/20/19 2:32 PM, David Gauthier wrote:
> psql (9.6.7, server 9.5.2) on linux.
> 
> I have 2 DBs, one for dev the other is live.  I want to recreate several 
> tables in the dev db using the same metadata found in the live db.  But 
> I'm too lazy to manually transcribe everything and that's prone to error 
> anyway.
> 
> In the past, I would just run pg_dump and capture metadata only for 
> selected tables, then use that to (re)create that tables in the other 
> DB.  But where I am now, they don't give me the privs to run pg_dump.

When you say metadata are you talking about the DDL for an object?

Use FDW?:
https://www.postgresql.org/docs/9.6/postgres-fdw.html

> 
> So I was wondering if there's a way to do this quickly and cleanly 
> without pg_dump.  Perhaps a stored procedure that pg_dump uses (or 
> something like that) ?
> 
> Thanks in Advance !


-- 
Adrian Klaver
adrian.klaver@aklaver.com



Re: Need create table statements from metadata

От
Adrian Klaver
Дата:
On 6/20/19 2:32 PM, David Gauthier wrote:
> psql (9.6.7, server 9.5.2) on linux.
> 
> I have 2 DBs, one for dev the other is live.  I want to recreate several 
> tables in the dev db using the same metadata found in the live db.  But 
> I'm too lazy to manually transcribe everything and that's prone to error 
> anyway.
> 
> In the past, I would just run pg_dump and capture metadata only for 
> selected tables, then use that to (re)create that tables in the other 
> DB.  But where I am now, they don't give me the privs to run pg_dump.
> 
> So I was wondering if there's a way to do this quickly and cleanly 
> without pg_dump.  Perhaps a stored procedure that pg_dump uses (or 
> something like that) ?

To add to my previous post you can use third party tools:

1) SQL Workbench/J
http://www.sql-workbench.eu/
http://www.sql-workbench.eu/TableSource_png.html

2) pgAdmin
https://www.pgadmin.org/
https://www.pgadmin.org/docs/pgadmin4/4.x/table_dialog.html

> 
> Thanks in Advance !


-- 
Adrian Klaver
adrian.klaver@aklaver.com