Tenho usado o servidor vinculado com o provedor antigo (SQLNCLI) sem nenhum problema, conforme recomendado pela Microsoft , estou planejando mudar para o novo provedor (MSOLEDBSQL). Consigo adicionar servidor vinculado usando o seguinte T-SQL depois de instalar os drivers
EXEC sp_addlinkedserver
@server=N'SQL02\DEV1',
@srvproduct=N'',
@provider=N'MSOLEDBSQL',
@datasrc=N'SQL02,1933';
Infelizmente, recebendo o seguinte erro quando tento consultar um novo servidor vinculado:
Consultas que tentei:
--- example 1
select * from OPENQUERY ([SQL02\DEV1], 'select name from sys.databases');
--- example 2
select name from [SQL02\DEV1].master.sys.databases;
--- example 3 (without linked server dependency)
SELECT c.* FROM OPENROWSET(
'MSOLEDBSQL'
, 'Server=SQL02,1933;Database=master;Integrated Security=True;'
, 'SELECT name FROM sys.databases;'
) c;
Obtendo o mesmo erro de todos os exemplos:
O uso fora de processo do provedor OLE DB "MSOLEDBSQL" com SQL Server não é suportado.
Isso realmente significa que o SQL-2016 não é compatível com o uso do novo provedor MSOLEDBSQL, especialmente em servidores vinculados, ou há algo que eu perdi além de reinstalar drivers e reiniciar o SQL Server.