Обсуждение: Can I backup/restore a database in a sql script?

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

Can I backup/restore a database in a sql script?

От
"Joost Kraaijeveld"
Дата:
Hi,

I want to write a sql script in which I backup a database and restore a new (altered) version of that database. Is that
possible?If so , can anyone give me an example of how to do that?  

I can run it from any command prompt (psql -U postgres template1 < my_db.backup)    but I would like it to run from
psql(which should give me 1 script for all platforms I must do this: Windows, FreeBSD and Debian) 

TIA

Joost

Re: Can I backup/restore a database in a sql script?

От
Richard Huxton
Дата:
Joost Kraaijeveld wrote:
> Hi,
>
> I want to write a sql script in which I backup a database and restore
> a new (altered) version of that database. Is that possible? If so ,
> can anyone give me an example of how to do that?
>
> I can run it from any command prompt (psql -U postgres template1 <
> my_db.backup)    but I would like it to run from psql (which should
> give me 1 script for all platforms I must do this: Windows, FreeBSD
> and Debian)

You can restore using just psql (because pg_dump can produce an sql file
to be processed). I don't know of any way to backup a database that
doesn't use pg_dump.

--
   Richard Huxton
   Archonet Ltd

Re: Can I backup/restore a database in a sql script?

От
Erik Jones
Дата:
On Jun 22, 2007, at 4:09 AM, Richard Huxton wrote:

> Joost Kraaijeveld wrote:
>> Hi,
>> I want to write a sql script in which I backup a database and restore
>> a new (altered) version of that database. Is that possible? If so ,
>> can anyone give me an example of how to do that?
>> I can run it from any command prompt (psql -U postgres template1 <
>> my_db.backup)    but I would like it to run from psql (which should
>> give me 1 script for all platforms I must do this: Windows, FreeBSD
>> and Debian)
>
> You can restore using just psql (because pg_dump can produce an sql
> file to be processed). I don't know of any way to backup a database
> that doesn't use pg_dump.
>

You could script a PITR backup and recovery procedure but I doubt any
given single solution would be portable between Windows, Debian, and
FreeBSD given the differences in filesystems and filesystem tools
although I suppose with a lot of careful work it may be possible.
See the chapter on Backup and Restore in the manual for the details
of how PITR works (http://www.postgresql.org/docs/8.2/interactive/
backup.html).

Erik Jones

Software Developer | Emma®
erik@myemma.com
800.595.4401 or 615.292.5888
615.292.0777 (fax)

Emma helps organizations everywhere communicate & market in style.
Visit us online at http://www.myemma.com