Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
Se aplica a: SQL Server 2025 (17.x)
En este artículo se describen los cambios importantes en las características del motor de base de datos de SQL Server introducido con SQL Server 2025 (17.x). Estos cambios pueden interrumpir las aplicaciones, scripts o funcionalidades que se basan en versiones anteriores de SQL Server.
Se produce un error en las conexiones del servidor vinculado después de una actualización
SQL Server 2025 (17.x) incluye cambios en el cifrado que presentan un cambio importante en los servidores vinculados. Estos cambios pueden interrumpir las aplicaciones, scripts o funcionalidades que se basan en versiones anteriores de SQL Server.
Al actualizar desde versiones anteriores de SQL Server a SQL Server 2025 (17.x) con Microsoft OLE DB Driver 19, es posible que se produzcan errores en las configuraciones de servidor vinculado existentes. Los distintos valores predeterminados del parámetro de cifrado pueden provocar este error a menos que se proporcione un certificado válido.
En SQL Server 2025 (17.x):
-
Los servidores vinculados a instancias de SQL Server 2025 deben usar el
Encryptparámetro en la cadena de conexión. - Al migrar desde ediciones anteriores de SQL Server a SQL Server 2025 con Microsoft OLE DB Driver 19, se pueden producir errores en las configuraciones de servidor vinculado existentes.
Para obtener información sobre cómo conectarse de forma segura a instancias de SQL Server 2025 (17.x), consulte TDS 8.0.
Los componentes de replicación producen un error después de una actualización
SQL Server 2025 (17.x) incluye cambios en el cifrado que introducen un cambio importante en la replicación transaccional, instantánea, punto a punto y combinación.
Es posible que se produzca un error en los componentes de replicación después de una actualización a SQL Server 2025 (17.x) de todas las versiones anteriores de SQL Server, si la instancia de SQL Server:
- Se configura como publicador de replicación.
- Tiene un distribuidor remoto en la topología de replicación.
- No está configurado con un certificado de confianza.
Es posible que vea el siguiente comportamiento después de la actualización:
- La replicación sigue funcionando correctamente, pero se produce un error en los cambios realizados en la publicación.
- Error en el Monitor de replicación en SQL Server Management Studio (SSMS).
- Se produce un error en el estado del agente en la interfaz de usuario de SSMS.
Un distribuidor remoto usa un servidor vinculado para la comunicación entre el publicador y el distribuidor. El valor predeterminado seguro introducido en SQL Server 2025 (17.x) del proveedor OLEDB 19 requiere que TrustServerCertificate=False.
Puede resolver este problema de forma preventiva antes de iniciar la actualización, o puede resolver el problema si se produce un error en los componentes de replicación después de una actualización.
Antes de iniciar la actualización
Si sabe que la instancia de SQL Server va a encontrar este problema después de una actualización, puede mitigar de forma preventiva el error configurando la instancia de SQL Server para usar un certificado comercial público o un certificado de una entidad de certificación interna.
Esta es la opción recomendada para la máxima seguridad.
Componentes con errores después de una actualización
Si se produce un error en los componentes de replicación después de una actualización, puede configurar la instancia de SQL Server para que use un certificado comercial público o un certificado de una entidad de certificación interna.
Como alternativa, puede elegir la opción menos segura para invalidar el valor predeterminado seguro del proveedor OLEDB 19 y establecerlo trust_distributor_certificate=yes para que el distribuidor confíe en el certificado autofirmado.
Para invalidar el nuevo valor predeterminado seguro, use el procedimiento almacenado sp_changedistributor_property para establecer la trust_distributor_certificate opción en yes:
EXECUTE sp_changedistributor_property
@property = N'trust_distributor_certificate',
@value = N'yes';
Nota:
Los valores predeterminados seguros se refieren al proveedor OLE DB subyacente 19, lo que mejora la seguridad. La opción de invalidar el valor predeterminado es menos segura que configurar la instancia para usar un certificado de confianza. Después de invalidar el valor predeterminado, tiene la opción de configurar SQL Server para que use un certificado y, a continuación, use el procedimiento almacenado sp_changedistributor_property para volver a establecer la trust_distributor_certificate=no propiedad en el valor predeterminado seguro.
Se produce un error al agregar un distribuidor de replicación remota
SQL Server 2025 (17.x) incluye cambios en el cifrado que introducen un cambio importante en la replicación transaccional, instantánea, punto a punto y combinación.
Al configurar un distribuidor para la replicación, se produce un error en el procedimiento almacenado sp_adddistributor cuando:
- El publicador es una instancia de SQL Server 2025 (17.x).
- El distribuidor es remoto.
- El distribuidor no está configurado con un certificado de confianza.
Es posible que vea el siguiente error al ejecutarse sp_adddistributor en la instancia del publicador:
OLE DB provider "MSOLEDBSQL19" for linked server "repl_distributor" returned message
"Client unable to establish connection".
Msg -2146893019, Level 16, State 1, Line 21
SSL Provider: The certificate chain was issued by an authority that is not trusted.
Un distribuidor remoto usa un servidor vinculado para la comunicación entre el publicador y el distribuidor. El valor predeterminado seguro introducido en SQL Server 2025 (17.x) del proveedor OLEDB 19 requiere que TrustServerCertificate=False.
Para resolver este problema, configure la instancia de SQL Server del distribuidor para que use un certificado comercial público o un certificado de una entidad de certificación interna.
Como alternativa, puede elegir la opción menos segura para invalidar el valor predeterminado seguro del proveedor OLEDB 19 y establecerlo TrustServerCertificate=True para que el distribuidor confíe en el certificado autofirmado. Para invalidar el valor predeterminado, use el trust_distributor_certificate parámetro al llamar al procedimiento almacenado sp_adddistributor :
EXECUTE sys.sp_adddistributor @trust_distributor_certificate = 'yes';
Nota:
Los valores predeterminados seguros se refieren al proveedor OLE DB subyacente 19, lo que mejora la seguridad. La opción de invalidar el valor predeterminado es menos segura que configurar la instancia para usar un certificado de confianza. Después de invalidar el valor predeterminado, tiene la opción de configurar SQL Server para que use un certificado y, a continuación, use el procedimiento almacenado sp_changedistributor_property para volver a establecer la trust_distributor_certificate=no propiedad en el valor predeterminado seguro.
La supervisión remota del envío de registros puede interrumpirse
SQL Server 2025 (17.x) incluye cambios en el cifrado que presentan un cambio importante en el trasvase de registros. Es posible que encuentre estos problemas al actualizar.
La supervisión del trasvase de registros puede interrumpirse si el monitor es una instancia remota de SQL Server 2025 (17.x) cuando otras instancias de SQL Server de la topología de trasvase de registros usan una versión anterior.
Para obtener información sobre cómo conectarse de forma segura a instancias de SQL Server 2025 (17.x), consulte TDS 8.0.
Las consultas de texto completo y las poblaciones producen un error después de la actualización.
SQL Server 2025 (17.x) elimina los archivos binarios de filtro y de separador de palabras heredados que se utilizan en Full-Text Search. Estos componentes se vuelven a compilar con un conjunto de herramientas moderno y ofrecen compatibilidad ampliada con más lenguajes y tipos de documentos. Los índices existentes después de la actualización se designan con index_version = 1 según sys.fulltext_indexes. Los índices recién creados se designan en la versión 2 y usan los nuevos componentes, a menos que se especifique lo contrario mediante la configuración con ámbito de base FULLTEXT_INDEX_VERSION de datos.
Cualquier consulta Full-Text en un índice de versión 1 no encuentra los archivos binarios del separador de palabras en el disco inmediatamente después de la actualización:
Msg 30010, Level 16, State 2, Line 8
An error has occurred during the full-text query. Common causes include: word-breaking errors or timeout, FDHOST permissions/ACL issues, service account missing privileges, malfunctioning IFilters, communication channel issues with FDHost and sqlservr.exe, etc. If recently performed in-place upgrade to SQL2025, For help please see https://aka.ms/sqlfulltext.
Del mismo modo, cualquier población de texto completo emitida en un índice de versión 1 no encuentra los binarios del filtro en el disco después de la actualización.
Warning: No appropriate filter was found during full-text index population for table or indexed view '[db].[dbo].[table_name]' (table or indexed view ID '901578250', database ID '5'), full-text key value '1'. Some columns of the row were not indexed.
Recompilación de índices existentes con una nueva versión
La manera recomendada de seguir usando los índices es volver a generarlos con los componentes de la versión 2 más reciente.
-- Verify value = 2
SELECT *
FROM sys.database_scoped_configurations
WHERE [name] = 'FULLTEXT_INDEX_VERSION';
-- Per catalog upgrade
ALTER FULLTEXT CATALOG [FtCatalog] REBUILD;
El único método para actualizar índices individuales sin volver a generar todo el catálogo es quitarlos y volver a crearlos.
Seguir usando la versión 1
Si es necesario permanecer en la versión 1 para la compatibilidad de aplicaciones, primero asegúrese de establecer FULLTEXT_INDEX_VERSION = 1 para evitar una actualización no deseada en la recompilación.
ALTER DATABASE SCOPED CONFIGURATION
SET FULLTEXT_INDEX_VERSION = 1;
A continuación, debe copiar el separador de palabras heredado y filtrar archivos binarios de una instancia anterior en la carpeta de la instancia de binn destino.