Sitecore Azure Toolkit 1.1 can fail to load SQL Server DACFX, ScriptDOM, or CLRTypes

  • Description

    Sitecore Azure Toolkit 1.1 relies on Microsoft Web Deploy 3.6 to build deployment packages for Sitecore Experience Platform and modules. Microsoft Web Deploy dynamically loads SQL Server Data-Tier application framework, SQL ScriptDOM, and SQL CLRTypes components using automatic version detection. With certain software configurations, this algorithm fails to load these components properly and leads to the following errors outputted by the Sitecore Azure Toolkit:

    Update-SCWebDeployPackage : The SQL provider cannot run with dacpac option because of a missing dependency. Please make sure that DacFx is installed.  Learn more at:
    http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DACFX_NEEDED_FOR_SQL_PROVIDER.
    Update-SCWebDeployPackage : The SQL provider cannot run because of a missing dependency. Please make sure that Microsoft SQL Server Transact-SQL ScriptDom is installed.  Learn more at:
    http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_SCRIPTDOM_NEEDED_FOR_SQL_PROVIDER.
    Update-SCWebDeployPackage : The SQL provider cannot run because of a missing dependency. Please make sure that Microsoft SQL Server CLR Types is installed.  Learn more at:
    http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_SQLCLRTYPES_NEEDED_FOR_SQL_PROVIDER.
  • To resolve the issue:

    • Set the path to the Data-Tier application framework in Windows Registry:
      • Locate the installation folder of the MS SQL server version that you are using: \%ProgramFiles(x86)%\Microsoft SQL Server\<version>.
      • Find the Microsoft.SqlServer.Dac.dll file in one of the subfolders: \DAC\bin or \SDK\Assemblies.
      • Store the full path to this subfolder as a DacFxPath value (String type) under the registry key \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\3.
    • Set the path to the SQL ScriptDOM and CLRTypes components in Windows Registry:
      • Locate the installation folder of the MS SQL server version that you are using: \%ProgramFiles(x86)%\Microsoft SQL Server\<version>.
      • Find the Microsoft.SqlServer.TransactSql.ScriptDom.dll and Microsoft.SqlServer.Types.dll files in one of the subfolders: \DAC\bin or \SDK\Assemblies.
      • Store the full path to this subfolder as a DacFxDependenciesPath value (String type) under the registry key \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\3.

Applies to:

Azure Toolkit 1.1+

May 18, 2017
May 22, 2017

Keywords: 

  • Azure