Set-SqlErrorLog

Imposta o reimposta il numero massimo di file di log degli errori prima che vengano riciclati.

Sintassi

Set-SqlErrorLog
   [-MaxLogCount <UInt16>]
   [-ErrorLogSizeKb <Int32>]
   [[-Path] <String>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [<CommonParameters>]
Set-SqlErrorLog
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [-MaxLogCount <UInt16>]
   [-ErrorLogSizeKb <Int32>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [<CommonParameters>]
Set-SqlErrorLog
   [-MaxLogCount <UInt16>]
   [-ErrorLogSizeKb <Int32>]
   [-InputObject] <Server>
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [<CommonParameters>]

Descrizione

Il cmdlet Set-SqlErrorLog imposta o reimposta il numero massimo di file di log degli errori prima che vengano riciclati.

Questo cmdlet supporta le modalità di operazione seguenti per impostare i log:

  • Passare l'istanza del SQL Server.
  • Specificare il parametro Path dell'istanza di SQL Server.
  • Richiamare il cmdlet in un contesto valido.

Esempio

Esempio 1: Impostare il numero massimo o i log degli errori

PS C:\> Set-SqlErrorLog -ServerInstance "MyServer\MyInstance" -MaxLogCount 11 | Out-Null

Questo comando imposta il numero massimo di file di log degli errori su 11.

Esempio 2: restituire il codice script TSQL per impostare il numero massimo o i log degli errori

PS C:\> Set-SqlErrorLog -ServerInstance "MyServer\MyInstance" -MaxLogCount 11 -Script

USE [master] 
GO
EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'NumErrorLogs', REG_DWORD, 11
GO

Questo comando restituisce il codice script T-SQL, come matrice di stringhe, necessario per impostare il numero massimo di file di log degli errori su 11.

Parametri

-AccessToken

Token di accesso usato per eseguire l'autenticazione per SQL Server, come alternativa all'autenticazione utente/password o a Windows.

Questa operazione può essere usata, ad esempio, per connettersi a SQL Azure DB e SQL Azure Managed Instance usando un Service Principal oggetto o .Managed Identity

Il parametro da usare può essere una stringa che rappresenta il token o un PSAccessToken oggetto restituito eseguendo Get-AzAccessToken -ResourceUrl https://database.windows.net.

Questo parametro è nuovo nella versione 22 del modulo.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionTimeout

Specifica il numero di secondi per attendere una connessione server prima di un errore di timeout. Il valore di timeout deve essere un valore intero compreso tra 0 e 65534. Se si specifica 0, non si verifica alcun timeout dei tentativi di connessione.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Specifica un oggetto PSCredential usato per specificare le credenziali per un account di accesso SQL Server che dispone dell'autorizzazione per eseguire questa operazione.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encrypt

Tipo di crittografia da usare durante la connessione a SQL Server.

Questo valore esegue il Encrypt mapping alla proprietà SqlConnectionEncryptOption nell'oggetto SqlConnection del driver Microsoft.Data.SqlClient.

Nella versione 22 del modulo il valore predefinito è Optional (per la compatibilità con v21). Nella versione 23+ del modulo il valore predefinito sarà "Obbligatorio", che può creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ErrorLogSizeKb

Specifica il limite di dimensioni del file di log degli errori dell'istanza DI SQL in kilo byte.

L'intervallo valido è 0 a Int32.MaxValue.

Se l'utente non specifica questo parametro, ErrorLogSizeKb rimane invariato. Il valore predefinito per l'istanza di SQL è 0.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

Nome host da usare per la convalida del certificato TLS/SSL di SQL Server. È necessario passare questo parametro se l'istanza di SQL Server è abilitata per Force Encryption e si vuole connettersi a un'istanza usando nome host/nome breve. Se questo parametro viene omesso, è necessario passare il nome di dominio completo (FQDN) a -ServerInstance per connettersi a un'istanza di SQL Server abilitata per Force Encryption.

Questo parametro è nuovo nella versione 22 del modulo.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Specifica l'oggetto server dell'istanza di destinazione.

Type:Server
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaxLogCount

Specifica il numero massimo di file di log degli errori. Se il valore non è specificato, il cmdlet reimposta il valore predefinito.

L'intervallo consentito di valori è compreso tra 6 e 99.

Type:UInt16
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Specifica il percorso dell'istanza di SQL Server in cui questo cmdlet esegue l'operazione. Se non si specifica un valore per questo parametro, il cmdlet usa il percorso di lavoro.

Type:String
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Script

Indica che questo cmdlet restituisce uno script Transact-SQL che esegue l'attività eseguita da questo cmdlet.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServerInstance

Specifica, come matrice di stringhe, il nome di un'istanza di SQL Server. Per le istanze predefinite, specificare solo il nome del computer: MyComputer. Per le istanze denominate, usare il formato MyComputer\MyInstanceName.

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TrustServerCertificate

Indica se il canale verrà crittografato durante il bypass della catena di certificati per convalidare l'attendibilità.

Nella versione 22 del modulo il valore predefinito è $true (per la compatibilità con v21). Nella versione 23+ del modulo il valore predefinito sarà "$false", che può creare una modifica di rilievo per gli script esistenti.

Questo parametro è nuovo nella versione 22 del modulo.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

System.String[]

Microsoft.SqlServer.Management.Smo.Server

Note

Se il valore del server è già impostato sul valore specificato, questo cmdlet non esegue alcuna operazione.