无法通过 sitecore azure 模块部署现有的 azure DB

Not able to deploy existing azure DB through sitecore azure module

我正在对具有自定义数据库的自定义 sitecore 解决方案进行一些基于 azure 的部署,我能够在暂存模式下部署 CE 或内容编辑场,但在部署到 CD 场时出现以下错误。

我已经关注 KB article 并尝试了所有其他文章,但它总是在以下异常时失败。我的机器能够访问连接字符串补丁和 SQL 服务器节点中指定的服务器。不知道为什么会这样。

可以请人帮忙

3/13/2015, 11:44:33 AMPGPaaSEvalWeCd01Role01SSc37eStaging [S] Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer failed System.ApplicationException: PGPaaSEvalWeCd01Role01SSc37eStaging [S] Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer failed ---> System.ApplicationException: Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer is failed ---> Microsoft.SqlServer.Management.Common.SqlServerManagementException: Trying to create new server from a database that alreay has a database server. New server name 'crqvr4t4sk' is not the same as existing 'auztwghdj8' at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(String subscriptionID, AzureSqlDatabase database, String login, String password) at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(AzureSqlDatabase azureSqlDatabase, String login, String password) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.ResolveServer(AzureSqlDatabase azureSqlDb, List`1 resolvedServers, Dictionary`2 preferServer, String contextLanguage) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.Action(RolePipelineArgsBase args) at Sitecore.Azure.Pipelines.BasePipeline.RolePipelineProcessor.Process(RolePipelineArgsBase args) --- End of inner exception stack trace --- --- End of inner exception stack trace ---
3/13/2015, 11:44:33 AMPGPaaSEvalWeCd01Role01SSc37eStaging [S] Failed getting Database server System.ApplicationException: PGPaaSEvalWeCd01Role01SSc37eStaging [S] Failed getting Database server ---> Microsoft.SqlServer.Management.Common.SqlServerManagementException: Trying to create new server from a database that alreay has a database server. New server name 'crqvr4t4sk' is not the same as existing 'auztwghdj8' at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(String subscriptionID, AzureSqlDatabase database, String login, String password) at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(AzureSqlDatabase azureSqlDatabase, String login, String password) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.ResolveServer(AzureSqlDatabase azureSqlDb, List`1 resolvedServers, Dictionary`2 preferServer, String contextLanguage) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.Action(RolePipelineArgsBase args) at Sitecore.Azure.Pipelines.BasePipeline.RolePipelineProcessor.Process(RolePipelineArgsBase args) --- End of inner exception stack trace ---
3/13/2015, 11:44:33 AMPGPaaSEvalWeCd01Role01SSc37eStaging [S] Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer failed System.ApplicationException: PGPaaSEvalWeCd01Role01SSc37eStaging [S] Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer failed ---> System.ApplicationException: Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer is failed ---> Microsoft.SqlServer.Management.Common.SqlServerManagementException: Trying to create new server from a database that alreay has a database server. New server name 'crqvr4t4sk' is not the same as existing 'auztwghdj8' at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(String subscriptionID, AzureSqlDatabase database, String login, String password) at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(AzureSqlDatabase azureSqlDatabase, String login, String password) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.ResolveServer(AzureSqlDatabase azureSqlDb, List`1 resolvedServers, Dictionary`2 preferServer, String contextLanguage) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.Action(RolePipelineArgsBase args) at Sitecore.Azure.Pipelines.BasePipeline.RolePipelineProcessor.Process(RolePipelineArgsBase args) --- End of inner exception stack trace --- --- End of inner exception stack trace ---
3/13/2015, 11:44:33 AMPGPaaSEvalWeCd01Role01SSc37eStaging [S] Failed getting Database server System.ApplicationException: PGPaaSEvalWeCd01Role01SSc37eStaging [S] Failed getting Database server ---> Microsoft.SqlServer.Management.Common.SqlServerManagementException: Trying to create new server from a database that alreay has a database server. New server name 'crqvr4t4sk' is not the same as existing 'auztwghdj8' at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(String subscriptionID, AzureSqlDatabase database, String login, String password) at Sitecore.Azure.Managers.AzureManagers.AzureSqlManager.CreateDataBaseServer(AzureSqlDatabase azureSqlDatabase, String login, String password) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.ResolveServer(AzureSqlDatabase azureSqlDb, List`1 resolvedServers, Dictionary`2 preferServer, String contextLanguage) at Sitecore.Azure.Pipelines.Automation.Azure.SqlAzureDatabaseServer.Action(RolePipelineArgsBase args) at Sitecore.Azure.Pipelines.BasePipeline.RolePipelineProcessor.Process(RolePipelineArgsBase args) --- End of inner exception stack trace ---

据我所知,您遇到了以下问题:

  1. 创建自定义 Azure SQL 数据库服务来托管 Sitecore 数据库和自定义数据库。
  2. Sitecore 内容交付(交付农场)and/orSitecore 内容管理(编辑农场)应连接到此自定义服务中的数据库。
  3. 因此,Sitecore Azure 模块必须使用自定义 Azure SQL 数据库服务,而不是创建新服务。

如果我是对的,问题的原因可能是您之前提到的 Sitecore 知识库文章中缺少第 16 步。

16. Recycle the Sitecore Application Pool or reset Internet Information Services (IIS). 

此步骤的原因是强制 Sitecore Azure 模块从 Sql01 项的 Server Name 字段中获取 Azure SQL 数据库服务名称。有关详细信息,请参阅 Sitecore KB article.

中的步骤 #11