Compartir a través de


Set-SqlErrorLog

Establece o restablece el número máximo de archivos de registro de errores antes de reciclarlos.

Sintaxis

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

Description

El cmdlet Set-SqlErrorLog establece o restablece el número máximo de archivos de registro de errores antes de reciclarlos.

Este cmdlet admite los siguientes modos de operación para establecer registros:

  • Pase la instancia de SQL Server.
  • Especifique el parámetro Path de la instancia de SQL Server.
  • Invoque el cmdlet en un contexto válido.

Ejemplos

Ejemplo 1: Establecer el número máximo o los registros de errores

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

Este comando establece el número máximo de archivos de registro de errores en 11.

Ejemplo 2: Devolver el código de script TSQL para establecer el número máximo o los registros de errores

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

Este comando devuelve el código de script T-SQL, como una matriz de cadenas, que es necesario para establecer el número máximo de archivos de registro de errores en 11.

Parámetros

-AccessToken

El token de acceso que se usa para autenticarse en SQL Server, como alternativa a la autenticación de usuario o contraseña de Windows.

Esto se puede usar, por ejemplo, para conectarse a SQL Azure DB y SQL Azure Managed Instance mediante un Service Principal o un Managed Identity.

El parámetro que se va a usar puede ser una cadena que representa el token o un objeto PSAccessToken tal como se devuelve mediante la ejecución de Get-AzAccessToken -ResourceUrl https://database.windows.net.

Este parámetro es nuevo en la versión 22 del módulo.

Tipo:PSObject
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ConnectionTimeout

Especifica el número de segundos que se deben esperar a una conexión de servidor antes de un error de tiempo de espera. El valor de tiempo de espera debe ser un valor entero entre 0 y 65534. Si se especifica 0, los intentos de conexión no agoten el tiempo de espera.

Tipo:Int32
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Credential

Especifica un objeto PSCredential que se usa para especificar las credenciales de un inicio de sesión de SQL Server que tiene permiso para realizar esta operación.

Tipo:PSCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Encrypt

Tipo de cifrado que se va a usar al conectarse a SQL Server.

Este valor se asigna a la propiedad EncryptSqlConnectionEncryptOption en el objeto SqlConnection del controlador Microsoft.Data.SqlClient.

En la versión 22 del módulo, el valor predeterminado es Optional (por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "Obligatorio", que puede crear un cambio importante para los scripts existentes.

Este parámetro es nuevo en la versión 22 del módulo.

Tipo:String
Valores aceptados:Mandatory, Optional, Strict
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ErrorLogSizeKb

Especifica el límite de tamaño del archivo de registro de errores de instancia de SQL en kilo bytes.

El intervalo válido es de 0 a Int32.MaxValue.

Si el usuario no especifica este parámetro, errorLogSizeKb permanece sin cambios. El valor predeterminado de la instancia de SQL es 0.

Tipo:Int32
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-HostNameInCertificate

Nombre de host que se va a usar para validar el certificado TLS/SSL de SQL Server. Debe pasar este parámetro si la instancia de SQL Server está habilitada para Forzar cifrado y desea conectarse a una instancia mediante el nombre de host o el nombre corto. Si se omite este parámetro, es necesario pasar el nombre de dominio completo (FQDN) a -ServerInstance es necesario para conectarse a una instancia de SQL Server habilitada para Forzar cifrado.

Este parámetro es nuevo en la versión 22 del módulo.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-InputObject

Especifica el objeto de servidor de la instancia de destino.

Tipo:Server
Posición:1
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-MaxLogCount

Especifica el número máximo de archivos de registro de errores. Si no se especifica el valor, el cmdlet restablece el valor al valor predeterminado.

El intervalo permitido de valores está comprendido entre 6 y 99.

Tipo:UInt16
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Path

Especifica la ruta de acceso a la instancia de SQL Server en la que este cmdlet ejecuta la operación. Si no especifica un valor para este parámetro, el cmdlet usa la ubicación de trabajo.

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ProgressAction

Determina cómo Responde PowerShell a las actualizaciones de progreso generadas por un script, cmdlet o proveedor, como las barras de progreso generadas por el cmdlet Write-Progress. El cmdlet Write-Progress crea barras de progreso que muestran el estado de un comando.

Tipo:ActionPreference
Alias:proga
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Script

Indica que este cmdlet devuelve un script de Transact-SQL que realiza la tarea que realiza este cmdlet.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ServerInstance

Especifica, como matriz de cadenas, el nombre de una instancia de SQL Server. Para las instancias predeterminadas, especifique solo el nombre del equipo: MyComputer. Para las instancias con nombre, use el formato MyComputer\MyInstanceName.

Tipo:String[]
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-TrustServerCertificate

Indica si el canal se cifrará mientras se pasa la cadena de certificados para validar la confianza.

En la versión 22 del módulo, el valor predeterminado es $true (por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "$false", que puede crear un cambio importante para los scripts existentes.

Este parámetro es nuevo en la versión 22 del módulo.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

System.String[]

Microsoft.SqlServer.Management.Smo.Server

Notas

Si el valor del servidor ya está establecido en el valor especificado, este cmdlet no hace nada.