Estou tentando uma atualização local do SQL 2014 para o SQL 2017, Standard Edition no Windows 2012 R2 (Sim, eu sei...) O problema é que o instalador nunca me apresenta uma tela para selecionar a instância e em Selecionar recursos , não há opções, apenas entradas acinzentadas para recursos compartilhados e recursos redistribuíveis (sem caixas de seleção). Como já atualizei o SQL Browser/Writer, clicar em Avançar> neste ponto exibe a caixa de diálogo de erros de validação e o instalador mostra "Não há recursos selecionados para atualização". Executei o relatório de verificação da configuração do sistema e o assistente de migração - tudo verde. O arquivo summary.txt mostra que descobriu Database Engine Services, Reporting Services - Native, SSMS e Adv_SSMS, todos SQL 2014.
O instalador está bom. Se eu começar a instalar uma instância nomeada de 2017, ela fornecerá recursos para selecionar. Fiz o mesmo com um instalador de 2016 e tive o mesmo problema.
Neste ponto, não sei o que fazer a seguir, exceto desinstalar 2014 e instalar 2017, o que é uma dor. Observe que fomos bem-sucedidos ao desinstalar o SSRS 2014 e instalar o 2017, embora tenhamos revertido essa alteração com um instantâneo quando atingimos o obstáculo de atualização do mecanismo.
Grato por quaisquer pensamentos de solução de problemas.
Será que seu SQL 2014 é de 32 bits? O SQL 2017 está disponível apenas como 64 bits:
O SQL Server 2017 (14.x) está disponível apenas para plataformas de 64 bits. A atualização de plataforma cruzada não é suportada. Você não pode atualizar uma instância de 32 bits do SQL Server para 64 bits nativos usando a instalação do SQL Server. No entanto, você pode fazer backup ou desanexar bancos de dados de uma instância de 32 bits do SQL Server e restaurá-los ou anexá-los a uma nova instância do SQL Server (64 bits) se os bancos de dados não forem publicados na replicação. Você deve recriar todos os logins e outros objetos de usuário nos bancos de dados master, msdb e model system.
Voltar para responder a minha própria pergunta.
A solução neste caso foi fazer uma atualização do prompt de comando. O comando era tão simples quanto este:
setup.exe /Q /ACTION=UPGRADE /IACCEPTSQLSERVERLICENSETERMS /INSTANCENAME=MSSQLSERVER
No meu caso, como ainda havia uma instância do SSRS 2014 no servidor, tivemos que passar primeiro por todo o processo de desinstalação do SSRS 2014/instalação do SSRS 2017 (o que estava em nossos planos de qualquer maneira), pois a atualização identifica essa instância com o seguinte erro:
Mensagem: o parâmetro de linha de comando /IAcceptRSUninstall está ausente ou não foi definido como verdadeiro. É um parâmetro obrigatório para a ação de configuração que você está executando. Ao especificar esse parâmetro, você reconhece que o Reporting Services será desinstalado e que você executou qualquer backup e/ou migração necessários.
Eu realmente acreditava que a atualização do prompt de comando falharia e esperava uma mensagem de erro melhor nos logs, e é por isso que não nos preocupamos em executar a etapa do SSRS primeiro. Mas, assim que concluímos isso, a atualização de 2017 foi executada com sucesso.