AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX Blogs
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.02.2013, 20:11   #1  
Blog bot is offline
Blog bot
Участник
 
25,626 / 848 (80) +++++++
Регистрация: 28.10.2006
axinthefield: Dynamics AX 2012 and SQL Server 2012 AlwaysOn Availability Groups
Источник: http://blogs.msdn.com/b/axinthefield...ty-groups.aspx
==============



When setting up Microsoft SQL Server 2012 AlwaysOn Availability Groups with Microsoft Dynamics AX 2012 you may run into an issue when attempt to enable the “Partial Containment” option on the Dynamics AX production database, which is a pre-requisite for AlwaysOn.

When you attempt to enable “Partial Containment” on the Dynamics AX 2012 production database you may receive the error message;



Whether this is a SQL Server 2012 Bug or working as designed is a bit of a debate, but there is a simple workaround to bypass this error message and allow Partial Containment on the AX 2012 production database. We just need to make a small modification to the AX 2012 SQL Stored Procedure SP_ConfigureTablesForChangeTracking.

Old Code - SP_ConfigureTablesForChangeTracking

SELECT DISTINCT DatabaseTables.NAME, case when ChangeTrackingTables.object_Id is null then 0 else 1 end, CASE WHEN EnabledTables.PHYSICALTABLENAME IS NULL THEN 0 ELSE 1 END

FROM SYS.TABLES DatabaseTables

LEFT OUTER JOIN AIFSQLCDCENABLEDTABLES EnabledTables ON

DatabaseTables.NAME = EnabledTables.PHYSICALTABLENAME

LEFT OUTER JOIN sys.change_tracking_tables ChangeTrackingTables on DatabaseTables.object_id = ChangeTrackingTables.object_id

New Code - SP_ConfigureTablesForChangeTracking

SELECT DISTINCT DatabaseTables.NAME, case when ChangeTrackingTables.object_Id is null then 0 else 1 end, CASE WHEN EnabledTables.PHYSICALTABLENAME IS NULL THEN 0 ELSE 1 END

FROM SYS.TABLES DatabaseTables

LEFT OUTER JOIN AIFSQLCDCENABLEDTABLES EnabledTables ON

CAST(DatabaseTables.NAME as nvarchar(128)) COLLATE SQL_Latin1_General_CP1_CI_AS =

CAST(EnabledTables.PHYSICALTABLENAME as nvarchar(128)) COLLATE SQL_Latin1_General_CP1_CI_AS

LEFT OUTER JOIN sys.change_tracking_tables ChangeTrackingTables on DatabaseTables.object_id = ChangeTrackingTables.object_id

Once this change has been made and the new stored procedure is saved, you will be able to enable “Partial Containment” on the AX 2012 database, which will allow you to set up AlwaysOn Availability Groups.

Written by Michael DeVoe




Источник: http://blogs.msdn.com/b/axinthefield...ty-groups.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
addicted2ax: Dynamics AX 2012 & SQL Server 2008R2: Cross Join vs. Inner Join – Houston we have *NO* Problem Blog bot DAX Blogs 0 20.12.2012 20:11
dynamicsaxbi: Better together: Microsoft Dynamics AX 2012 R2 and SQL Server Power View Blog bot DAX Blogs 0 12.12.2012 13:11
Microsoft Dynamics CRM Team Blog: Microsoft Dynamics CRM and SQL Server 2012 - Better Together Blog bot Dynamics CRM: Blogs 0 08.03.2012 04:32
emeadaxsupport: New Content for Microsoft Dynamics AX 2012 : October 2011 Blog bot DAX Blogs 0 27.10.2011 17:11
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:18.