Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Impossibile ridurre il database di "sola lettura" | Riduci il registro delle transazioni durante l'utilizzo del gruppo di disponibilità AlwaysOn

Ho " Impossibile ridurre il database di "sola lettura" " errore durante la riduzione del registro delle transazioni durante l'utilizzo del gruppo di disponibilità AlwaysOn.

Riduci il registro delle transazioni durante l'utilizzo del gruppo di disponibilità AlwaysOn

Il registro delle transazioni delle dimensioni di SQL Server era molto grande, devo ridurlo per ridurne le dimensioni. Ma il mio database utilizza il gruppo di disponibilità AlwaysOn, quindi non ho potuto ridurlo a causa del seguente errore.

Ho utilizzato il seguente script SQL, è possibile ridurre MDF, NDF o LDF di SQL Server utilizzando il seguente script o lo strumento SQL Server Management Studio.

USE [MSDB]
DECLARE @i INT;
set @i=199960
print @i
while(@i>199900)
begin
DBCC SHRINKFILE (N'MSDB_log.trn' ,@i)
set @[email protected]
print @i
end

TITLE: Microsoft SQL Server Management Studio
------------------------------

Shrink failed for LogFile 'KAS_CLIENT_log'. (Microsoft.SqlServer.Smo)

For help, click: https://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=15.0.18206.0+((SSMS_Rel).191029-2112)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Shrink+LogFile&LinkId=20476

------------------------------
ADDITIONAL INFORMATION:

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

------------------------------

Cannot shrink 'read only' database 'MSDB'. (Microsoft SQL Server, Error: 7992)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&ProdVer=13.00.5026&EvtSrc=MSSQLServer&EvtID=7992&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------

Impossibile ridurre il database di "sola lettura"

Questo errore è correlato al database di sola lettura, per risolvere questo errore, puoi eseguire il failover dell'istanza e puoi rendere il database di sola lettura su primario utilizzando il seguente post.

Architettura di SQL Server AlwaysOn (gruppo di disponibilità) e installazione dettagliata -3 Fasi manuali di failover

Quando esegui il failover sempre attivo, puoi ridurre il file di registro della transazione perché ora questo database è stato database primario e modalità di lettura e scrittura, quindi puoi ridurlo facilmente.

Vuoi imparare le esercitazioni DBA di Microsoft SQL Server per principianti, quindi leggere i seguenti articoli.

Esercitazioni sul database di SQL Server (MSSQL DBA) per amministratori di database principianti