自动Azure SQL DB导出失败 - MS Azure SQL DB v12不支持索引文档类型.xml

时间:2015-08-10 12:17:18

标签: sql-server azure azure-sql-database

我使用Azure SQL DB自动导出功能。一切都像一个魅力,但最近它开始失败:

  

2015年8月2日上午4:11:22 XXX:XXX的自动SQL导出失败。已创建临时数据库副本,但无法将此副本导出到.bacpac文件。

我已检查过"导入/导出历史记录"我的Azure SQL Server,并看到了以下错误详细信息:

  

服务操作期间遇到错误。 Microsoft Azure SQL数据库v12不支持索引文档类型.xml。

我不知道它是什么。可能它与我使用的FTS功能相关联,但自从我上次成功实现自动导出以来,我对我的数据库一无所知,所以我想这一定是Azure问题。

  1. 你知道如何解决这个问题吗?
  2. 您知道它是否会影响Azure SQL DB服务默认进行的备份吗?

2 个答案:

答案 0 :(得分:5)

如果您在数据库中的表上有全文索引,您可能会看到这一点。快速解决方案是删除索引并在导入Azure DB后重新创建。 Azure DB采取的备份不受此影响,您可以根据需要执行PITR。

   1. Open a CMD Window
2. Run the following command to export using SqlPackage.exe:
“C:\Program Files (x86)\Microsoft SQL Server\120\DAC\bin\SqlPackage.exe” /a:export /ssn:(localdb)\ProjectsV12 /sdn:myDB /tf:my.bacpac /p:VerifyFullTextDocumentTypesSupported=false

The VerifyFullTextDocumentTypesSupported flag is set to false, which allows export
to continue without any verification. The reason this is not allowed by default
is to avoid unexpected behavior upon migration to Azure Sql Database.

答案 1 :(得分:1)

披露:我在负责导入/导出的SQL Server团队工作。将来会添加自动导出期间此问题的修复程序,但是立即解决方法是使用SqlPackage.exe在本地导出。解决方案是将VerifyFullTextDocumentTypesSupported标志设置为false,如上所述in Satya's answer

使用SqlPackage.exe的确切步骤:

  1. 安装latest July DacFramework.msi release,或者理想情况下安装支持最新Azure SQL数据库功能的latest SSMS Preview。今年增加了对全文搜索和此配置选项的支持,因此需要更新SqlPackage.exe。您用于导出的版本已过期,因此不了解全文搜索支持。
  2. 运行以下命令以使用SqlPackage.exe导出。
  3. 对于版本120(这是7月RTM更新):

    “C:\Program Files (x86)\Microsoft SQL Server\120\DAC\bin\SqlPackage.exe” /a:export /ssn:(localdb)\ProjectsV12 /sdn:myDB /tf:my.bacpac /p:VerifyFullTextDocumentTypesSupported=false
    

    对于版本130(由SSMS预览版安装):

    “C:\Program Files (x86)\Microsoft SQL Server\130\DAC\bin\SqlPackage.exe” /a:export /ssn:(localdb)\ProjectsV12 /sdn:myDB /tf:my.bacpac /p:VerifyFullTextDocumentTypesSupported=false
    

    最后,要回答您的问题#2,这不会影响备份或即时恢复(PITR)。这是导入/导出服务的配置问题,问题已本地化为此功能。