Как указать параметры запуска SQL при тихой установке через командную строку

10

Я хочу исправить ошибку пробела в SQL Server 2012 с помощью -T272параметра запуска.

Как я могу автоматизировать это после установки? Я не нашел параметров установки для параметров запуска.

Мохсен Афшин
источник
1
Одна поправка, флаг трассировки для этого нужно добавить в нижнем регистре , tтак -t272вместо -T272. Следует отметить здесь

Ответы:

4

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

Вы можете добавить их в диспетчере конфигурации здесь:

введите описание изображения здесь

В этом случае это будет -T272с заглавной буквой T. Для ссылки нижний регистр t предназначен для определенных флагов, используемых инженерами службы поддержки.

РЕДАКТИРОВАТЬ @MaxVernon указал, что я пропустил суть вопроса :) У Шона Мелтона есть пост, где он обсуждает то, что вы пытаетесь сделать. У него есть скрипт, который вы можете запустить, чтобы добавить параметры запуска. Затем Майк Фал написал здесь продолжение, где он поделился написанной им функцией Set-SQLStartupParameters, которая должна быть несколько более безопасной, чем метод Шона.

Вот код Шона: (Майку требуется скачать с GitHub, чтобы вы могли перейти по ссылкам, если хотите).

$server = 'MyServer'
$sqlservice = "MSSQLSERVER"
$sqlagentservice = "SQLSERVERAGENT"
$flagsToAdd = ';-T1117;-T1118;-T3226"

Add-Type -AssemblyName "Microsoft.SqlServer.SqlWmiManagement,Version=11.0.0.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91"
$sqlwmi = New-Object Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer $server
$wmisvc = $sqlwmi.Services | where {$_.name -eq $sqlservice}
$wmisvc.StartupParameters = $wmisvc.StartupParameters + $flagsToAdd
$wmisvc.Alter()

$wmisvc.Stop()
Start-Sleep -seconds 15
$wmisvc.Start()

$wmiAgent = $sqlwmi.Services | where {$_.name -eq $sqlagentservice}
$wmiAgent.Start()
Кеннет Фишер
источник
3

Вы можете автоматизировать добавление параметров запуска, например, добавление -T271или -T1117или -T1118и т. Д., Используя PowerShell в качестве шага после установки.

Поскольку вы работаете на SQL Server 2012, вы можете использовать мой скрипт, чтобы узнать, какие флаги трассировки также установлены.

Кин Шах
источник