Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
- actualizaciones de SQL Server 2025 CU y GDR desde abril de 2026
- actualizaciones de SQL Server 2022 CU y GDR desde marzo de 2026
- actualizaciones de SQL Server 2019 CU y GDR desde abril de 2026
- actualizaciones de SQL Server 2017 CU y GDR desde abril de 2026
- actualizaciones de SQL Server 2016 SP3 y Azure Connect Pack GDR desde abril de 2026
- Instancia Gestionada de Azure SQL
Resumen
En este artículo se describe un problema conocido en el que las consultas del servidor vinculado que usan el proveedor MSDASQL (OLE DB Provider for ODBC Drivers) y especifican una cadena de proveedor producen un error y generan el error 7416. En el artículo también se proporcionan soluciones alternativas que restauran la conectividad del servidor vinculado sin revertir la actualización.
Síntomas
Las consultas del servidor vinculado que usan el MSDASQL proveedor y especifican una cadena de proveedor (@provstr) producen un error y devuelven el siguiente mensaje de error cuando un usuario que no es miembro del rol fijo de servidor sysadmin ejecuta la consulta:
Mensaje 7416, nivel 16
Se deniega el acceso al servidor remoto porque no existe ninguna asignación de inicio de sesión.
El fallo puede producirse incluso si el servidor vinculado y las asignaciones de inicio de sesión están configurados correctamente.
Causa
Una comprobación de validación de conexión más estricta en el Motor de base de datos puede rechazar conexiones para determinadas configuraciones de servidor vinculadas que usan el proveedor de MSDASQL, incluso si las compilaciones anteriores permitían esas conexiones.
Solución alternativa
Para solucionar este problema sin revertir la actualización, use uno de los métodos siguientes:
- Si la configuración no requiere la cadena del proveedor (
@provstr), quítela de la definición del servidor vinculado. - Agregue una
User IDentrada a la cadena del proveedor (@provstr). Por ejemplo, establezcaUser ID=<value>. La cadena del proveedor también debe incluirUID.
También puede evitar el error concediéndole permisos sysadmin al usuario afectado. Sin embargo, no se recomienda usar este método.