2014-11-05 2 views
0

Как удалить старые записи из BAMPrimaryImport TDDS_FailedTrackingData table?
... не TDDS_FailedTrackingData в базе BizTalkDTADbКак удалить старые записи из таблицы BDSRimaryImport TDDS_FailedTrackingData?

Наша производственная система имеет 2+ миллионов записей в BAMPrimaryImport.dbo.TDDS_FailedTrackingData, а также различные задания BizTalk SQL Agent отлично работает, но эти записи все еще там.

ОБНОВЛЕНИЕ: Мы отсортировали проблему, которая вызывала сбой (скрещенные пальцы), поэтому новых записей нет.

+0

Если я правильно помню, это означает, что у вас есть проблема, которая требует внимания. Что-то пытается записать в BAM, но не удается из-за отсутствия артефактов или какой-либо другой проблемы с отслеживанием. Из этой таблицы можно удалить вручную (мы делаем). Я вижу, что вы используете BizTalk 2010, но не уверены, что что-то подобное будет применяться, но в более ранних версиях произошла ошибка, которая не удаляла эти данные: http://support.microsoft.com/kb/977289 – Rodders

+0

@SuitedAces Спасибо за ответ. Мы отсортировали проблему, вызвавшую сбой (скрещенные пальцы), поэтому новых записей нет. Я полагаю, что статья Microsoft KB ссылается на TDDS_FailedTrackingData в базе данных BizTalkDTADb, а не на BAMPrimaryImport. – SteveC

ответ

0

Похоже, это тот случай, когда вручную удалить записи (TRUNCATE TABLE или DELETE FROM) ...


Я использовал Red Gate в SQL поиск и искал TDDS_FailedTrackingData по всей базе данных ... все объекты и все базы данных

Найдено 8 ссылок во всей системе ... смотри ниже

Записи удаляются из [BizTalkDTADb].[dbo].[TDDS_FailedTrackingData] в двух хранимых процедур ...

  • [dtasp_CleanHMData] делает TRUNCATE TABLE
  • [dtasp_PurgeTrackingDatabase_Internal] делает DELETE FROM для 100 записей в то время

Однако база данных [BAMPrimaryImport] имеет только одну хранимую процедуру, которая имеет какое-либо упоминание таблицы [BAMPrimaryImport].[dbo].[TDDS_FailedTrackingData] ...

  • [BAMPrimaryImport].[dbo].[TDDS_InsertFailedTrackingData]
  • и он просто вставляет запись, с добавлением текущего времени даты & от GETUTCDATE()

Найдено много сообщений об очистке вниз [BizTalkDTADb] стола, но очень мало по очистке вниз [BAMPrimaryImport]

Это на TechNet от BizTalk MVP

И это на MSDN от другого эксперта BizTalk.

SQL Search results for TDDS_FailedTrackingData

0

Это может быть полезно для вас, а также: http://www.codit.eu/blog/2014/07/03/maintaining-biztalk-bam-databases/

Я не утверждаю, что это фактический ответ на ваш вопрос, но речь идет о сохранении базы данных BAM с помощью NSVacuum.

+0

Спасибо за ответ. К сожалению, сообщение в блоге и различные связанные записи сосредоточены на реальных таблицах BAM ... ничего о таблице TDDS_FailedTrackingData :-( – SteveC

0

Вы можете вручную выполнить простую УДАЛИТЬ TSQL скрипт:

DELETE FROM [BAMPrimaryImport].[dbo].[TDDS_FailedTrackingData] 
+0

Спасибо за ответ ... Я пришел к такому же выводу. У вас есть какие-либо другие знания о недостающей «очистке» функциональности или вы просто отвечаете, как удалить записи? Также я не уверен, что «DELETE FROM» будет лучшим вариантом, если у нас будет 2,1 миллиона записей, я думаю, что «TRUNCATE TABLE» будет лучше – SteveC

+0

У меня нет особых знаний об этой отсутствующей функциональности. Я рассматриваю эту таблицу как таблицу журналов, которая помогает идентифицировать некоторые проблемы с протоколированием. Оператор TRUNCATE будет быстрее, но вы потеряете последовательность. не проблема. –