how to restore db if backup file size is larger then 2 GB?

TomBascom

Curmudgeon
That depends.

What version of Progress are you running?

What OS are you running it on?

How was the backup made?

Is there more than one backup extent?

Have you taken a DBA training class?

Presuming that you are using probkup and prorest and some ancient and no longer supported release of Progress or an really awful operating system that limits you to file sizes of 2GB or less the key is to realize that when the first extent completes you will be prompted for subsequent extents ("devices"). You can either manually type in their names or you can use shell redirection to feed a previously prepared "response file" to the command (one extent name per line, the first extent is the "device-name" that you listed on the probkup or prorest command so the response file should start with extent #2.)
 

palthe

Member
first you have to create a structure file (<dbname>.st) in the databasedirectory in which you specify the extents (in this case, you specify at least one fixed extent and one variable).

so in your case you put in the following lines in the <database>.st (that is, if you want de BI file in the current directory and all the data extents (and maybe even AI files*if you use After imaging) as well):

b .

d .\<databasename>.d1 f2000000
d .\<databasename>.d2


After saving this file you just use the prorest <databasename> <backupname> command, and you're home free.

(I always use this way for adding extents, because I love the extents being rounded size and exactly the way I want them to be, instead of the "ugly" structure you get with prostrct add (online) blah blah.)

* not recommended! :p
 

syddie

New Member
Hi Tom,

We have just hit this problem.
Do you have an example of this "response" file and how the backup command could be run.

regards
Ken
 

TomBascom

Curmudgeon
Suppose that you have 4 backup extents in the /backup directory and that you have named them using "pb#" as an extension. The restore command would look like this:

prorest dbname /backup/dbname.pb1 < /backup/restore.list

The response file is "restore.list" and it just contains the names of the remaining extents:

/backup/dbname.pb2
/backup/dbname.pb3
/backup/dbname.pb4

Note that the first extent is on the prorest command line and it is not in the response file.

Also -- you might want to put a "y" on line one of the response file (all by itself). This will answer the question about whether or not you want to overwrite an existing db structure. It won't hurt anything, even if you don't need it it will be treated as a bogus extent name and prorest will just ask for another and get the correct name from the next line.
 

syddie

New Member
Thanks for the reply Tom,
I worked it out in the end.
We were under the pump a bit so I was after all the help I could get with this one.
Works a treat.
Thanks again.

regards
Ken
 
Top