Estou procurando instalar várias versões do SQL Server lado a lado para executar simultaneamente. Eu gostaria que eles ouvissem em endereços IP diferentes.
Eles serão executados no Windows Server 2019 Core.
Atualmente instalo usando algo assim:
Setup.exe /qs /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="NT AUTHORITY\Network Service" /SQLSYSADMINACCOUNTS="BUILTIN\ADMINISTRATORS" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /SAPWD="MYSECRETPASSWORD" /SQLSVCINSTANTFILEINIT="True" /TCPENABLED=1 /IACCEPTSQLSERVERLICENSETERMS /SECURITYMODE=SQL
Estou certo de que não há opções no Setup.exe que especifiquem o endereço IP para ouvir? Se não, qual é a maneira mais simples de configurar isso na linha de comando após a execução do Setup.exe?
Com o SQL Server no Windows, as entradas do Registro podem ser modificadas usando o PowerShell. Abaixo está um exemplo com caminhos do SQL Server 2017 para a instância padrão. Obviamente, a instância precisará ser reiniciada para que as alterações entrem em vigor.
EDITAR:
Também é possível direcionar interfaces de rede específicas identificando a chave desejada e alterando conforme desejado. Abaixo está um exemplo de função PS que encontra a entrada por endereço IP e modifica os valores. Isso pode ser usado para ativar/desativar o TCP para cada instância e interface conforme necessário.
Observe que este script não foi bem testado, portanto, talvez seja necessário ajustá-lo para o seu cenário.
Você não pode ter mais de um endereço IP para servidores sql autônomos. Qual é o endereço IP do servidor. Você só pode (e deve) definir a porta após a configuração.