|
Il presente articolo è stato tradotto manualmente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale.
|
Traduzione
Originale
|
Risolvere i problemi relativi alla configurazione del mirroring del database (SQL Server)
Nota
|
|---|
|
|
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
Autorizzazioni corrette per gli account -
Per ridurre l'eventualità di una configurazione non corretta, utilizzare account eseguiti negli stessi account di dominio. -
Se gli account vengono eseguiti in domini diversi oppure non sono account di dominio, è necessario che un account di accesso sia creato nel database master dell'altro computer e disponga delle autorizzazioni CONNECT per l'endpoint. Per ulteriori informazioni, vedere Gestione dei metadati quando si rende disponibile un database in un'altra istanza del server (SQL Server). Queste informazioni si riferiscono anche all'account Servizio di rete.
-
-
Se SQL Server viene eseguito come servizio con l'account di sistema locale, è necessario utilizzare i certificati per l'autenticazione. Per ulteriori informazioni, vedere Utilizzare certificati per un endpoint del mirroring del database (Transact-SQL).
-
Verificare che per ogni istanza del server (server principale, server mirror e server di controllo del mirroring, se presente) sia disponibile un endpoint di mirroring del database. Per ulteriori informazioni, vedere sys.database_mirroring_endpoints (Transact-SQL) e, a seconda del metodo di autenticazione, Creare un endpoint del mirroring del database per l'autenticazione Windows (Transact-SQL) o Utilizzare certificati per un endpoint del mirroring del database (Transact-SQL). -
Verificare che i numeri di porta siano corretti. Per individuare la porta attualmente associata all'endpoint del mirroring del database per un'istanza del server, utilizzare le viste del catalogo sys.database_mirroring_endpoints e sys.tcp_endpoints. -
Per i problemi di impostazione del mirroring del database che sono difficili diagnosticare, è consigliabile controllare ogni istanza del server per verificare che sia in attesa sulle porte corrette. Per informazioni sulla verifica della disponibilità delle porte, vedere MSSQLSERVER_1418. -
Verificare che gli endpoint siano stati avviati (STATE=STARTED). A tale scopo, utilizzare l'istruzione Transact-SQL seguente su ogni istanza del server: SELECT state_desc FROM sys.database_mirroring_endpoints
Per ulteriori informazioni sulla colonna state_desc, vedere sys.database_mirroring_endpoints (Transact-SQL). Per avviare un endpoint, utilizzare l'istruzione Transact-SQL seguente: ALTER ENDPOINT Endpoint_Mirroring STATE = STARTED AS TCP (LISTENER_PORT = <port_number>) FOR database_mirroring (ROLE = ALL); GO
Per ulteriori informazioni, vedere ALTER ENDPOINT (Transact-SQL). -
Verificare che ROLE sia corretto. A tale scopo, utilizzare l'istruzione Transact-SQL su ogni istanza del server. SELECT role FROM sys.database_mirroring_endpoints; GO
Per ulteriori informazioni, vedere sys.database_mirroring_endpoints (Transact-SQL). -
Per l'account di accesso per l'account del servizio dell'altra istanza del server è richiesta l'autorizzazione CONNECT. Verificare che l'account di accesso dell'altro server disponga dell'autorizzazione CONNECT. Per individuare gli account che dispongono dell'autorizzazione CONNECT per un endpoint, utilizzare l'istruzione Transact-SQL seguente su ogni istanza del server: SELECT 'Metadata Check'; SELECT EP.name, SP.STATE, CONVERT(nvarchar(38), suser_name(SP.grantor_principal_id)) AS GRANTOR, SP.TYPE AS PERMISSION, CONVERT(nvarchar(46),suser_name(SP.grantee_principal_id)) AS GRANTEE FROM sys.server_permissions SP , sys.endpoints EP WHERE SP.major_id = EP.endpoint_id ORDER BY Permission,grantor, grantee; GO
Importante
|
|---|
|
|
-
Il proprietario del database deve rimuovere la sessione di mirroring e deve ripristinare un backup completo del filegroup contenente il file aggiunto. -
Il proprietario deve quindi eseguire il backup del log contenente l'operazione di aggiunta file nel server principale e ripristinare manualmente il backup del log nel database mirror utilizzando le opzioni WITH NORECOVERY e WITH MOVE. L'esecuzione di questa operazione consente di creare il percorso del file specificato nel server mirror e di ripristinare il nuovo file in tale percorso. -
Per preparare il database per una nuova sessione di mirroring, il proprietario deve inoltre ripristinare con l'opzione WITH NO RECOVERY tutti gli altri backup del log in sospeso dal server principale.
-
La prima istruzione deve essere eseguita sul server mirror. Quando viene eseguita questa istruzione, il server mirror non tenta di contattare altre istanze del server e indica invece al database di attendere che il server mirror venga contattato dal server principale. -
La seconda istruzione ALTER DATABASE deve essere eseguita sul server principale e fa in modo che il server principale tenti di connettersi al server mirror. Dopo che è stata creata la connessione, il server mirror tenta di connettersi al server principale tramite un'altra connessione.
Nota
|
|---|
|
|
-
Una transazione che aggiorna più database nella stessa istanza di SQL Server. -
Le transazioni che utilizzano Microsoft Distributed Transaction Coordinator (MS DTC).
Nota