ALTER DATABASE- (Transact-SQL)-DatenbankspiegelungALTER DATABASE (Transact-SQL) Database Mirroring

Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions)

Hinweis

Dieses Feature befindet sich im Wartungsmodus und wird möglicherweise in einer künftigen Version von Microsoft SQL Server entfernt.This feature is in maintenance mode and may be removed in a future version of Microsoft SQL Server. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.Avoid using this feature in new development work, and plan to modify applications that currently use this feature. Verwenden Sie stattdessen Always On-VerfügbarkeitsgruppenAlways On availability groups.Use Always On-VerfügbarkeitsgruppenAlways On availability groups instead.

Steuert die Datenbankspiegelung für eine Datenbank.Controls database mirroring for a database. Werte, die mit den Optionen für die Datenbankspiegelung angegeben werden, gelten für Kopien der Datenbank sowie für die gesamte Sitzung zur Datenbankspiegelung.Values specified with the database mirroring options apply to both copies of the database and to the database mirroring session as a whole. Pro ALTER DATABASE-Anweisung ist nur eine <database_mirroring_option>-Option erlaubt.Only one <database_mirroring_option> is permitted per ALTER DATABASE statement.

Hinweis

Es empfiehlt sich, die Konfiguration der Datenbankspiegelung außerhalb der Spitzenbetriebszeiten durchzuführen, da sich die Konfiguration auf die Leistung auswirken kann.We recommend that you configure database mirroring during off-peak hours because configuration can affect performance.

Informationen zu ALTER DATABASE-Optionen finden Sie unter ALTER DATABASE.For ALTER DATABASE options, see ALTER DATABASE. Informationen zu ALTER DATABASE SET-Optionen finden Sie unter ALTER DATABASE SET-Optionen.For ALTER DATABASE SET options, see ALTER DATABASE SET Options.

Symbol für Themenlink Transact-SQL-SyntaxkonventionenTopic link icon Transact-SQL Syntax Conventions

SyntaxSyntax


ALTER DATABASE database_name
SET { <partner_option> | <witness_option> }
  <partner_option> ::=
    PARTNER { = 'partner_server'
            | FAILOVER
            | FORCE_SERVICE_ALLOW_DATA_LOSS
            | OFF
            | RESUME
            | SAFETY { FULL | OFF }
            | SUSPEND
            | TIMEOUT integer
            }
  <witness_option> ::=
    WITNESS { = 'witness_server'
            | OFF
            }
  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 oder früher finden Sie unter Dokumentation zu früheren Versionen.To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

ArgumenteArguments

Wichtig

Ein SET PARTNER- oder SET WITNESS-Befehl kann nach der Eingabe erfolgreich abgeschlossen werden und dennoch später einen Fehler generieren.A SET PARTNER or SET WITNESS command can complete successfully when entered, but fail later.

Hinweis

Die Optionen der ALTER DATABASE-Datenbankspiegelung sind für enthaltene Datenbanken nicht verfügbar.ALTER DATABASE database mirroring options are not available for a contained database.

database_name Der Name der Datenbank, die geändert werden soll.database_name Is the name of the database to be modified.

PARTNER <partner_option> steuert die Datenbankeigenschaften, die die Failoverpartner einer Datenbankspiegelungssitzung und deren Verhalten definieren.PARTNER <partner_option> Controls the database properties that define the failover partners of a database mirroring session and their behavior. Einige Optionen von SET PARTNER können auf einem beliebigen der Partner festgelegt werden, andere sind auf den Prinzipal- oder den Spiegelserver beschränkt.Some SET PARTNER options can be set on either partner; others are restricted to the principal server or to the mirror server. Weitere Informationen finden Sie unter den jeweiligen Optionen von PARTNER weiter unten.For more information, see the individual PARTNER options that follow. Eine SET PARTNER-Klausel wirkt sich auf beide Kopien der Datenbank aus, unabhängig davon, für welchen Partner sie angegeben ist.A SET PARTNER clause affects both copies of the database, regardless of the partner on which it is specified.

Zum Ausführen der SET PARTNER-Anweisung muss die Option STATE der Endpunkte beider Partner auf STARTED festgelegt sein.To execute a SET PARTNER statement, the STATE of the endpoints of both partners must be set to STARTED. Außerdem muss ROLE für den Datenbank-Spiegelungsendpunkt jeder Partnerserverinstanz auf PARTNER oder ALL festgelegt sein.Note, also, that the ROLE of the database mirroring endpoint of each partner server instance must be set to either PARTNER or ALL. Weitere Informationen zum Angeben eines Endpunkts finden Sie unter Erstellen eines Endpunkts der Datenbankspiegelung für Windows-Authentifizierung.For information about how to specify an endpoint, see Create a Database Mirroring Endpoint for Windows Authentication. Verwenden Sie folgende Transact-SQLTransact-SQL-Anweisung, um die Rolle und den Status des Datenbank-Spiegelungsendpunkts einer Serverinstanz zu erfahren:To learn the role and state of the database mirroring endpoint of a server instance, on that instance, use the following Transact-SQLTransact-SQL statement:

SELECT role_desc, state_desc FROM sys.database_mirroring_endpoints

<partner_option> ::=<partner_option> ::=

Hinweis

Pro SET PARTNER-Klausel wird nur eine <partner_option>-Option zugelassen.Only one <partner_option> is permitted per SET PARTNER clause.

' partner_server ' Gibt die Netzwerkadresse des Servers einer SQL ServerSQL Server-Instanz an, die als Failoverpartner in einer neuen Datenbankspiegelungs-Sitzung fungiert.' partner_server ' Specifies the server network address of an instance of SQL ServerSQL Server to act as a failover partner in a new database mirroring session. Jede Sitzung erfordert zwei Partner, von denen einer als Prinzipalserver, der andere als Spiegelserver beginnt.Each session requires two partners: one starts as the principal server, and the other starts as the mirror server. Die beiden Partner sollten sich auf unterschiedlichen Computern befinden.We recommend that these partners reside on different computers.

Diese Option wird einmal pro Sitzung für jeden Partner angegeben.This option is specified one time per session on each partner. Für das Starten einer Datenbank-Spiegelungssitzung sind zwei ALTER DATABASE Datenbank SET PARTNER =' partner_server ' -Anweisungen erforderlich.Initiating a database mirroring session requires two ALTER DATABASE database SET PARTNER ='partner_server' statements. Ihre Reihenfolge ist wichtig.Their order is significant. Stellen Sie zuerst eine Verbindung mit dem Spiegelserver her, und geben Sie die Prinzipalserverinstanz als partner_server (SET PARTNER =' principal_server ' ) an.First, connect to the mirror server, and specify the principal server instance as partner_server (SET PARTNER ='principal_server'). Stellen Sie anschließend eine Verbindung mit dem Prinzipalserver her, und geben Sie die Spiegelserverinstanz als partner_server (SET PARTNER =' mirror_server ' ) an; auf diese Weise wird eine Datenbank-Spiegelungssitzung zwischen diesen beiden Partnern gestartet.Second, connect to the principal server, and specify the mirror server instance as partner_server (SET PARTNER ='mirror_server'); this starts a database mirroring session between these two partners. Weitere Informationen finden Sie weiter unten in diesem Thema unter Einrichten der Datenbankspiegelung.For more information, see Setting Up Database Mirroring.

Der Wert von partner_server ist eine Server-Netzwerkadresse.The value of partner_server is a server network address. Diese hat folgende Syntax:This has the following syntax:

TCP :// <system-address> : <port>TCP ://<system-address>:<port>

Hierbei gilt:where

  • <system-address> ist eine Zeichenfolge, beispielsweise ein Systemname, ein vollqualifizierter Domänenname oder eine IP-Adresse, die das Zielcomputersystem eindeutig identifiziert.<system-address> is a string, such as a system name, a fully qualified domain name, or an IP address, that unambiguously identifies the destination computer system.
  • <port> ist eine Portnummer, die dem Spiegelungsendpunkt der Partnerserverinstanz zugeordnet ist.<port> is a port number that is associated with the mirroring endpoint of the partner server instance.

Weitere Informationen finden Sie unter Angeben einer Servernetzwerkadresse – Datenbankspiegelung.For more information, see Specify a Server Network Address - Database Mirroring.

Das folgende Beispiel veranschaulicht die SET PARTNER =' partner_server ' -Klausel:The following example illustrates the SET PARTNER ='partner_server' clause:

'TCP://MYSERVER.mydomain.Adventure-Works.com:7777'

Wichtig

Wird eine Sitzung mithilfe der ALTER DATABASE-Anweisung statt mit SQL Server Management StudioSQL Server Management Studio eingerichtet, wird die Sitzung standardmäßig auf vollständige Transaktionssicherheit festgelegt (SAFETY wird auf FULL festgelegt) und im Modus für hohe Sicherheit ohne automatisches Failover ausgeführt.If a session is set up by using the ALTER DATABASE statement instead of SQL Server Management StudioSQL Server Management Studio, the session is set to full transaction safety by default (SAFETY is set to FULL) and runs in high-safety mode without automatic failover. Konfigurieren Sie einen Zeugen, um automatisches Failover zuzulassen. Für die Ausführung im Modus für hohe Leistung deaktivieren Sie die Transaktionssicherheit (SAFETY OFF).To allow automatic failover, configure a witness; to run in high-performance mode, turn off transaction safety (SAFETY OFF).

FAILOVER Führt ein manuelles Failover vom Prinzipalserver zum Spiegelserver aus.FAILOVER Manually fails over the principal server to the mirror server. Sie können FAILOVER nur auf dem Prinzipalserver angeben.You can specify FAILOVER only on the principal server. Diese Option ist nur dann gültig, wenn die Einstellung SAFETY auf FULL (Standard) festgelegt ist.This option is valid only when the SAFETY setting is FULL (the default).

Die Option FAILOVER erfordert master als Datenbankkontext.The FAILOVER option requires master as the database context.

FORCE_SERVICE_ALLOW_DATA_LOSS Erzwingt ein Failover des Datenbankdiensts auf die Spiegeldatenbank, wenn auf dem Prinzipalserver ein Fehler auftritt, wobei sich die Datenbank im nicht synchronisierten Zustand oder im synchronisierten Zustand ohne automatisches Failover befindet.FORCE_SERVICE_ALLOW_DATA_LOSS Forces database service to the mirror database after the principal server fails with the database in an unsynchronized state or in a synchronized state when automatic failover does not occur.

Es wird dringend empfohlen, den Dienst nur dann zu erzwingen, wenn der Prinzipalserver nicht mehr ausgeführt wird.We strongly recommend that you force service only if the principal server is no longer running. Ansonsten können einige Clients weiter versuchen, auf die ursprüngliche Prinzipaldatenbank zuzugreifen statt auf die neue Prinzipaldatenbank.Otherwise, some clients might continue to access the original principal database instead of the new principal database. FORCE_SERVICE_ALLOW_DATA_LOSS ist nur auf dem Spiegelserver verfügbar und nur unter allen folgenden Bedingungen:FORCE_SERVICE_ALLOW_DATA_LOSS is available only on the mirror server and only under all the following conditions:

  • Der Prinzipalserver ist ausgefallen.The principal server is down.
  • WITNESS ist auf OFF festgelegt, oder der Zeuge ist mit dem Spiegelserver verbunden.WITNESS is set to OFF or the witness is connected to the mirror server.

Sie sollten den Dienst nur erzwingen, wenn Sie bereit sind, Datenverluste in Kauf zu nehmen, um den Dienst für die Datenbank unverzüglich wiederherzustellen.Force service only if you are willing to risk losing some data in order to restore service to the database immediately.

Durch das Erzwingen des Diensts wird die Sitzung ausgesetzt, und alle Daten werden vorübergehend in der ursprünglichen Prinzipaldatenbank beibehalten.Forcing service suspends the session, temporarily preserving all the data in the original principal database. Sobald der ursprüngliche Prinzipalserver in Betrieb und zur Kommunikation mit dem neuen Prinzipalserver in der Lage ist, kann der Datenbankadministrator den Dienst fortsetzen.Once the original principal is in service and able to communicate with the new principal server, the database administrator can resume service. Wenn die Sitzung fortgesetzt wird, gehen alle nicht gesendeten Protokolldatensätze sowie die entsprechenden Updates verloren.When the session resumes, any unsent log records and the corresponding updates are lost.

OFF Entfernt eine Datenbank-Spiegelungssitzung und entfernt die Spiegelung von der Datenbank.OFF Removes a database mirroring session and removes mirroring from the database. Sie können OFF auf beiden Partnern festlegen.You can specify OFF on either partner. Weitere Informationen zu den Auswirkungen des Entfernens der Datenbankspiegelung finden Sie unter Entfernen der Datenbankspiegelung.For information, see about the impact of removing mirroring, see Removing Database Mirroring.

RESUME Setzt eine ausgesetzte Datenbank-Spiegelungssitzung fort.RESUME Resumes a suspended database mirroring session. Sie können RESUME nur auf dem Hauptserver angeben.You can specify RESUME only on the principal server.

SAFETY { FULL | OFF } Legt die Sicherheitsstufe für Transaktionen fest.SAFETY { FULL | OFF } Sets the level of transaction safety. Sie können SAFETY nur auf dem Hauptserver angeben.You can specify SAFETY only on the principal server.

Der Standardwert ist FULL.The default is FULL. Bei vollständiger Sicherheit (FULL) wird die Datenbank-Spiegelungssitzung synchron (im Modus für hohe Sicherheit) ausgeführt.With full safety, the database mirroring session runs synchronously (in high-safety mode). Ist SAFETY auf OFF festgelegt, wird die Datenbank-Spiegelungssitzung asynchron (im Modus für hohe Leistung) ausgeführt.If SAFETY is set to OFF, the database mirroring session runs asynchronously (in high-performance mode).

Das Verhalten des Modus für hohe Sicherheit hängt teilweise folgendermaßen vom Zeugen ab:The behavior of high-safety mode depends partly on the witness, as follows:

  • Wenn die Sicherheit auf FULL und ein Zeuge für die Sitzung festgelegt wurde, wird die Sitzung im Modus für hohe Sicherheit mit automatischem Failover ausgeführt.When safety is set to FULL and a witness is set for the session, the session runs in high-safety mode with automatic failover. Wenn der Prinzipalserver ausfällt, findet automatisch ein Failover der Sitzung statt, sofern die Datenbank synchronisiert ist und die Spiegelserverinstanz und der Zeuge noch miteinander verbunden sind (das heißt, sie verfügen über ein Quorum).When the principal server is lost, the session automatically fails over if the database is synchronized and the mirror server instance and witness are still connected to each other (that is, they have quorum). Weitere Informationen finden Sie unter Quorum: Auswirkungen eines Zeugen auf die Datenbankverfügbarkeit – Datenbankspiegelung.For more information, see Quorum: How a Witness Affects Database Availability - Database Mirroring.

    Wenn ein Zeuge für die Sitzung festgelegt wurde, der zurzeit nicht verbunden ist, bewirkt der Verlust des Spiegelservers, dass der Prinzipalserver ausfälltIf a witness is set for the session but is currently disconnected, the loss of the mirror server causes the principal server to go down.

  • Wenn die Sicherheit auf FULL und der Zeuge auf OFF festgelegt wurde, wird die Sitzung im Modus für hohe Sicherheit ohne automatisches Failover ausgeführt.When safety is set to FULL and the witness is set to OFF, the session runs in high-safety mode without automatic failover. Wenn die Spiegelserverinstanz ausfällt, hat dies keine Auswirkungen auf die Prinzipalserverinstanz.If the mirror server instance goes down, the principal server instance is unaffected. Wenn der Prinzipalserver ausfällt, können Sie den Dienst (mit möglichem Datenverlust) auf dem Spiegelserver erzwingen.If the principal server instance goes down, you can force service (with possible data loss) to the mirror server instance.

  • Ist SAFETY auf OFF festgelegt, wird die Sitzung im Modus für hohe Leistung ausgeführt, und weder automatisches noch manuelles Failover werden unterstützt.If SAFETY is set to OFF, the session runs in high-performance mode, and automatic failover and manual failover are not supported. Probleme auf dem Spiegelserver wirken sich jedoch nicht auf den Prinzipalserver aus. Wenn die Prinzipalserverinstanz ausfällt, können Sie ggf. das Failover des Diensts (mit möglichem Datenverlust) auf die Spiegelserverinstanz erzwingen – wenn WITNESS auf OFF festgelegt wurde oder der Zeuge aktuell mit dem Spiegelserver verbunden ist.However, problems on the mirror do not affect the principal, and if the principal server instance goes down, you can, if necessary, force service (with possible data loss) to the mirror server instance-if WITNESS is set to OFF or the witness is currently connected to the mirror. Weitere Informationen zum Erzwingen des Diensts finden Sie unter FORCE_SERVICE_ALLOW_DATA_LOSS weiter oben in diesem Abschnitt.For more information on forcing service, see "FORCE_SERVICE_ALLOW_DATA_LOSS" earlier in this section.

Wichtig

Der Modus für hohe Leistung ist nicht für die Verwendung eines Zeugen konzipiert.High-performance mode is not intended to use a witness. Beim Festlegen von SAFETY auf OFF sollte unbedingt sichergestellt werden, dass WITNESS ebenfalls auf OFF festgelegt ist.However, whenever you set SAFETY to OFF, we strongly recommend that you ensure that WITNESS is set to OFF.

SUSPEND Hält eine Datenbank-Spiegelungssitzung an.SUSPEND Pauses a database mirroring session.

Sie können SUSPEND auf beiden Partnern angeben.You can specify SUSPEND on either partner.

TIMEOUT ganze ZahlGibt das Zeitlimit in Sekunden an.TIMEOUT integer Specifies the time-out period in seconds. Der Timeoutzeitraum ist die Zeit, die eine Serverinstanz maximal auf den Empfang einer PING-Nachricht von einer anderen Instanz in der Spiegelungssitzung wartet, bevor davon ausgegangen wird, dass die Verbindung der anderen Instanz getrennt wurde.The time-out period is the maximum time that a server instance waits to receive a PING message from another instance in the mirroring session before considering that other instance to be disconnected.

Sie können die Option TIMEOUT nur auf dem Prinzipalserver angeben.You can specify the TIMEOUT option only on the principal server. Wenn Sie die Option nicht angeben, beträgt der Timeoutzeitraum standardmäßig 10 Sekunden.If you do not specify this option, by default, the time period is 10 seconds. Wenn Sie 5 oder höher angeben, wird der Timeoutzeitraum auf die angegebene Anzahl von Sekunden festgelegt.If you specify 5 or greater, the time-out period is set to the specified number of seconds. Wenn Sie einen Timeoutzeitwert von 0 bis 4 Sekunden angeben, wird der Timeoutzeitraum automatisch auf 5 Sekunden festgelegt.If you specify a time-out value of 0 to 4 seconds, the time-out period is automatically set to 5 seconds.

Wichtig

Es wird empfohlen, einen Timeoutzeitraum von 10 Sekunden oder mehr zu wählen.We recommend that you keep the time-out period at 10 seconds or greater. Wenn Sie diesen Wert auf weniger als 10 Sekunden festlegen, verpasst ein stark ausgelastetes System möglicherweise PINGs und meldet einen falschen Fehler.Setting the value to less than 10 seconds creates the possibility of a heavily loaded system missing PINGs and declaring a false failure.

Weitere Informationen finden Sie unter Possible Failures During Database Mirroring.For more information, see Possible Failures During Database Mirroring.

WITNESS <witness_option> steuert die Datenbankeigenschaften, die einen Datenbankspiegelungszeugen definieren.WITNESS <witness_option> Controls the database properties that define a database mirroring witness. Eine SET WITNESS-Klausel wirkt sich auf beide Kopien der Datenbank aus, Sie können SET WITNESS jedoch nur auf dem Prinzipalserver angeben.A SET WITNESS clause affects both copies of the database, but you can specify SET WITNESS only on the principal server. Wenn ein Zeuge für eine Sitzung festgelegt wird, ist unabhängig von der SAFETY-Einstellung ein Quorum zum Anbieten der Datenbank erforderlich; weitere Informationen finden Sie unter Quorum: Auswirkungen eines Zeugen auf die Datenbankverfügbarkeit – Datenbankspiegelung.If a witness is set for a session, quorum is required to serve the database, regardless of the SAFETY setting; for more information, see Quorum: How a Witness Affects Database Availability - Database Mirroring.

Zeuge und Failoverpartner sollten sich auf separaten Computern befinden.We recommend that the witness and failover partners reside on separate computers. Informationen zum Hinzufügen oder Entfernen eines Zeugen finden Sie unter Datenbank-Spiegelungszeuge.For information about the witness, see Database Mirroring Witness.

Für die Endpunkte von Prinzipal- und Zeugenserverinstanz muss STATE auf STARTED festgelegt werden, um eine SET WITNESS-Anweisung auszuführen.To execute a SET WITNESS statement, the STATE of the endpoints of both the principal and witness server instances must be set to STARTED. Außerdem muss ROLE für den Datenbank-Spiegelungsendpunkt einer Zeugenserverinstanz auf WITNESS oder ALL festgelegt sein.Note, also, that the ROLE of the database mirroring endpoint of a witness server instance must be set to either WITNESS or ALL. Informationen zum Angeben eines Endpunkts finden Sie unter der Datenbankspiegelungs-Endpunkt.For information about specifying an endpoint, see The Database Mirroring Endpoint.

Verwenden Sie folgende Transact-SQLTransact-SQL-Anweisung, um die Rolle und den Status des Datenbank-Spiegelungsendpunkts einer Serverinstanz zu erfahren:To learn the role and state of the database mirroring endpoint of a server instance, on that instance, use the following Transact-SQLTransact-SQL statement:

SELECT role_desc, state_desc FROM sys.database_mirroring_endpoints

Hinweis

Auf dem Zeugen können keine Datenbankeigenschaften festgelegt werden.Database properties cannot be set on the witness.

<witness_option> ::=<witness_option> ::=

Hinweis

Pro SET WITNESS-Klausel wird nur eine <witness_option>-Option zugelassen.Only one <witness_option> is permitted per SET WITNESS clause.

' witness_server ' Gibt eine Datenbank-EngineDatabase Engine-Instanz an, die als Zeugenserver für die Datenbankspiegelungs-Sitzung agiert.' witness_server ' Specifies an instance of the Datenbank-EngineDatabase Engine to act as the witness server for a database mirroring session. Sie können SET WITNESS-Anweisungen nur auf dem Prinzipalserver angeben.You can specify SET WITNESS statements only on the principal server.

In einer SET WITNESS =' witness_server ' -Anweisung ist die Syntax von witness_server mit der Syntax von partner_server identisch.In a SET WITNESS ='witness_server' statement, the syntax of witness_server is the same as the syntax of partner_server.

OFF Entfernt den Zeugen aus einer Datenbank-Spiegelungssitzung.OFF Removes the witness from a database mirroring session. Durch das Festlegen des Zeugen auf OFF wird das automatische Failover deaktiviert.Setting the witness to OFF disables automatic failover. Ist die Datenbank auf FULL SAFETY festgelegt und der Zeuge auf OFF, führt ein Fehler auf dem Spiegelserver dazu, dass der Prinzipalserver die Datenbank nicht verfügbar macht.If the database is set to FULL SAFETY and the witness is set to OFF, a failure on the mirror server causes the principal server to make the database unavailable.

BemerkungenRemarks

BeispieleExamples

A.A. Erstellen einer Datenbank-Spiegelungssitzung mit einem ZeugenCreating a database mirroring session with a witness

Das Einrichten einer Datenbankspiegelung mit einem Zeugen erfordert das Konfigurieren von Sicherheit und Vorbereiten der Spiegeldatenbank sowie das Verwenden von ALTER DATABASE zum Festlegen der Partner.Setting up database mirroring with a witness requires configuring security and preparing the mirror database, and also using ALTER DATABASE to set the partners. Ein Beispiel des vollständigen Setupprozesses finden Sie unter Einrichten der Datenbankspiegelung.For an example of the complete setup process, see Setting Up Database Mirroring.

B.B. Manuelles Ausführen eines Failovers für eine Datenbank-SpiegelungssitzungManually failing over a database mirroring session

Ein manuelles Failover kann von beiden Datenbank-Spiegelungspartnern initiiert werden.Manual failover can be initiated from either database mirroring partner. Vor dem Failover sollten Sie sicherstellen, dass es sich bei dem aktuellen Prinzipalserver auch tatsächlich um den Prinzipalserver handelt.Before failing over, you should verify that the server you believe to be the current principal server actually is the principal server. Führen Sie z. B. für die AdventureWorks2012AdventureWorks2012-Datenbank auf der Serverinstanz, die Sie für den aktuellen Prinzipalserver halten, die folgende Abfrage aus:For example, for the AdventureWorks2012AdventureWorks2012 database, on that server instance that you think is the current principal server, execute the following query:

SELECT db.name, m.mirroring_role_desc
FROM sys.database_mirroring m
JOIN sys.databases db
ON db.database_id = m.database_id
WHERE db.name = N'AdventureWorks2012';
GO

Handelt es sich bei der Serverinstanz tatsächlich um den Prinzipalserver, hat mirroring_role_desc den Wert Principal.If the server instance is in fact the principal, the value of mirroring_role_desc is Principal. Handelt es sich bei der Serverinstanz aber um den Spiegelserver, gibt die SELECT-Anweisung Mirror zurück.If this server instance were the mirror server, the SELECT statement would return Mirror.

Im folgenden Beispiel wird vorausgesetzt, dass es sich bei dem Server um den aktuellen Prinzipalserver handelt.The following example assumes that the server is the current principal.

  1. Manuelles Failover an den Datenbank-Spiegelungspartner:Manually fail over to the database mirroring partner:

    ALTER DATABASE AdventureWorks2012 SET PARTNER FAILOVER;
    GO
    
  2. Führen Sie die folgende Abfrage aus, um die Ergebnisse des Failovers auf dem neuen Spiegelserver zu überprüfen:To verify the results of the failover on the new mirror, execute the following query:

    SELECT db.name, m.mirroring_role_desc
    FROM sys.database_mirroring m
    JOIN sys.databases db
    ON db.database_id = m.database_id
    WHERE db.name = N'AdventureWorks2012';
    GO
    

Der aktuelle Wert von mirroring_role_desc ist jetzt Mirror.The current value of mirroring_role_desc is now Mirror.

Weitere InformationenSee Also