Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie das BAM-Datenwartungspaket (BAM_DM_<activity name>
) ausführen, kopiert BAM jede Partition in der primären BAM-Importdatenbank in eine separate Tabelle in der BAM-Archivdatenbank. Wenn Sie die Archivdatenbank trennen und sie für die Abfrage erneut anfügen, ist es schwierig, die Daten für Ihre Abfrage zu finden.
Sie können partitionierte Ansichten in der BAM-Archivdatenbank erstellen, um das Auffinden der Daten zu erleichtern. BAM unterstützt bis zu 253 Partitionen. Für jede Aktivität generiert BAM ein BAM-Datenwartungs-DTS-Paket, das die Aktivitätsdaten in die BAM-Archivdatenbank kopiert und dann aus der PRIMÄREN IMPORT-Datenbank des BAM entfernt. Wenn die Archivdatenbank nach dem Kopieren der Daten fehlschlägt, aber vor der nächsten Sicherung gehen die Daten verloren.
Die Lösung, um verlorene Daten zu verhindern, besteht darin, ein einzelnes Archivierungspaket zu haben, das zuerst die alten Daten aus allen Aktivitäten kopiert, dann die BAM-Archivdatenbank gesichert und schließlich die Partitionen abbricht, die aus der primären BAM-Importdatenbank kopiert wurden.
Voraussetzungen
Sie müssen als Mitglied der Gruppe "BizTalk Server-Administratoren" angemeldet sein, um dieses Verfahren auszuführen.
Erstellen einer partitionierten Ansicht in der BAM-Archivdatenbank (SQL Server 2008 SP1 oder SQL Server 2008 R2)
Öffnen Sie SQL Server Management Studio.
Wählen Sie die BAM-Archivdatenbank aus, und klicken Sie dann auf "Neue Abfrage".
Zeigen Sie im Menü "Abfrage " auf " Ergebnisse an ", und klicken Sie dann auf " Ergebnisse" in "Text".
Kopieren Sie das folgende SQL-Skript in den Abfragebereich. Ersetzen Sie <Aktivitätsnamen> durch Ihren Aktivitätsnamen, und ersetzen Sie
<view type>
entweder durch Instanzen für die Ansicht "Instanzen" oder Beziehungen für die Beziehungsansicht.set nocount on declare @activityName as nvarchar(128) declare @viewType as nvarchar(50) set @activityName = N'<activity name>'-- Substitute your activity name here set @viewType = N'<view type>'-- Substitute the view type here, either "Instances" or "Relationships" declare @tableName nvarchar(128) declare @viewName nvarchar(128) declare @isFirstTable bit declare @scriptLine nvarchar(300) set @viewName = N'bam_' + @activityName + '_' + @viewType + 'View' select N'SELECT Name FROM sysobjects where name = N''' + @viewName + ''' and type = ''V''' + char(13) + char(10) + 'IF @@ROWCOUNT > 0 DROP VIEW ' + @viewName + char(13) + char(10) + 'GO' select 'CREATE VIEW ' + @viewName + ' AS ' + char(13) + char(10) declare instance_cursor cursor local for select name from sysobjects where name like N'bam_' + @activityName + '_' + @viewType + '_%' and type = 'U' SET @isFirstTable = 1 OPEN instance_cursor FETCH NEXT FROM instance_cursor INTO @tableName WHILE @@fetch_status = 0 BEGIN if @isFirstTable = 1 BEGIN SET @scriptLine = N'SELECT * FROM [' + @tableName + ']' SET @isFirstTable = 0 END ELSE SET @scriptLine = N'UNION ALL SELECT * FROM [' + @tableName + ']' SELECT @scriptLine FETCH NEXT FROM instance_cursor INTO @tableName END CLOSE instance_cursor DEALLOCATE instance_cursor select 'GO' set nocount off
Führen Sie die Abfrage aus.