Please be aware that the content in SAP SQL Anywhere Forum will be migrated to the SAP Community in June and this forum will be retired.

Hello everyone,

I hope you won't ban me for asking the thing that people already discussed somewhere in 2008, but I have faced the error that shouldn't probably appear.

I have created the DB backup using the SA that I wanted to transfer to my PC and make a copy of the DB file. I used SQL Central to create the backup file (ml1.bak.1).

When I was trying to restore the DB file on my SA using RESTORE DATABASE, I got an error: Backup file format is invalid.

My SQL command is:

RESTORE DATABASE 'C:\somewhere\ml1.db' FROM 'C:\somewhere\ml1.bak';

As far as I understood, after googling for some time, I have to use the same SA version to recover the DB file from the "tape"-format. However, I didn't find this in the documentation. The only sentence that I found in SA 17 docs was:

As of version 12, you cannot restore archive backups created with version 11 or earlier database servers.

But it says nothing about SA 16 or 17. Is it really important to have the exact version of the DB server? I can easily create a copy using dbbackup, but I am curious if there is a known solution.

Thank you in advance, as always.

asked 16 Mar '16, 12:48

Vlad's gravatar image

accept rate: 16%

I don't know as I have never used archive backups - is there any particular reason you prefer them over those (IMHO much simpler to handle) image backups?

(17 Mar '16, 03:54) Volker Barth
Replies hidden

I would say that this was the first time, when I decided to make a DB copy without stopping the server. I am monitoring one particular system with mlprof, and I decided to steal the DB file to analyze it on my PC.

I know that there are several ways to make a DB copy, but the keyword "backup" had simply attracted my attention.

Honestly I was also surprised that the first random step I made... well... failed :) That is why I have decided to ask DB experts what I was doing wrong.

(17 Mar '16, 04:43) Vlad

Just to clarify: You certainly can do an image backup of a running database - folks do that all the time:)

It's just that I would strongly prefer the "Syntay 1" of the BACKUP statement (i.e. image backups) over "Syntax 2" (archive backups).

But apparently that does not help you currently when the backup you have (and need) is an archive one...

(17 Mar '16, 04:54) Volker Barth

Ok, Volker. Thank you for the comment. I will use your suggestion, which I eventually tried.

Maybe if someone can help me with the understanding how to deal with archive backups (e.g. that I could create at prehistoric times), I will appreciate this.

(19 Mar '16, 04:22) Vlad

As stated, I can't tell on the archive backup situation. If v17 rejects to restore a v16 archive backup by design, then I would agree that this seems to be an undocumented restriction (and I hope someone from SAP Sybase can clarify that further).

However, because you seem to need to restore your v16 archive backup, wouldn't it be possible for you to use v16 (possibly the free Developer Edition) to try that on your box?

(19 Mar '16, 08:29) Volker Barth

FWIW an image backup is actually a database, not a "backup", in the sense that it does not require a "restore" process to copy the data into a database. In other words, an image backup is a *.db file that can be started by the database engine dbsrvxx.exe. If the image backup was created while the database was running, the resulting image *.db file might need to go through the "recovery process" when it is started so it can be brought up-to-date using the image *.log file, but dbsrvxx.exe takes care of that during startup. This is one of the reasons image backups are 99.999% more popular than goofy archive backups :)

(20 Mar '16, 09:48) Breck Carter
showing 1 of 6 show all flat view
Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 16 Mar '16, 12:48

question was seen: 2,259 times

last updated: 20 Mar '16, 09:49