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.
En las secciones siguientes se describen los problemas conocidos con SQL Server en Linux.
General
En la tabla siguiente se enumeran los problemas más comunes con SQL Server en Linux.
| Problema | Resolución |
|---|---|
| La longitud del nombre de host donde se instala SQL Server debe tener 15 caracteres o menos. | Cambie el nombre por uno que tenga 15 caracteres o menos. |
| Establecer manualmente la hora del sistema hacia atrás en el tiempo hace que SQL Server dejar de actualizar la hora interna del sistema en el Motor de base de datos. | Reinicie SQL Server. |
| Solo se admiten las instalaciones de instancia única. | Si desea tener más de una instancia en un host específico, plantéese usar máquinas virtuales o contenedores de Linux. |
| Administrador de configuración de SQL Server no se puede conectar a SQL Server en Linux. | Ninguno. |
| El idioma predeterminado de la cuenta es inglés. | Cambie el idioma de la cuenta utilizando la declaración. |
El proveedor OLE DB registra la advertencia siguiente:Failed to verify the Authenticode signature of 'C:\binn\msoledbsql.dll'. Signature verification of SQL Server DLLs will be skipped. Genuine copies of SQL Server are signed. Failure to verify the Authenticode signature might indicate that this isn't an authentic release of SQL Server. Install a genuine copy of SQL Server or contact customer support. |
No hace falta realizar ninguna acción. El proveedor OLE DB se firma con SHA256. El Motor de base de datos de SQL Server no valida el .dll firmado correctamente. |
El comando Reset password mediante mssql-conf produce el siguiente error: Unable to set the system administrator password. Please consult the ERRORLOG in /path for more information. |
El mensaje de error es un falso negativo. El restablecimiento de contraseña se realizó correctamente y puede seguir usando la nueva contraseña. Applies to: SQL Server 2022 (16.x) solo imágenes de contenedor. |
Bases de datos
La base de datos no se puede mover con la utilidad mssql-conf. Otras bases de datos del sistema se pueden mover con mssql-conf.
Al restaurar una base de datos de la que se ha realizado una copia de seguridad en SQL Server en Windows, debe usar la cláusula
WITH MOVEen la instrucción Transact-SQL. Para obtener más información, consulte Migrar una base de datos de SQL Server de Windows a Linux mediante copias de seguridad y restauración.Algunos algoritmos (conjuntos de cifrado) para la seguridad de la capa de transporte (TLS) no funcionan correctamente con SQL Server en Linux. Esto produce errores de conexión al intentar conectarse a SQL Server y problemas al establecer conexiones entre réplicas en grupos de alta disponibilidad.
Para resolver este problema, modifique el script de configuración de
mssql.confpara que SQL Server en Linux deshabilite los conjuntos de cifrado problemáticos siguiendo estos pasos:Agregue la siguiente sección a . El símbolo de exclamación () niega la expresión. Esto indica a OpenSSL que no use el siguiente conjunto de aplicaciones de cifrado.
[network] tlsciphers=AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:!ECDHE-RSA-AES128-GCM-SHA256:!ECDHE-RSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES256-GCM-SHA384:!ECDHE-ECDSA-AES128-GCM-SHA256:!ECDHE-ECDSA-AES256-SHA384:!ECDHE-ECDSA-AES128-SHA256:!ECDHE-ECDSA-AES256-SHA:!ECDHE-ECDSA-AES128-SHA:!ECDHE-RSA-AES256-SHA384:!ECDHE-RSA-AES128-SHA256:!ECDHE-RSA-AES256-SHA:!ECDHE-RSA-AES128-SHA:!DHE-RSA-AES256-GCM-SHA384:!DHE-RSA-AES128-GCM-SHA256:!DHE-RSA-AES256-SHA:!DHE-RSA-AES128-SHA:!DHE-DSS-AES256-SHA256:!DHE-DSS-AES128-SHA256:!DHE-DSS-AES256-SHA:!DHE-DSS-AES128-SHA:!DHE-DSS-DES-CBC3-SHA:!NULL-SHA256:!NULL-SHAReinicie SQL Server con el comando siguiente.
sudo systemctl restart mssql-server
Las bases de datos de SQL Server 2014 (12.x) en Windows que usan OLTP en Memoria no se pueden restaurar en SQL Server en Linux. Si la base de datos de SQL Server 2014 (12.x) usa In-Memory OLTP, actualice primero las bases de datos a una versión más reciente de SQL Server en Windows. A continuación, puede moverlo a SQL Server en Linux, con copia de seguridad o restauración, o desasociar o adjuntar.
El permiso de usuario no se admite en Linux en este momento.
Las copias de seguridad comprimidas por TDE que se realizan con SQL Server 2019 (15.x) CU 16 y versiones posteriores no se pueden restaurar en versiones anteriores de CU de SQL Server 2019 (15.x). Para obtener más información, vea FIX: Se produce el error 3241 durante la ejecución de RESTORE LOG o RESTORE DATABASE.
Las copias de seguridad comprimidas de Cifrado de datos transparente (TDE) que se realizan con versiones CU anteriores de SQL Server 2019 (15.x) todavía se pueden restaurar mediante SQL Server 2019 (15.x) CU 16 y versiones posteriores.
Al instalar SQL Server 2022 (16.x) en Ubuntu 22.04, es posible que vea el siguiente mensaje de error:
Failed to start Motor de base de datos de Microsoft SQL Server. Si revisa el registro de errores, verá una ruta de acceso incorrecta para las bases de datos del sistema.Para resolver el problema, inicie la instancia en modo de usuario único y use para mover la ubicación configurada de las bases de datos del sistema a la ubicación predeterminada . Después de este cambio, reinicie el servicio.
Red
Las características relacionadas con conexiones TCP salientes del proceso (como servidores vinculados, PolyBase o grupos de disponibilidad) podrían no funcionar si se cumplen las condiciones siguientes:
El servidor de destino se especifica como un nombre de host, y no como una dirección IP.
La instancia de origen tiene deshabilitado IPv6 en el kernel. Para verificar si el sistema tiene IPv6 habilitado en el kernel, todas las pruebas siguientes necesitan completarse sin errores:
- imprime la línea de comandos de arranque del kernel actual. El resultado no tiene que contener .
- El directorio debe existir.
- Un programa en C que invoque una llamada al sistema debería ejecutarse correctamente: la llamada al sistema debe devolver un valor y no fallar con un error.
El error exacto depende de la característica. En el caso de servidores vinculados, verá un error de tiempo de espera de inicio de sesión. Para los grupos de disponibilidad, el DDL en el servidor secundario producirá un error después de cinco minutos.
Para solucionar este problema, emplee una de las siguientes opciones:
Use direcciones IP en lugar de nombres de host para especificar el destino de la conexión TCP.
Habilite IPv6 en el kernel, eliminando el elemento correspondiente de la línea de comandos de arranque. El método depende de la distribución de Linux y el cargador de arranque que use (por ejemplo, grub). Si quiere deshabilitar IPv6, puede hacerlo si establece en la configuración de (por ejemplo, ). Aunque esta configuración impide que el adaptador de red del sistema obtenga una dirección IPv6, permite que funcionen las características de .
TLS 1.3 no se admite en SQL Server 2022
Aplica a: Solo se aplica a SQL Server 2022 (16.x).
Aunque TLS 1.3 se admite en SQL Server 2022 (16.x) para Windows, debe usar TLS 1.2 en Linux.
Nota:
TLS 1.3 es compatible con SQL Server 2025 (17.x) en Ubuntu 22.04, Ubuntu 24.04, RHEL 9 y RHEL 10. TLS 1.3 está habilitado de forma predeterminada.
Sistema de archivos de red (NFS)
Si usa recursos compartidos remotos de NFS (Network File System) en producción, tenga en cuenta los siguientes requisitos de compatibilidad:
Use NFS versión 4.2 o versiones posteriores. Las versiones anteriores de NFS no admiten las características necesarias, como y la creación de archivos dispersos, que son comunes a los sistemas de archivos modernos.
Busque solo los directorios en el montaje NFS. No se admiten otros archivos, como los archivos binarios del sistema SQL Server.
Asegúrese de que los clientes de NFS usen la opción al montar el recurso compartido remoto.
Localización
Si usa una configuración regional distinta del inglés () durante la configuración, tendrá que usar la codificación UTF-8 en el terminal o en la sesión de Bash. Si usa la codificación ASCII, puede que se muestre un error parecido a la siguiente salida:
UnicodeEncodeError: el códec 'ascii' no puede codificar el carácter u'\xf1' en la posición 8: ordinal no está dentro del rango de(128)
Si no puede usar la codificación UTF-8, ejecute el programa de instalación con la variable de entorno para especificar la opción de idioma.
sudo MSSQL_LCID=<LcidValue> /opt/mssql/bin/mssql-conf setupAl ejecutar
mssql-conf setupy realizar una instalación que no sea en inglés de SQL Server, se pueden mostrar caracteres extendidos incorrectos después del texto localizado, "Configurar SQL Server... ". O bien, para instalaciones basadas en alfabetos no latinos, es posible que la frase falte por completo. La frase que falta tendría que mostrar la siguiente cadena localizada:El PID de licencias se procesó correctamente. La nueva edición es [Nombre edición].
Esta cadena solo se genera con fines informativos, no afecta a la instalación correcta de SQL Server de ninguna manera.
Búsqueda de texto completo
No todos los filtros están disponibles con esta versión, incluidos los filtros de Microsoft Office documentos. Para obtener una lista de los filtros admitidos, consulte Install SQL Server Full-Text Search en Linux.
SQL Server Integration Services (SSIS)
No se admite el paquete en SUSE Linux Enterprise Server (SLES). El paquete se admite en Ubuntu y Red Hat Enterprise Linux (RHEL).
Los paquetes de Integration Services pueden utilizar conexiones ODBC en Linux. Esta funcionalidad se probó con el SQL Server y los controladores ODBC de MySQL, pero también se espera que funcione con cualquier controlador ODBC Unicode que observe la especificación ODBC. En el tiempo de diseño, puede proporcionar un DSN o una cadena de conexión para conectarse a los datos de ODBC; también puede usar la autenticación de Windows. Para obtener más información, vea la entrada de blog que anuncia la compatibilidad con ODBC en Linux.
Las características siguientes no se admiten en esta versión al ejecutar paquetes de SSIS en Linux:
- Integration Services Base de datos del catálogo
- Ejecución programada de paquetes por Agente SQL Server
- Autenticación de Windows
- Componentes de terceros
- Captura de cambios de datos (CDC)
- Servicios de Integración Escala Horizontal
- Azure Feature Pack para SSIS
- Compatibilidad con Hadoop y HDFS
- Microsoft Connector para SAP BW
Para obtener una lista de los componentes de SSIS integrados que no se admiten actualmente, o que se admiten con determinadas limitaciones, vea Limitaciones y problemas conocidos de SSIS en Linux.
Para obtener más información sobre SSIS en Linux, vea los artículos siguientes:
- Entrada de blog donde se anuncia la compatibilidad de SSIS para Linux.
- Install SQL Server Integration Services (SSIS) en Linux
- Extracción, transformación y carga de datos en Linux con SSIS
SQL Server Management Studio (SSMS)
Las siguientes limitaciones se aplican a SQL Server Management Studio en Windows conectados a SQL Server en Linux.
No se admiten los planes de mantenimiento.
No se admiten el Data Warehouse de Gestión (MDW) ni el colector de datos en SQL Server Management Studio.
SQL Server Management Studio componentes de interfaz de usuario que tienen Windows autenticación o opciones de registro de eventos de Windows no funcionan con Linux. Todavía puede usar estas características con otras opciones, como las credenciales de SQL Server.
El número de archivos de registro que se conservarán no se puede modificar.
Alta disponibilidad y recuperación ante desastres
Se aplica a: SQL Server 2022 (16.x) solamente.
Al ejecutar SQL Server 2022 (16.x) CU 16 y versiones anteriores, en RHEL 9 como una aplicación confinada con SELinux habilitada, es posible que la agrupación en clústeres de Pacemaker no funcione según lo previsto. Debe instalar SQL Server 2022 (16.x) como una aplicación no definida con SELinux activada para usar las funcionalidades de agrupación en clústeres de Pacemaker. Este problema se resuelve en SQL Server 2022 (16.x) CU 17.
Servicios de Machine Learning
Aplica a: Solo se aplica a SQL Server 2022 (16.x).
Para los paquetes de SQL Server 2022 (16.x) para RHEL 9 y Ubuntu 22.04, hay algunos requisitos previos que se deben tener en cuenta con cgroup-v1, antes de instalar Machine Learning Services.
- RHEL 9
- Ubuntu 22.04
Como requisito previo, debe habilitarse según Uso de cgroupfs para administrar manualmente cgroups Red Hat Enterprise Linux 9 desde Red Hat.
A continuación, siga las instrucciones para instalar SQL Machine Learning Services como se documenta.
Deshabilite el aislamiento del espacio de nombres de red.
sudo /opt/mssql/bin/mssql-conf set extensibility outboundnetworkaccess 1Reinicie el servicio para que los cambios entren en vigor.
sudo systemctl restart mssql-launchpadd
Problemas conocidos de SQL Server 2025
Los siguientes problemas afectan a SQL Server 2025 (17.x).
SQL Server en Linux no se puede iniciar en máquinas con arquitectura de CPU híbrida
Issue: es posible que las instancias de SQL Server en Linux no se inicien si la máquina usa una CPU de arquitectura híbrida intel 12th Gen o posterior y el sistema operativo host es Linux.
Es posible que vea un mensaje de error similar al siguiente resultado:
Reason: 0x00000004 Message: ASSERT: Expression=(result * DrtlGetProcessorCoreCount() == DrtlGetProcessorCount()) File=LibOS\Windows\Kernel\SQLPal\common\dk\sos\src\sosnumap.cpp Line=208
Si desea usar un sistema operativo host linux, puede solucionar el problema deshabilitando los núcleos de eficiencia (núcleos E) en el BIOS. Si usa contenedores o un hipervisor como Hyper-V en Windows (incluido WSL), no se verá afectado.
Los modelos ONNX locales no se admiten en sistemas operativos Linux
CREATE EXTERNAL MODEL los modelos ONNX locales hospedados directamente en la SQL Server no están disponibles actualmente para Linux en SQL Server 2025 (17.x).