cancel
Showing results for 
Search instead for 
Did you mean: 

MaxDB recovery- dbmcli with multiple ExternalBackupID's

Former Member
0 Kudos

Hey there!

Yesterday I had to recover a Db with the recovery-tool dbmcli. So I chose the last full backup and started the recovery with db_activate recover simpana_full DATA ExternalBackupID "D64 1025100_898416 /simpana/tmp/pipe_D64_full" .

Then I started the first log backup with recover_start simpana_log LOG ExternalBackupID "D64 1025100_899157 /simpana/tmp/pipe_D64_log" and carried on with the second, third .... until log backup 129 with the command recover_replace simpana_log ExternalBackupID '"D64 1025100_899158 /simpana/tmp/pipe_D64_log".

Now my question:

Is it possible to make a chain of the ExternalbackupID's ? Otherwise I have to execute them individually.

After long time of searching with google I am frustrated. I found several information how to put many ExternalBackupID's in a row.

But it didnt work. I always got the error DBM-Api error ( -4 'Reading header from pipe:closed by serve') and my dbmcli-session closed.

Information:

http://www.sapdb.org/7.4/pdf/extsich_eng.pdf --> "<external_backup_ID1>, <external_backup_ID2>, ..., <external_backup_IDn>"

In my opinion the blank characters inside the ExternalBackupID are the problem.

http://www.sapdb.org/7.4/pdf/extsich_eng.pdf  -->   If the external backup ID contains blank characters, you have to enter the it in quotation

                                                                           marks: "<external_backup_ID>"

So there are two quotation marks series-connected.

I really hope you can help me to save a lot of time!

Thank you in advance for your answer.

Timo

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Answers (3)

Answers (3)

Former Member
0 Kudos

Hey guys!

Thanks for your help. Unfortunately your answers didnt solve my problem but I understand it now.

Yeah you guys were right about the link and it would work if the backups were saved on the server. But the backups are saved in the datacenter.

So I am forced to use the ExternalBackupID and cannot use <nnn>.

I am going to program a script for this purpose.

However, thank you anyway

Timo

AtulKumarJain
Active Contributor
0 Kudos

Hi Timo,

Please check

3. Recovery of a backup using an External Backup Identifier.

***********************************************************


When recovering a backup from an external backup tool, the External Backup Identifier of the backup desired must be given.

Use the following order to recover a data backup or an incremental backup and recover the first log backup for an existing utility session
(dbmcli......-uUTL):

recover_start <medium> <save_type> ExternalBackupID <ExtBackupID>

<medium> is the name of the medium to be used, <save_type> is the type of backup (DATA, PAGES or LOG) and <ExtBackupID> is the External Backup Identifier of the backup desired.

Please make sure that you specify the complete External Backup Identifier of a backup. This is the entire string between the first and the second pipe character ('|') in an output line of the backup_ext_ids_list and backup_ext_ids_listnext commands.

If the External Backup Identifier contains blank spaces, it must be put in inverted commas ("<ExtBackupID>").

With parallel backups, all External Backup Identifiers of the individual backup parts must be transmitted as a comma-separated list enclosed in inverted commas ("<ExtBackupID_1>, <ExtBackupID_2>, ..., <ExtBackupID_n>").

Keyword ExternalBackupID can be replaced by the abbreviation EBID.

Examples:
recover_start ADSM LOG EBID P47579_DB7_2001.03.30_15.51.20_SAVELOG_ADSM
recover_start NSR DATA EBID "NST 985877420 P47579"
recover_start BACK PAGES EBID "DB72 985963853 \\.\pipe\b1,
DB72 985963913 \\.\pipe\b2"

If you specify the recover_start command already when calling dbmcli, please observe the rules of your shell regarding the handling of quotes. The required quotes must be submitted to dbmcli and must not be interpreted or removed by the shell.

For example:
dbmcli -d ... -u ...
-uUTL -c recover_start NSR DATA EBID \"NST 985877420 P47579\"

If you need to import more than one log backup, the second and all additional log backups are imported using the following command:

recover_replace <medium> ExternalBackupID <ExtBackupID>

<medium> is the name of the medium to be used and <ExtBackupID> is the External Backup Identifier of the backup required. If the External Backup Identifier contains blank spaces, it must be put in inverted commas ("<ExtBackupID>").
ExternalBackupID can be abbreviated to EBID.

BR

Atul

manish_singh13
Active Contributor
0 Kudos

Hi Timo,

Although I am not sure if this will help you but refrer SAP Note

387583 - SAP DB : Use of external backup IDs with dbmcli Step:3 Example commands. There are commands example mentioned using multiple backup ids.

Thanks,

Manish Singh