今天,还原备份的sql server 2008数据库的时候,抛出了这样的错误。
error:the media set has 2 media families but only 1 are provided. all members must be provided。
找到一个帖子说明了这个问题。
I'm the PM that owns SQL backup. I'll see if I can explain this clearly and help everyone out here.
This error message means that the original backup was done as a striped backup where the backup stream was split into two destination files.
When attempting to restore, you need to specify all of the same files which were used to take the backup.
Because this works very much like RAID1, we do not have one set of data on one file and another set of data on the other one, but rather the data is inerspersed between the two files, which is the behavior which gives optimum performace. One of the unfortunate results of this is the fact that you cannot get any data out of a subset of the backup files used to create the backup.
The reason that you cannot do a backup adding on to one of these files is that the files themselves are initialized to understand that they are part x of a y-part backup. If you specify only 1 file, it doesn't fit.
You can always perform a backup by specifying a new backup file, and using WITH INIT.
If you don't need to stripe the backups across multiple files for performance reasons, then I'd suggest going with a single destination for management simplicity.
So, the simple version is:
If you back up to 2 files, you must specify 2 files to restore from. If you back up to 5 files, you must specify 5 files to restore from, etc.
You cannot restore any data from less than the full set of files used for the backup. This isn't like RAID 5 where we can synthesize missing data, nor is it a continuation volume, where we could restore up to the missing bit.
大概的意思是,在备份的时候,将数据写到了2个不同的文件中,那么在还原的时候同时制定这两个文件就可以了。
帖子的链接:http://social.msdn.microsoft.com/Forums/en-US/sqltools/thread/abf50e00-c9b0-4809-9e61-43ed8a53e968/