> You could use an *un*trusted procedural language to create a > function to binary-read the backup from disk and return it > as a bytea field. Not sure how efficient that is, though. > > You could then simply do > > select get_backup(); > > If you allow for parameters you could make it return certain > backups based on, perhaps, timestamp of creation. Karsten, This id good idea but it forces to use Postgres protocol for downloading. This protocol has some timeouts which are too small for large file download. Postgres protocol has also a lot of overhead added to downloadable data. It also requires that whole downloadable file must fit into memory. I used ODBC. I tried this but was forced to store big files in 1 MB chunks in bytea fields and create file from downloaded blocks So I'm looking a more efficient protocols to download backup file. Or should I really write code which divides backup file to 1 MB chunks and stores them in bytea field ? Andrus.