Share via


Aktuelle Änderungen in der SQL Server 2005-Replikation

Aktualisiert: 14. April 2006

In diesem Thema werden die Änderungen an Replikationsfeatures beschrieben, die notwendige Änderungen an Anwendungen nach sich ziehen können.

ms143470.note(de-de,SQL.90).gifHinweis:
Das Thema ist sowohl in der Hilfe zum Setup als auch in der SQL Server 2005-Onlinedokumentation enthalten. Über die fett formatierten Hyperlinks in der Hilfe zum Setup gelangen Sie zu Themen, die nur in der Onlinedokumentation verfügbar sind.

Aktuelle Änderungen mit Auswirkungen auf alle Replikationstypen

Die folgenden aktuellen Änderungen wirken sich auf alle Replikationstypen in Microsoft SQL Server 2005 aus.

Feature Beschreibung

Erforderliche Änderungen an Replikationsskripts

Das Sicherheitsmodell des Replikations-Agents aus Microsoft SQL Server 2000 wurde geändert. Ausführliche Informationen zum Sicherheitsmodell finden Sie unter Sicherheitsmodell des Replikations-Agents. Wenn Sie in SQL Server 2005 Mitglied der festen sysadmin-Serverrolle sind und Replikationsskripts in SQL Server 2000 oder SQL Server 7.0 ausführen, erfolgt die Ausführung ordnungsgemäß. Wenn Sie ein Mitglied der festen dbo-Datenbankrolle oder einer anderen Rolle sind, schlagen die Skripts fehl, und sie müssen aktualisiert werden. Informationen zum Aktualisieren von Skripts finden Sie unter How to: Upgrade Replication Scripts (Replication Transact-SQL Programming). Skripts, die von Mitgliedern der sysadmin-Rolle ausgeführt werden, müssen nicht aktualisiert werden. Dennoch empfiehlt es sich, die Aktualisierung vorzunehmen, um von den Verbesserungen hinsichtlich der Sicherheit profitieren zu können.

Lokale Verbindungen für Replikations-Agents

Beim Aktualisieren auf SQL Server 2005 werden alle lokalen Verbindungen mit SQL Server-Authentifizierung so bearbeitet, dass künftig die Windows-Authentifizierung verwendet wird. Lokale Verbindungen sind die Verbindungen, die durch einen Agent zu einer Instanz von SQL Server auf demselben Computer wie der Agent hergestellt werden. Wenn beispielsweise der Merge-Agent für ein Pullabonnement auf dem Abonnenten ausgeführt wird, handelt es sich bei den zum Abonnenten hergestellten Verbindungen um lokale Verbindungen.

Bei früheren Versionen von SQL Server wurden Agents standardmäßig im Kontext des Kontos des SQL Server-Agent-Dienstes ausgeführt. Nach dem Update werden lokale Verbindungen im Kontext dieses Kontos hergestellt. SQL Server 2005 ermöglicht eine differenzierte Steuerung der einzelnen Konten, in deren Kontext die Replikations-Agents ausgeführt und die integrierten Windows-Verbindungen mit Datenbanken und anderen Ressourcen hergestellt werden, wobei für jeden Agent ein eigenes Konto angegeben werden kann. Es wird empfohlen, nach dem Update für jeden Agent ein anderes Konto festzulegen. Weitere Informationen finden Sie unter Aktualisieren replizierter Datenbanken und unter Sicherheitsmodell des Replikations-Agents.

ActiveX-Steuerelemente

Alle ActiveX-Steuerelemente sind als unsicher für die Skripterstellung und für die Initialisierung gekennzeichnet.

Das ActiveX-Steuerelement des Snapshot-Agents ist in SQL Server 2005 nicht verfügbar. Verwenden Sie stattdessen den neuen, verwalteten Snapshot-Agent. Weitere Informationen finden Sie unter SnapshotGenerationAgent und unter How to: Create the Initial Snapshot (RMO Programming).

Kennwort für das distributor_admin-Konto

Vertrauenswürdige Verbindungen zwischen einem Verleger und einem Remoteverteiler werden nicht mehr unterstützt, da bei diesen Verbindungen kein Kennwort erforderlich ist (vertrauenswürdige Verbindungen wurden in Versionen vor SQL Server 2000 Service Pack 3 standardmäßig verwendet). Wenn Sie einen Remoteverteiler verwenden, müssen Sie vor dem Aktualisieren auf SQL Server 2005 vertraute Verbindungen in nicht vertraute Verbindungen umwandeln. (Dies betrifft nicht Verleger, die einen lokalen Verteiler verwenden.) Weitere Informationen zum distributor_admin-Konto finden Sie unter Schützen des Verteilers.

So bestimmen Sie den zu verwendenden Verbindungstyp

So wechseln Sie zu einer nicht vertrauten Verbindung

  1. Führen Sie auf dem Verteiler sp_changedistpublisher (Transact-SQL) aus, und geben Sie dabei für den Parameter @property den Wert 'trusted' und für den Parameter @value den Wert 'false' an.
    ms143470.note(de-de,SQL.90).gifHinweis:
  2. Führen Sie sp_changedistributor_password (Transact-SQL) sowohl auf dem Verleger als auch auf dem Verteiler aus, und geben Sie dabei für den Parameter @password ein sicheres Kennwort an.

In SQL Server Express ist der SQL Server-Agent nicht enthalten.

Wenn Sie auf SQL Server Express aktualisieren, müssen Sie die Replikationssynchronisierung neu konfigurieren, da der SQL Server-Agent in SQL Server Express nicht enthalten ist.

Wenn Sie Pullabonnements verwenden möchten, müssen Sie zum Synchronisieren Replikationsverwaltungsobjekte (Replication Management Objects, RMO) oder die Synchronisierungsverwaltung von Windows verwenden oder den Replikations-Agent in der Befehlszeile ausführen. Weitere Informationen finden Sie unter Replizieren von Daten nach SQL Server Express.

Wenn Sie zum Ausführen von Replikations-Agent-Aufträgen auch weiterhin den SQL Server-Agent verwenden möchten, müssen Sie Pushabonnements verwenden, oder Sie aktualisieren auf eine andere Version von SQL Server. (Der SQL Server-Agent ist in allen Versionen außer SQL Server Express und Microsoft SQL Server 2005 Compact Edition enthalten.) Bei Pushabonnements wird der Verteilungs-Agent oder der Merge-Agent auf dem Verteiler ausgeführt, damit der SQL Server-Agent verfügbar ist (SQL Server Express kann nicht als Verteiler verwendet werden).

Microsoft Access (Jet 4.0)-Abonnenten

Jet ist die von Access als Grundlage verwendete Datenbank und unterstützt die Replikation von Abonnements für Jet-Datenbanken in SQL Server 2000. Diese Abonnements werden nicht mehr unterstützt.

Es wird empfohlen, stattdessen Microsoft SQL Server 2005 Express Edition zu verwenden. In Access kann eine SQL Server-Datenbank als Backend verwendet werden, und SQL Server-Datenbanken sind von diesem Problem nicht betroffen. Weitere Informationen finden Sie unter Replizieren von Daten nach SQL Server Express.

Aktuelle Änderungen bei der Transaktionsreplikation

Die folgenden aktuellen Änderungen betreffen die Transaktionsreplikation in SQL Server 2005.

Feature

Beschreibung

Message Queuing-Option für Abonnements mit verzögerter Aktualisierung über eine Warteschlange

Bei Abonnements mit verzögertem Aktualisieren über eine Warteschlange werden die Änderungen der Abonnenten in eine Warteschlange geschrieben; anschließend werden die Änderungen vom Warteschlangenlese-Agent aus der Warteschlange gelesen und an den Verleger übermittelt. In SQL Server 2000 kann für Abonnements eine SQL Server-Warteschlange bzw. Message Queuing verwendet werden, um Änderungen in die Warteschlange einzureihen. Der Warteschlangentyp wurde durch den Parameter @queue_type von sp_addpublication (Transact-SQL) angegeben, für den die Werte sql oder msmq zulässig sind. In SQL Server 2005 ist nur der Wert sql zulässig. Vorhandene Publikationen, für die Message Queuing verwendet wird, werden während der Aktualisierung geändert, um eine SQL Server-Warteschlange zu verwenden. Wenn Sie Anwendungen verwenden, die auf der verzögerten Aktualisierung über Message Queuing basieren, müssen diese Anwendungen für eine SQL Server-Warteschlange umgeschrieben werden. Weitere Informationen zu Abonnements mit verzögerter Aktualisierung über eine Warteschlange finden Sie unter Aktualisierbare Abonnements für die Transaktionsreplikation.

Durch die Aktualisierung werden die vorhandenen Message Queuing-Abonnementwarteschlangen (MSMQ) entfernt, wenn der Message Queuing-Dienst ausgeführt wird und SQL Server aktualisiert wird.

ms143470.note(de-de,SQL.90).gifWichtig:

Unter Windows 2000 und Windows XP muss der MSDTC-Dienst (Microsoft Distributed Transaction Coordinator) ebenfalls ausgeführt werden, da für Message Queuing auf diesen Betriebssystemen MSDTC erforderlich ist.

Wenn der Message Queuing-Dienst nicht ausgeführt wird, entfernen Sie alle Warteschlangen nach Abschluss der Aktualisierung manuell. Weitere Informationen zum Entfernen von Warteschlangen finden Sie in der Windows-Dokumentation.

Aktuelle Änderungen bei der Mergereplikation

Die folgenden aktuellen Änderungen betreffen die Mergereplikation in SQL Server 2005.

Feature Beschreibung

Veröffentlichen aus SQL Server Express

SQL Server MSDE kann bei Mergepublikationen als Verleger dienen. SQL Server Express, der Ersatz für MSDE, kann hingegen nicht als Verleger verwendet werden. Es kann Merge-, Transaktions- und Snapshotpublikationen abonnieren. Bei Merge- und Transaktionsreplikation mit aktualisierbaren Abonnements können Änderungen von den Abonnenten an den Verleger zurückgegeben werden. Weitere Informationen zu SQL Server Express finden Sie unter Replizieren von Daten nach SQL Server Express.

Batchverarbeitung von Änderungen

In früheren Versionen von SQL Server wurden vom Merge-Agent vorgenommene Änderungen zeilenweise ausgeführt. Bei SQL Server 2005 werden Änderungen zur Leistungsverbesserung in Batches gesammelt. Daher können mehrere Zeilen in einer Anweisung eingefügt, aktualisiert oder gelöscht werden. Wenn veröffentlichte Tabellen in den Publikations- und Abonnementdatenbanken Trigger enthalten, müssen diese mehrzeilige Einfüge-, Update- und Löschvorgänge verarbeiten können. Weitere Informationen finden Sie unter Trigger bei mehrzeiligen Operationen.

Neuerstellen von Konflikttabellen

Beim Update auf SQL Server 2005 werden Konflikttabellen mit dem Besitzer DBO neu erstellt. Wenn eine der Tabellen in SQL Server 2000 einen anderen Benutzer als Besitzer aufweist, muss die Anwendung u. U. geändert werden.

Bei der Mergereplikation wird für jeden Artikel in einer Publikation eine Konflikttabelle erstellt. Sie erhält einen Namen im Format conflict_PublicationName_ArticleName. Sämtliche Metadatentabellen werden beim Update neu erstellt, und alle Konflikttabellen werden im DBO-Schema erstellt.

Neu zugewiesene Identitätsbereiche

Tabellen, die die automatische Identitätsbereichsverwaltung verwenden, können beim Update durch die Replikation neue Identitätsbereiche zugewiesen werden. Wenn der dem Abonnenten zugewiesene Identitätsbereich einer Tabelle größer ist als der Identitätsbereich des Verlegers, wird dem Verleger durch die Replikation ein Bereich im Umfang des Identitätsbereichs des Abonnenten zugewiesen.

Um die für die einzelnen Artikel verwendeten Bereiche zu bestimmen, führen Sie in der Publikationsdatenbank sp_helpmergearticle (Transact-SQL) aus, und überprüfen Sie die pub_identity_range-Spalte und die identity_range-Spalte.

Siehe auch

Konzepte

Abwärtskompatibilität von Replikationen

Andere Ressourcen

Replikationsverbesserungen

Hilfe und Informationen

Informationsquellen für SQL Server 2005