Поделиться через


Set-SqlErrorLog

Задает или сбрасывает максимальное количество файлов журнала ошибок перед их перезапуском.

Синтаксис

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>]

Описание

Командлет Set-SqlErrorLog задает или сбрасывает максимальное количество файлов журнала ошибок перед их перезапуском.

Этот командлет поддерживает следующие режимы операции для задания журналов:

  • Передайте экземпляр SQL Server.
  • Укажите параметр Path экземпляра SQL Server.
  • Вызовите командлет в допустимом контексте.

Примеры

Пример 1. Установка максимального числа или журналов ошибок

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

Эта команда задает максимальное количество файлов журнала ошибок для 11.

Пример 2. Возврат кода скрипта TSQL для задания максимального числа или журналов ошибок

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

Эта команда возвращает код скрипта T-SQL в виде строкового массива, который необходим для установки максимального количества файлов журнала ошибок в 11.

Параметры

-AccessToken

Маркер доступа, используемый для проверки подлинности в SQL Server, в качестве альтернативы пользователю или паролю или проверке подлинности Windows.

Это можно использовать, например, для подключения к SQL Azure DB и SQL Azure Managed Instance с помощью Service Principal или Managed Identity.

Используемый параметр может быть строкой, представляющей маркер или объект PSAccessToken, как возвращается при выполнении Get-AzAccessToken -ResourceUrl https://database.windows.net.

Этот параметр является новым в версии 22 модуля.

Тип:PSObject
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ConnectionTimeout

Указывает количество секунд ожидания подключения к серверу до сбоя времени ожидания. Значение времени ожидания должно быть целым значением от 0 до 65534. Если задано значение 0, попытки подключения не истекает.

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Credential

Указывает объект PSCredential, используемый для указания учетных данных для имени входа SQL Server, имеющего разрешение на выполнение этой операции.

Тип:PSCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Encrypt

Тип шифрования, используемый при подключении к SQL Server.

Это значение сопоставляется со свойством EncryptSqlConnectionEncryptOption в объекте SqlConnection драйвера Microsoft.Data.SqlClient.

В версии 22 модуля по умолчанию используется Optional (для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет "Обязательный", которое может создать критическое изменение для существующих скриптов.

Этот параметр является новым в версии 22 модуля.

Тип:String
Допустимые значения:Mandatory, Optional, Strict
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ErrorLogSizeKb

Задает ограничение размера файла журнала ошибок экземпляра SQL в килобайтах.

Допустимый диапазон — 0 до Int32.MaxValue.

Если пользователь не задает этот параметр, ошибка ErrorLogSizeKb остается неизменной. Значение по умолчанию для экземпляра SQL равно 0.

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-HostNameInCertificate

Имя узла, используемое при проверке TLS/SSL-сертификата SQL Server. Этот параметр необходимо передать, если экземпляр SQL Server включен для принудительного шифрования и требуется подключиться к экземпляру с помощью имени узла или короткого имени. Если этот параметр опущен, передача полного доменного имени (FQDN) в -ServerInstance необходима для подключения к экземпляру SQL Server, включенного для принудительного шифрования.

Этот параметр является новым в версии 22 модуля.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Указывает серверный объект целевого экземпляра.

Тип:Server
Position:1
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxLogCount

Указывает максимальное количество файлов журнала ошибок. Если значение не указано, командлет сбрасывает значение по умолчанию.

Допустимый диапазон значений составляет от 6 до 99.

Тип:UInt16
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Path

Указывает путь к экземпляру SQL Server, на котором выполняется операция. Если для этого параметра не указано значение, командлет использует рабочее расположение.

Тип:String
Position:1
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ProgressAction

Определяет, как PowerShell реагирует на обновления хода выполнения, созданные скриптом, командлетом или поставщиком, например индикаторами хода выполнения, созданными командлетом Write-Progress. Командлет Write-Progress создает индикаторы хода выполнения, показывающие состояние команды.

Тип:ActionPreference
Aliases:proga
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Script

Указывает, что этот командлет возвращает скрипт Transact-SQL, выполняющий задачу, выполняемую этим командлетом.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ServerInstance

Указывает имя экземпляра SQL Server в виде строкового массива. Для экземпляров по умолчанию укажите только имя компьютера: MyComputer. Для именованных экземпляров используйте формат MyComputer\MyInstanceName.

Тип:String[]
Position:1
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-TrustServerCertificate

Указывает, будет ли канал зашифрован при обходе цепочки сертификатов для проверки доверия.

В версии 22 модуля по умолчанию используется $true (для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет иметь значение "$false", которое может создать критическое изменение для существующих скриптов.

Этот параметр является новым в версии 22 модуля.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

System.String[]

Microsoft.SqlServer.Management.Smo.Server

Примечания

Если значение на сервере уже задано, этот командлет ничего не делает.