Home

VDI versions

Prev Page Next Page
Introduction
Recovery models
Main backup types
Backing up the database files by copying
The transaction log
Transaction log restore sequence
Log sequence numbers
Truncating and shrinking the transaction log
Backing up the tail
Inside the transaction log
So, what's in a backup file?
Test: A full backup does not contain deleted data
Verifying backup files
Verifying backup files on a budget
Cumulative backups
Recovering individual tables
Backup and restore history details
Backup reads and writes
Speeding up backups
Backup speed details
Speeding up restores
Restore state affects speed too
Backup and restore rights
Log shipping
Log shipping in SQL Server 2000
Setting up log shipping using Enterprise Manager
Checking the set up
Failover
Log shipping in SQL Server 2005
Setting up log shipping using Management Studio
Checking the set up
Log shipping status report
Failover
Log shipping in SQL Backup
Using the CopyTool utility
Failover
3rd party backup applications
VDI
VDI versions
VDI errors
Common SQL Backup issues
Installation checklist
Setting up rights
Configuring service rights
Backup data
Hanging issues
Common errors



The SQL Server Virtual Device Interface (VDI) is implemented as a set of COM interfaces. This means that there can only be one VDI library in use, even though you may have different versions of SQL Server installed. The COM interfaces are located in a file named sqlvdi.dll.

To find out which version of the VDI is active, do a search in the registry under the HKEY_CLASSES_ROOT node, for the key {40700425-0080-11d2-851f-00c04fc21759}. Under that node, you should see a InprocServer32 value. The default data for that value points to the version of sqlvdi.dll that's registered on that server.
vdiversion01
Some common versions of sqlvdi.dll are as follows:

Version
Description
2000.080....
Installed by SQL Server 2000.
2000.080.0760.0
Installed by SQL Server 2000 SP3 and SP4.
2000.85.2101.0
Installed by SQL Server 2000 hotfix ref: 935465
(http://support.microsoft.com/default.aspx?scid=kb;en-us;935465)
2000.085.1054.0
Installed by SQL Server 2005.
2000.085.2004.0
Installed by SQL Server 2005 SP2.
2000.85.2102.0
Installed by SQL Server hotfix ref: 934396
(http://support.microsoft.com/default.aspx?scid=kb;en-us;934396)
2007.100.1442.32
Installed by SQL Server 2008
 
 
Generally, later versions of SQL Server is backwards compatible with earlier versions of SQL Server. This means that if you have both SQL Server 2000 and SQL Server 2005 instances running on your server, you must ensure that the version of sqlvdi.dll that's registered is version 2000.085... or later, otherwise backup applications that use the VDI will fail when trying to back up or restore on the SQL Server 2005 instance (see here for some errors that may be caused by this mismatch).

In addition, if you are running 64-bit versions of SQL Server, SQL Server will register both 32-bit and 64-bit versions of sqlvdi.dll. If your backup application is a 32-bit application, you'll need to ensure that both the 32-bit and 64-bit registered VDI files are of the same version. To locate the registered 32-bit version of sqlvdi.dll in the registry, look under the HKEY_CLASSES_ROOT\Wow6432 node.
vdiversion02

Surprisingly, this is a common issue, usually happening when you apply hotfix 935465 on a 64-bit server that has both SQL Server 2000 and SQL Server 2005 instances installed. Hotfix 935465 does not have a 64-bit version of sqlvdi.dll, hence causing a mismatch of versions. To fix this, the suggestion is to apply hotfix 934396.



Document history
12/19/2008    Initial release.    

 
Copyright 2008 Yohz Ventures Sdn Bhd. All rights reserved.
All product and company names are trademarks or registered trademarks of their respective owners.