Backup of Microsoft SQL server fails with the error "The Microsoft SQL Server Virtual Device Interface (VDI) has failed to initialize"

Article:TECH59566  |  Created: 2008-01-11  |  Updated: 2013-02-18  |  Article URL http://www.symantec.com/docs/TECH59566
Article Type
Technical Solution


Issue



Backup of Microsoft SQL server fails with the error "The Microsoft SQL Server Virtual Device Interface (VDI) has failed to initialize"

 


Error



Backup job log shows:-

 

Final error: 0xe000035c - The Microsoft SQL Server virtual device interface (VDI) has failed to initialize.  This is often caused by not having a required SQL service pack or hot fix installed.  Running SQLExpress on Windows Vista or Windows Server 2008 requires service pack 2 plus hot fix V4 or later.

Final error category: Resource Errors

For additional information regarding this error refer to link V-79-57344-860 

 

 Windows Application log on SQL Server would report the one of the following events;
 EventID: 1
 Source: SQLVDI
 Description:
 SQLVDI: Loc=CVDS::CreateEx. Desc=Security initialization failed.ErrorCode=(0). Process=3468. Thread=2556. Client. Instance=.    VD=Global\BPC_SQL_00__7bc4ef5b_1c89_4392_95e5_6b890ac71ec0_.
 

 EventID: 1
 Source: SQLVDI
 Description:
 SQLVDI: Loc=ShareProcessHandle. Desc=GetSecurityInfo. ErrorCode=(5)Access is denied. Process=3468. Thread=2556. Client.
OR

 

0xe0008443 -> One or more database consistency checks have failed.

Completed status: Failed
Final error: 0xe000035c - The Microsoft SQL Server virtual device interface (VDI) has failed to initialize.  This is often caused by not having a required SQL service pack or hot fix installed.  Running SQLExpress on Windows Vista or Windows Server 2008 requires service pack 2 plus hot fix V4 or later.
Final error category: Resource Errors

For additional information regarding this error refer to link V-79-57344-860

 


Cause



The above mentioned error message may be encountered during a local or remote SQL Agent Backup, even after it has been confirmed that all the necessary SQL Service Packs and hotfixes have been applied if the following conditions have occurred:

A. The file sqlvdi.dll is not properly registered in Windows
B. The SQL server is a part of a Domain, and the log-on credentials used for SQL Server service is in the form ./Administrator.
C. This error can also occurs while backing up Microsoft SQL Server 2005 running on Windows Server 2008.
D. Database has some DBCC errors. 


Solution



As per the error message,  ensure SQL server is fully patched as per the requirement. Check the Microsoft SQL support site to find the latest updates for SQL server. If the issue still persist, please refer to respective solutions:

A:  Registering the SQLVDI.dll
         
               1. Stop all of the SQL Services.
               2. Launch Windows Explore, search for, and document the location of each instance of sqlvdi.dll.
               3. Click Start, click Run, type Regsvr32 Path\SQLVDI.DLL in the Open box, and then click OK.
               4. Restart the SQL Server.
 
Note:  The default path of the Sqlvdi.dll file is C:\Program Files\Microsoft SQL Server\80\COM, but the file may be in a different location or more than one file may exist, so register each one found from the search in step 2 above.
 
 
B:   To Change the login credentials for the SQL service.  
                1: Change the log-on credential for SQL Server Service  to  <Domain name>/Administrator.
         
For more information on troubleshooting connectivity issues with SQL, please review the following Microsoft Articles:
 
How to troubleshoot connectivity issues in SQL Server 2000
http://support.microsoft.com/default.aspx?scid=kb;en-us;827422&Product=sql2k
 
SQL Server 2005 connectivity and Volume Shadow Copy Service (VSS)
http://support.microsoft.com/kb/919023/en-us

Backup fails on a computer that is running Small Business Server 2003
http://support.microsoft.com/kb/830575/en-us
 
Note: If a remote SQL Backup fails with the same error after the steps above have been performed, un-install the Backup Exec Remote Agent  for  Windows Servers (RAWS), reboot, re-install RAWS, and run another backup.
 
 
C :  Running  SQL 2005 on Windows server 2008
       Change the logon account of the "SQL Server VSS writer service" on the SQL Server to use a Domain Administrator account.
                 1. Click on Start - Run
                 2. Type services.msc
                 3. Select the "SQL Server VSS writer" service.
                 4. Open properties and select the Logon tab. Change the account from Local System to a Domain Administrator account.
                 5. Restart the Backup Exec Services on the SQL Server and try the backups.

Download the following hotfix from Microsoft:

FIX: Error messages and an event may be logged when you use the Virtual Device Interface in SQL Server 2005 or in SQL Server 2000
http://support.microsoft.com/kb/934396
 
 
D:  Check database in question for DBCC error :
1.Check database in question for DBCC error. Run following query in SQL Server Management Studio:

DBCC CHECKDB (DatabaseName) WITH NO_INFOMSGS, ALL_ERRORMSGS

2. Please fix DBCC errors in case above query returns errors.

 

Note: If all other solutions fail it may be necessary to run a repair installation of the latest version of SQL that is installed on the system.


Supplemental Materials

SourceUMI
ValueV-79-57344-860
Description

The Microsoft SQL Server virtual device interface (VDI) has failed to initialize. This is often caused by not having a required SQL service pack or hot fix installed.


SourceError Code
Value0xe000035c
Description

The Microsoft SQL Server virtual device interface (VDI) has failed to initialize. This is often caused by not having a required SQL service pack or hot fix installed.


SourceEvent ID
Value1
Description

  SQLVDI: Loc=CVDS::CreateEx. Desc=Security initialization failed.ErrorCode=(0). Process=3468. Thread=2556. Client. Instance=.   VD=Global\BPC_SQL_00__7bc4ef5b_1c89_4392_95e5_6b890ac71ec0_.
 


SourceEvent ID
Value1
Description

SQLVDI: Loc=ShareProcessHandle. Desc=GetSecurityInfo. ErrorCode=(5)Access is denied. Process=3468. Thread=2556. Client


SourceError Code
Value0xe0008443
Description

 One or more database consistency checks have failed.



Legacy ID



302783


Article URL http://www.symantec.com/docs/TECH59566


Terms of use for this information are found in Legal Notices