Thread: backing up the data from a single table?
My development methodology is to create scripts that init the db, and load test data, as I make changes. Now, I am starting to move toward a test instance with real data. The end user has provided "real" test data, n spreadsheets. I have the inputing of data from these working OK. (takes a bit of hand work). What I would like to do, is continue to init the "test" database. To make that easy, I would like to be able to "export" individual tables, so I can use the scripts to reload them. I prefer not to have to convert these to my load script format. Is there a way to "export" a single table, that can be easily re "imported"? -- "They that would give up essential liberty for temporary safety deserve neither liberty nor safety." -- Benjamin Franklin
On 13/09/2019 15:13, stan wrote: > My development methodology is to create scripts that init the db, and load > test data, as I make changes. > > Now, I am starting to move toward a test instance with real data. The end > user has provided "real" test data, n spreadsheets. I have the inputing of > data from these working OK. (takes a bit of hand work). What I would like > to do, is continue to init the "test" database. To make that easy, I would > like to be able to "export" individual tables, so I can use the scripts to > reload them. I prefer not to have to convert these to my load script > format. > > Is there a way to "export" a single table, that can be easily re > "imported"? Yes, absolutely: pg_dump -t <table-name> (etc) Ray. -- Raymond O'Donnell // Galway // Ireland ray@rodonnell.ie
On 9/13/19 9:13 AM, stan wrote: > My development methodology is to create scripts that init the db, and load > test data, as I make changes. > > Now, I am starting to move toward a test instance with real data. The end > user has provided "real" test data, n spreadsheets. I have the inputing of > data from these working OK. (takes a bit of hand work). What I would like > to do, is continue to init the "test" database. To make that easy, I would > like to be able to "export" individual tables, so I can use the scripts to > reload them. I prefer not to have to convert these to my load script > format. > > Is there a way to "export" a single table, that can be easily re > "imported"? The COPY command is what you want. http://postgresguide.com/utilities/copy.html https://www.postgresql.org/docs/9.6/sql-copy.html -- Angular momentum makes the world go 'round.
On Fri, Sep 13, 2019 at 4:14 PM stan <stanb@panix.com> wrote:
Is there a way to "export" a single table, that can be easily re
"imported"?
Export:
pg_dump --table=foo > foo.sql
Import:
cat foo.sql | psql
Hi Stan,
El vie., 13 de septiembre de 2019 11:14, stan <stanb@panix.com> escribió:
My development methodology is to create scripts that init the db, and load
test data, as I make changes.
Now, I am starting to move toward a test instance with real data. The end
user has provided "real" test data, n spreadsheets. I have the inputing of
data from these working OK. (takes a bit of hand work). What I would like
to do, is continue to init the "test" database. To make that easy, I would
like to be able to "export" individual tables, so I can use the scripts to
reload them. I prefer not to have to convert these to my load script
format.
Is there a way to "export" a single table, that can be easily re
"imported"?
--
"They that would give up essential liberty for temporary safety deserve
neither liberty nor safety."
-- Benjamin Franklin
It may be a strange suggestion but did you consider containers like Docker? It's been a great help on a 100GB+ test database. Successful changes were committed, failed changes were rolled back creating a new instance based on the same image (with data preloaded). It takes seconds to do a rollback.
Olivier