Freigeben über


Tutorial: Konfigurieren der Transaktionsreplikation zwischen verwalteten Azure SQL-Instanzen und SQL Server

Gilt für:Azure SQL Managed Instance

Mithilfe der Transaktionsreplikation können Sie Daten von einer Datenbank auf eine andere replizieren, die auf SQL Server oder Azure SQL Managed Instance gehostet wird. Sql Managed Instance kann ein Herausgeber, Verteiler oder Abonnent in der Replikationstopologie sein. Unter Konfigurationen für die Transaktionsreplikation finden Sie die verfügbaren Konfigurationen.

In diesem Tutorial lernen Sie Folgendes:

  • Konfigurieren Sie eine von SQL verwaltete Instanz als Replikationsherausgeber.
  • Konfigurieren Einer SQL-verwalteten Instanz als Replikationsverteiler.
  • Konfigurieren von SQL Server als Abonnent.

Diagramm, das die Replikation zwischen einem Herausgeber einer verwalteten SQL-Instanz, einem SQL-Instanzverteiler und einem SQL Server-Abonnent zeigt

Dieses Lernprogramm richtet sich an ein erfahrenes Publikum und geht davon aus, dass der Benutzer mit der Bereitstellung und Verbindung mit SQL-verwalteten Instanzen und SQL Server-VMs in Azure vertraut ist.

Hinweis

In diesem Artikel wird die Verwendung der Transaktionsreplikation in einer verwalteten SQL-Datenbank-Instanz beschrieben. Es ist nicht mit Failovergruppen verknüpft, einem Azure SQL Managed Instance-Feature, mit dem Sie vollständige lesbare Replikate einzelner Instanzen erstellen können. Beim Konfigurieren der Transaktionsreplikation mit Failovergruppen sind weitere Aspekte zu berücksichtigen.

Voraussetzungen

Für dieses Tutorial wird Folgendes vorausgesetzt:

  • Ein Azure-Abonnement.
  • Erfahrung mit der Bereitstellung von zwei SQL-verwalteten Instanzen innerhalb desselben virtuellen Netzwerks.
  • Ein SQL Server-Abonnent, entweder lokal oder auf einer Azure-VM. In diesem Tutorial wird eine Azure-VM verwendet.
  • SQL Server Management Studio (SSMS) 18.0 oder höher.
  • Die neueste Version von Azure PowerShell
  • Die Ports 445 und 1433 ermöglichen SQL-Datenverkehr sowohl in der Azure-Firewall als auch in der Windows-Firewall.

Erstellen der Ressourcengruppe

Verwenden Sie den folgenden PowerShell-Codeausschnitt, um eine neue Ressourcengruppe zu erstellen:

# set variables
$ResourceGroupName = "SQLMI-Repl"
$Location = "East US 2"

# Create a new resource group
New-AzResourceGroup -Name  $ResourceGroupName -Location $Location

Erstellen von zwei SQL-verwalteten Instanzen

Erstellen Sie zwei SQL-verwaltete Instanzen in dieser neuen Ressourcengruppe mithilfe des Azure-Portals.

  • Der Name der verwalteten Sql-Instanz des Herausgebers sollte sql-mi-publisher (zusammen mit einigen Zeichen für die Randomisierung) sein, und der Name des virtuellen Netzwerks sollte sein vnet-sql-mi-publisher.

  • Der Name der von SQL verwalteten Verteilerinstanz sollte sql-mi-distributor (zusammen mit einigen Zeichen für die Randomisierung) sein und sich im selben virtuellen Netzwerk wie die verwaltete Instanz des Herausgebers SQL befinden.

    Screenshot der Verwendung des Herausgebers VNet für den Distributor.

Weitere Informationen zum Erstellen einer verwalteten SQL-Instanz finden Sie unter Erstellen einer sql-verwalteten Instanz im Portal.

Hinweis

Aus Gründen der Einfachheit und da es sich um die am häufigsten verwendete Konfiguration handelt, schlägt dieses Lernprogramm vor, die sql-verwaltete Distributorinstanz innerhalb desselben virtuellen Netzwerks wie der Herausgeber zu platzieren. Es ist aber auch möglich, den Verteiler in einem separaten virtuellen Netzwerk zu erstellen. Dazu müssen Sie das VNet-Peering zwischen den virtuellen Netzwerken des Herausgebers und Distributors konfigurieren und dann VNet-Peering zwischen den virtuellen Netzwerken des Distributors und Abonnenten konfigurieren.

Erstellen einer SQL Server-VM

Erstellen Sie im Azure-Portal einen virtuellen SQL Server-Computer (SQL Server-VM). Die SQL Server-VM sollte über die folgenden Merkmale verfügen:

  • Name: sql-vm-subscriber
  • Bild: SQL Server 2016 oder höher
  • Ressourcengruppe: identisch mit der sql-verwalteten Instanz
  • Virtuelles Netzwerk: sql-vm-subscriber-vnet

Weitere Informationen zum Bereitstellen einer SQL Server-VM in Azure finden Sie unter Schnellstart: Erstellen einer SQL Server-VM.

Konfigurieren von VNET-Peering

Konfigurieren Sie das VNet-Peering, um die Kommunikation zwischen dem virtuellen Netzwerk der beiden von SQL verwalteten Instanzen und dem virtuellen Netzwerk von SQL Server zu ermöglichen. Verwenden Sie hierzu den folgenden PowerShell-Codeausschnitt:

# Set variables
$SubscriptionId = '<SubscriptionID>'
$resourceGroup = 'SQLMI-Repl'
$pubvNet = 'sql-mi-publisher-vnet'
$subvNet = 'sql-vm-subscriber-vnet'
$pubsubName = 'Pub-to-Sub-Peer'
$subpubName = 'Sub-to-Pub-Peer'

$virtualNetwork1 = Get-AzVirtualNetwork `
  -ResourceGroupName $resourceGroup `
  -Name $pubvNet

 $virtualNetwork2 = Get-AzVirtualNetwork `
  -ResourceGroupName $resourceGroup `
  -Name $subvNet

# Configure VNet peering from publisher to subscriber
Add-AzVirtualNetworkPeering `
  -Name $pubsubName `
  -VirtualNetwork $virtualNetwork1 `
  -RemoteVirtualNetworkId $virtualNetwork2.Id

# Configure VNet peering from subscriber to publisher
Add-AzVirtualNetworkPeering `
  -Name $subpubName `
  -VirtualNetwork $virtualNetwork2 `
  -RemoteVirtualNetworkId $virtualNetwork1.Id

# Check status of peering on the publisher VNet; should say connected
Get-AzVirtualNetworkPeering `
 -ResourceGroupName $resourceGroup `
 -VirtualNetworkName $pubvNet `
 | Select PeeringState

# Check status of peering on the subscriber VNet; should say connected
Get-AzVirtualNetworkPeering `
 -ResourceGroupName $resourceGroup `
 -VirtualNetworkName $subvNet `
 | Select PeeringState

Nachdem VNet-Peering eingerichtet wurde, testen Sie die Konnektivität, indem Sie SQL Server Management Studio (SSMS) auf dem SQL Server-Host starten und eine Verbindung mit beiden von SQL verwalteten Instanzen herstellen. Weitere Informationen zum Herstellen einer Verbindung mit einer verwalteten SQL-Instanz mit SSMS finden Sie unter Verwenden von SSMS zum Herstellen einer Verbindung mit der verwalteten SQL-Instanz.

Screenshot, der zeigt, wie die Konnektivität mit den verwalteten SQL-Instanzen getestet wird.

Erstellen einer privaten DNS-Zone

Eine private DNS-Zone ermöglicht das DNS-Routing zwischen den von SQL verwalteten Instanzen und SQL Server.

Erstellen einer privaten DNS-Zone

  1. Melden Sie sich beim Azure-Portal an.

  2. Wählen Sie die Option Ressource erstellen aus, um eine neue Azure-Ressource zu erstellen.

  3. Suchen Sie auf dem Azure Marketplace nach private dns zone.

  4. Wählen Sie die private DNS-Zonenressource aus, die von Microsoft veröffentlicht wurde, und wählen Sie dann "Erstellen" aus, um die DNS-Zone zu erstellen.

  5. Wählen Sie in der Dropdownliste die Abonnement- und Ressourcengruppe aus.

  6. Geben Sie einen beliebigen Namen für Ihre DNS-Zone an, z. B. repldns.com.

    Screenshot der Zone

  7. Klicken Sie auf Überprüfen + erstellen. Überprüfen Sie die Parameter für Ihre private DNS-Zone, und wählen Sie dann "Erstellen" aus, um Ihre Ressource zu erstellen.

Erstellen eines A-Eintrags

  1. Navigieren Sie zu Ihrer neuen Privaten DNS-Zone, und wählen Sie Übersicht aus.

  2. Wählen Sie + Eintrag aus, um einen neuen A-Eintrag zu erstellen.

  3. Geben Sie den Namen Ihrer SQL Server-VM und die private interne IP-Adresse an.

    Screenshot, der zeigt, wie ein A-Datensatz konfiguriert wird.

  4. Wählen Sie OK aus, um den A-Eintrag zu erstellen.

  1. Navigieren Sie zu Ihrer neuen Privaten DNS-Zone, und wählen Sie Verknüpfungen virtueller Netzwerke aus.

  2. Wählen Sie + Hinzufügen.

  3. Geben Sie einen Namen für die Verknüpfung an, z. B. Pub-link.

  4. Wählen Sie Ihr Abonnement aus der Dropdownliste aus, und wählen Sie dann das virtuelle Netzwerk für die von Sql verwaltete Instanz Ihres Herausgebers aus.

  5. Aktivieren Sie das Kontrollkästchen neben Automatische Registrierung aktivieren.

    Screenshot, der zeigt, wie ein VNet-Link erstellt wird.

  6. Wählen Sie OK aus, um eine Verknüpfung mit Ihrem virtuellen Netzwerk einzurichten.

  7. Wiederholen Sie diese Schritte, um einen Link für das virtuelle Abonnentennetzwerk mit einem Namen wie Sub-link hinzuzufügen.

Erstellen eines Azure-Speicherkontos

Erstellen Sie ein Azure-Speicherkonto für das Arbeitsverzeichnis und anschließend im Speicherkonto eine Dateifreigabe.

Kopieren Sie den Dateifreigabepfad im Format: \\storage-account-name.file.core.windows.net\file-share-name

Beispiel: \\replstorage.file.core.windows.net\replshare

Kopieren Sie die Verbindungszeichenfolge für den Speicherzugriffsschlüssel im folgenden Format: DefaultEndpointsProtocol=https;AccountName=<Storage-Account-Name>;AccountKey=****;EndpointSuffix=core.windows.net

Beispiel: DefaultEndpointsProtocol=https;AccountName=replstorage;AccountKey=123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ==;EndpointSuffix=core.windows.net

Weitere Informationen finden Sie unter Verwalten von Speicherkonto-Zugriffsschlüsseln.

Erstellen einer Datenbank

Erstellen Sie eine neue Datenbank in der verwalteten Sql-Instanz des Herausgebers. Gehen Sie dazu folgendermaßen vor:

  1. Starten Sie SQL Server Management Studio unter on SQL Server.
  2. Stellen Sie eine Verbindung mit der vom Herausgeber verwalteten SQL-Instanz (sql-mi-publisher) her.
  3. Öffnen Sie ein Fenster "Neue Abfrage ", und führen Sie die folgende T-SQL-Abfrage aus, um die Datenbank zu erstellen.
-- Create the databases
USE [master]
GO

-- Drop database if it exists
IF EXISTS (SELECT * FROM sys.sysdatabases WHERE name = 'ReplTutorial')
BEGIN
    DROP DATABASE ReplTutorial
END
GO

-- Create new database
CREATE DATABASE [ReplTutorial]
GO

-- Create table
USE [ReplTutorial]
GO
CREATE TABLE ReplTest (
   ID INT NOT NULL PRIMARY KEY,
   c1 VARCHAR(100) NOT NULL,
   dt1 DATETIME NOT NULL DEFAULT getdate()
)
GO

-- Populate table with data
USE [ReplTutorial]
GO

INSERT INTO ReplTest (ID, c1) VALUES (6, 'pub')
INSERT INTO ReplTest (ID, c1) VALUES (2, 'pub')
INSERT INTO ReplTest (ID, c1) VALUES (3, 'pub')
INSERT INTO ReplTest (ID, c1) VALUES (4, 'pub')
INSERT INTO ReplTest (ID, c1) VALUES (5, 'pub')
GO
SELECT * FROM ReplTest
GO

Konfigurieren der Verteilung

Sobald die Verbindung hergestellt wurde und Sie über eine Beispieldatenbank verfügen, können Sie die Verteilung für die verwaltete SQL-Instanz des Verteilers konfigurieren (sql-mi-distributor). Gehen Sie dazu folgendermaßen vor:

  1. Starten Sie SQL Server Management Studio unter on SQL Server.

  2. Stellen Sie eine Verbindung mit der von SQL verwalteten Verteilerinstanz (sql-mi-distributor) her.

  3. Öffnen Sie ein Fenster "Neue Abfrage ", und führen Sie den folgenden Transact-SQL Code aus, um die Verteilung in der sql-verwalteten Instanz des Verteilers zu konfigurieren:

    EXEC sp_adddistributor @distributor = 'sql-mi-distributor.b6bf57.database.windows.net', @password = '<distributor_admin_password>'
    
    EXEC sp_adddistributiondb @database = N'distribution'
    
    EXEC sp_adddistpublisher @publisher = 'sql-mi-publisher.b6bf57.database.windows.net', -- primary publisher
         @distribution_db = N'distribution',
         @security_mode = 0,
         @login = N'azureuser',
         @password = N'<publisher_password>',
         @working_directory = N'\\replstorage.file.core.windows.net\replshare',
         @storage_connection_string = N'<storage_connection_string>'
         -- example: @storage_connection_string = N'DefaultEndpointsProtocol=https;AccountName=replstorage;AccountKey=123456789aBcDeFgHiJkLmNoPqRsTuVwXyZ==;EndpointSuffix=core.windows.net'
    

    Hinweis

    Achten Sie darauf, dass Sie für den Parameter \ nur umgekehrte Schrägstriche (@working_directory) verwenden. Die Verwendung eines regulären Schrägstrichs (/) kann zu einem Fehler führen, wenn die Verbindung mit der Dateifreigabe hergestellt wird.

  4. Stellen Sie eine Verbindung mit der vom Herausgeber verwalteten SQL-Instanz (sql-mi-publisher) her.

  5. Öffnen Sie ein Fenster "Neue Abfrage ", und führen Sie den folgenden Transact-SQL Code aus, um den Verteiler beim Herausgeber zu registrieren:

    Use MASTER
    EXEC sys.sp_adddistributor @distributor = 'sql-mi-distributor.b6bf57.database.windows.net', @password = '<distributor_admin_password>'
    

Erstellen der Veröffentlichung

Nachdem die Verteilung konfiguriert wurde, können Sie die Publikation erstellen. Gehen Sie dazu folgendermaßen vor:

  1. Starten Sie SQL Server Management Studio unter on SQL Server.

  2. Stellen Sie eine Verbindung mit der vom Herausgeber verwalteten SQL-Instanz (sql-mi-publisher) her.

  3. Erweitern Sie im Objekt-Explorer den Knoten Replikation, und klicken Sie mit der rechten Maustaste auf den Ordner Lokale Veröffentlichung. Wählen Sie Neue Veröffentlichung... aus.

  4. Wählen Sie Weiter aus, um die Willkommensseite zu verlassen und den Vorgang fortzusetzen.

  5. Wählen Sie auf der Seite Veröffentlichungsdatenbank die Datenbank ReplTutorial aus, die Sie zuvor erstellt haben. Wählen Sie Weiter aus.

  6. Wählen Sie auf der Seite Publikationstyp die Option Transaktionsveröffentlichung aus. Wählen Sie Weiter aus.

  7. Aktivieren Sie auf der Seite Artikel das Kontrollkästchen neben Tabellen. Wählen Sie Weiter aus.

  8. Wählen Sie auf der Seite Tabellenzeilen filtern die Option Weiter aus, ohne Filter hinzuzufügen.

  9. Aktivieren Sie auf der Seite Momentaufnahme-Agent das Kontrollkästchen neben der Option Create snapshot immediately and keep the snapshot available to initialize subscriptions (Momentaufnahme sofort erstellen und zum Initialisieren von Abonnements vorhalten). Wählen Sie Weiter aus.

  10. Wählen Sie auf der Seite "Agent-Sicherheit " die Option "Sicherheitseinstellungen" aus. Stellen Sie SQL Server-Anmeldeinformationen bereit, die für den Snapshot-Agent und zum Herstellen einer Verbindung mit dem Herausgeber verwendet werden sollen. Wählen Sie OK aus, um die Seite Sicherheit für den Momentaufnahme-Agent zu schließen. Wählen Sie Weiter aus.

    Screenshot, der zeigt, wie Snapshot Agent-Sicherheit konfiguriert wird.

  11. Wählen Sie auf der Seite Aktionen des Assistenten die Option Veröffentlichung erstellen und (optional) Skriptdatei mit Schritten zur Veröffentlichungserstellung generieren aus, wenn Sie dieses Skript zur späteren Verwendung speichern möchten.

  12. Benennen Sie auf der Seite "Assistent abschließen" Ihre Publikation ReplTest, und wählen Sie "Weiter" aus, um Ihre Publikation zu erstellen.

  13. Aktualisieren Sie nach der Erstellung der Veröffentlichung im Objekt-Explorer den Knoten Replikation, und erweitern Sie Lokale Veröffentlichungen, um Ihre neue Veröffentlichung anzuzeigen.

Erstellen des Abonnements

Nachdem die Veröffentlichung erstellt wurde, können Sie das Abonnement erstellen. Gehen Sie dazu folgendermaßen vor:

  1. Starten Sie SQL Server Management Studio unter on SQL Server.
  2. Stellen Sie eine Verbindung mit der vom Herausgeber verwalteten SQL-Instanz (sql-mi-publisher) her.
  3. Öffnen Sie ein Fenster vom Typ Neue Abfrage, und führen Sie den folgenden Transact-SQL-Code aus, um das Abonnement und den Verteilungs-Agent hinzuzufügen. Verwenden Sie den DNS als Teil des Abonnentennamens.
use [ReplTutorial]
exec sp_addsubscription
@publication = N'ReplTest',
@subscriber = N'sql-vm-subscriber.repldns.com', -- include the DNS configured in the private DNS zone
@destination_db = N'ReplSub',
@subscription_type = N'Push',
@sync_type = N'automatic',
@article = N'all',
@update_mode = N'read only',
@subscriber_type = 0

exec sp_addpushsubscription_agent
@publication = N'ReplTest',
@subscriber = N'sql-vm-subscriber.repldns.com', -- include the DNS configured in the private DNS zone
@subscriber_db = N'ReplSub',
@job_login = N'azureuser',
@job_password = '<Complex Password>',
@subscriber_security_mode = 0,
@subscriber_login = N'azureuser',
@subscriber_password = '<Complex Password>',
@dts_package_location = N'Distributor'
GO

Testen der Replikation

Nachdem die Replikation konfiguriert wurde, können Sie sie testen, indem Sie neue Elemente auf dem Verleger einfügen und beobachten, wie die Änderungen an den Abonnenten weitergegeben werden.

Führen Sie den folgenden T-SQL-Codeausschnitt aus, um die Zeilen auf dem Abonnenten anzuzeigen:

Use ReplSub
select * from dbo.ReplTest

Führen Sie den folgenden T-SQL-Codeausschnitt aus, um zusätzliche Zeilen auf dem Verleger einzufügen. Überprüfen Sie dann die Zeilen erneut auf dem Abonnenten.

Use ReplTutorial
INSERT INTO ReplTest (ID, c1) VALUES (15, 'pub')

Bereinigen von Ressourcen

  1. Navigieren Sie im Azure-Portal zu Ihrer Ressourcengruppe.
  2. Wählen Sie die verwalteten SQL-Instanzen und dann "Löschen" aus. Geben Sie yes das Textfeld ein, um zu bestätigen, dass Sie die Ressource löschen möchten, und wählen Sie dann "Löschen" aus. Dieser Vorgang kann einige Zeit in Anspruch nehmen, bis er im Hintergrund abgeschlossen ist, und bis er abgeschlossen ist, können Sie den virtuellen Cluster oder andere abhängige Ressourcen nicht löschen. Überwachen Sie den Löschvorgang auf der Registerkarte "Aktivität ", um zu bestätigen, dass Ihre verwaltete SQL-Instanz gelöscht wurde.
  3. Nachdem die von SQL verwaltete Instanz gelöscht wurde, löschen Sie den virtuellen Cluster , indem Sie ihn in Ihrer Ressourcengruppe auswählen und dann "Löschen" auswählen. Geben Sie yes das Textfeld ein, um zu bestätigen, dass Sie die Ressource löschen möchten, und wählen Sie dann "Löschen" aus.
  4. Löschen Sie alle verbleibenden Ressourcen. Geben Sie yes das Textfeld ein, um zu bestätigen, dass Sie die Ressource löschen möchten, und wählen Sie dann "Löschen" aus.
  5. Löschen Sie die Ressourcengruppe, indem Sie " Ressourcengruppe löschen" auswählen, den Namen der Ressourcengruppe myResourceGroupeingeben und dann "Löschen" auswählen.

Bekannte Fehler

Windows-Anmeldungen werden nicht unterstützt

Exception Message: Windows logins are not supported in this version of SQL Server.

Der Agent wurde mit einer Windows-Anmeldung konfiguriert, aber stattdessen muss eine SQL Server-Anmeldung verwendet werden. Nutzen Sie die Seite Agentsicherheit unter Veröffentlichungseigenschaften, um die Anmeldeinformationen auf eine SQL Server-Anmeldung umzustellen.

Fehler beim Herstellen der Verbindung mit Azure Storage

Connecting to Azure Files Storage '\\replstorage.file.core.windows.net\replshare' Failed to connect to Azure Storage '' with OS error: 53.
2019-11-19 02:21:05.07 Obtained Azure Storage Connection String for replstorage
2019-11-19 02:21:05.07 Connecting to Azure Files Storage '\\replstorage.file.core.windows.net\replshare'
2019-11-19 02:21:31.21 Failed to connect to Azure Storage '' with OS error: 53.

Dies liegt wahrscheinlich daran, dass Port 445 entweder in der Azure-Firewall, der Windows-Firewall oder beidem geschlossen ist.

Connecting to Azure Files Storage '\\replstorage.file.core.windows.net\replshare' Failed to connect to Azure Storage '' with OS error: 55.

Die Verwendung eines Schrägstrichs anstelle eines umgekehrten Schrägstrichs im Dateipfad für die Dateifreigabe kann auch diesen Fehler verursachen.

  • Dies ist akzeptabel: \\replstorage.file.core.windows.net\replshare
  • Dies kann zum Betriebssystemfehler 55 führen: \\replstorage.file.core.windows.net/replshare

Verbindung mit Abonnenten konnte nicht hergestellt werden

The process could not connect to Subscriber 'SQL-VM-SUBSCRIBER
Could not open a connection to SQL Server [53].
A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections.

T Mögliche Lösungen:

  • Stellen Sie sicher, dass Port 1433 geöffnet ist.
  • Stellen Sie sicher, dass TCP/IP für den Abonnenten aktiviert ist.
  • Vergewissern Sie sich, dass der DNS-Name beim Erstellen des Abonnenten verwendet wurde.
  • Vergewissern Sie sich, dass Ihre virtuellen Netzwerke in der privaten DNS-Zone richtig verknüpft sind.
  • Vergewissern Sie sich, dass Ihr A-Eintrag richtig konfiguriert ist.
  • Vergewissern Sie sich, dass Ihr VNET-Peering richtig konfiguriert ist.

Keine Veröffentlichungen vorhanden, die Sie abonnieren können

Wenn Sie ein neues Abonnement mithilfe des Assistenten " Neues Abonnement " hinzufügen, stellen Sie möglicherweise auf der Seite " Publikation " fest, dass keine Datenbanken und Publikationen als verfügbare Optionen aufgeführt sind, und möglicherweise wird die folgende Fehlermeldung angezeigt:

There are no publications to which you can subscribe, either because this server has no publications or because you do not have sufficient privileges to access the publications.

Es ist zwar möglich, dass diese Fehlermeldung korrekt ist und es wirklich keine Publikationen für den Herausgeber gibt, mit dem Sie eine Verbindung hergestellt haben, oder Sie verfügen über ausreichende Berechtigungen, eine ältere Version von SQL Server Management Studio könnte diesen Fehler auch verursachen. Versuchen Sie, ein Upgrade auf SQL Server Management Studio 18.0 oder höher durchzuführen, um dies als Grundursache auszuschließen.