Instalar SQL Server con el recurso compartido de archivos SMB como opción de almacenamiento

A partir de SQL Server 2012, las bases de datos del sistema (Master, Model, MSDB y TempDB) y las bases de datos de usuario del Motor de base de datos se pueden instalar con el servidor de archivos del Bloque de mensajes del servidor (SMB) como opción de almacenamiento. Esto se aplica tanto a las instalaciones independientes de SQL Server como a las instalaciones de clústeres de conmutación por error (FCI) de SQL Server.

[!NOTA]

Secuencia de archivos no se admite actualmente en un recurso compartido de archivos SMB.

Consideraciones acerca de la instalación

Formatos del recurso compartido de archivos de SMB:

Al especificar el recurso compartido de archivos SMB, se admiten los siguientes formatos de la Convención de nomenclatura universal (UNC) para las bases de datos independientes y FCI.

  • \\NombreDeServidor\NombreDeRecursoCompartido\

  • \\NombreDeServidor\NombreDeRecursoCompartido

Para obtener más información acerca de la Convención de nomenclatura universal, vea UNC (https://go.microsoft.com/fwlink/?LinkId=245534).

No se permite usar la ruta UNC de bucle invertido (una ruta UNC cuyo nombre de servidor es localhost, 127.0.0.1 o el nombre del equipo local). Como caso especial, tampoco se admite SQL Server que usa el clúster de servidor de archivos que se hospeda en el mismo nodo en que se ejecuta SQL Server. Para evitar esta situación, se recomienda que SQL Server y el clúster del servidor de archivos se creen en clústeres de Windows independientes.

Los formatos siguientes de ruta UNC no se admiten:

  • Ruta de acceso de bucle invertido, por ejemplo \\localhost\.. \ o \\127.0.0.1\... \

  • Recursos compartidos administrativos, por ejemplo \\nombreDeServidor\x$

  • Otros formatos de ruta UNC como \\? \x:\

  • Unidades de red asignadas.

Instrucciones admitidas del lenguaje de definición de datos (DDL)

Las instrucciones DDL Transact-SQL y los procedimientos almacenados del motor de base de datos siguientes admiten recursos compartidos de archivos SMB:

  1. CREATE DATABASE (Transact-SQL)

  2. ALTER DATABASE (Transact-SQL)

  3. RESTORE (Transact-SQL)

  4. BACKUP (Transact-SQL)

  5. sp_attach_db (Transact-SQL)

  6. sp_attach_single_file_db (Transact-SQL)

Opciones de instalación

  • En la página “Configuración del Motor de base de datos” de la interfaz de usuario de la instalación, en la pestaña “Directorios de datos”, establezca el parámetro "Directorio raíz de datos“ como “\\fileserver1\share1\”.

  • En la instalación desde el símbolo del sistema, especifique “/INSTALLSQLDATADIR” como “\\fileserver1\share1\”.

    A continuación se muestra la sintaxis de ejemplo para instalar SQL Server en un servidor independiente usando la opción de recurso compartido de archivos de SMB:

    Setup.exe /q /ACTION=Install /FEATURES=SQL /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="<StrongPassword>" /INSTALLSQLDATADIR="\\FileServer\Share1\" /IACCEPTSQLSERVERLICENSETERMS
    

    Para instalar una instancia en clúster de conmutación por error de SQL Server de un único nodo con el motor de base de datos y con Analysis Services en la instancia predeterminada:

    setup.exe /q /ACTION=InstallFailoverCluster /InstanceName=MSSQLSERVER /INDICATEPROGRESS /ASSYSADMINACCOUNTS="<DomainName\UserName>" /ASDATADIR=<Drive>:\OLAP\Data /ASLOGDIR=<Drive>:\OLAP\Log /ASBACKUPDIR=<Drive>:\OLAP\Backup /ASCONFIGDIR=<Drive>:\OLAP\Config /ASTEMPDIR=<Drive>:\OLAP\Temp /FAILOVERCLUSTERDISKS="<Cluster Disk Resource Name - for example, 'Disk S:'" /FAILOVERCLUSTERNETWORKNAME="<Insert Network Name>" /FAILOVERCLUSTERIPADDRESSES="IPv4;xx.xxx.xx.xx;Cluster Network;xxx.xxx.xxx.x" /FAILOVERCLUSTERGROUP="MSSQLSERVER" /Features=AS,SQL /ASSVCACCOUNT="<DomainName\UserName>" /ASSVCPASSWORD="xxxxxxxxxxx" /AGTSVCACCOUNT="<DomainName\UserName>" /AGTSVCPASSWORD="xxxxxxxxxxx" /INSTALLSQLDATADIR="\\FileServer\Share1\" /SQLCOLLATION="SQL_Latin1_General_CP1_CS_AS" /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="xxxxxxxxxxx" /SQLSYSADMINACCOUNTS="<DomainName\UserName> /IACCEPTSQLSERVERLICENSETERMS
    

    Para obtener más información sobre el uso de varias opciones de parámetros de línea de comandos en SQL Server 2012, vea Instalar SQL Server 2012 desde el símbolo del sistema.

Consideraciones sobre el sistema operativo (protocolo SMB frente aSQL Server)

Los distintos sistemas operativos Windows tienen diferentes versiones del protocolo SMB y la versión del protocolo SMB es transparente para SQL Server. A continuación se muestran las ventajas de las distintas versiones del protocolo SMB con respecto a SQL Server 2012.

Sistema operativo

Versión del protocolo SMB2

Ventajas para SQL Server

Windows Server 2008

2.0

  • Rendimiento mejorado con respecto a las versiones anteriores de SMB.

  • Durabilidad, que ayuda a recuperarse de problemas temporales de red.

Windows Server 2008 R2

2.1

  • Compatibilidad con MTU grande, lo que beneficia a las transferencias de datos grandes, como operaciones de copia de seguridad y restauración de SQL. Esta capacidad la debe habilitar el usuario. Para obtener más detalles sobre cómo habilitar esta capacidad, vea Novedades de SMB (https://go.microsoft.com/fwlink/?LinkID=237319).

  • Mejoras significativas en el rendimiento, concretamente para las cargas de trabajo de estilo OLTP de SQL. Estas mejoras de rendimiento necesitan la aplicación de una revisión. Para obtener más información sobre la revisión, vea esta página (https://go.microsoft.com/fwlink/?LinkId=237320).

Windows Server 2012

3.0

  • Admite conmutación por error transparente de los recursos compartidos de archivos que proporcionan cero tiempo de inactividad sin que sea necesaria la intervención del administrador DBA o del servidor de archivos de SQL en las configuraciones de clúster de servidores de archivos.

  • Compatibilidad con E/S usando varias interfaces de red simultáneamente, así como tolerancia a errores de interfaz de red.

  • Compatibilidad con interfaces de red con funciones de RDMA.

  • Para obtener más información acerca de estas características y el bloque de mensajes del servidor, vea Información general del bloque de mensajes del servidor (https://go.microsoft.com/fwlink/?LinkId=253174).

  • Compatibilidad con Servidor de archivos de escalabilidad horizontal (SoFS) con disponibilidad continua.

Windows Server 2012 R2

3.02

  • Admite conmutación por error transparente de los recursos compartidos de archivos que proporcionan cero tiempo de inactividad sin que sea necesaria la intervención del administrador DBA o del servidor de archivos de SQL en las configuraciones de clúster de servidores de archivos.

  • Compatibilidad con E/S usando varias interfaces de red simultáneamente, así como tolerancia a errores de interfaz de red usando SMB multicanal.

  • Compatibilidad con interfaces de red con capacidades RDMA usando SMB directo.

  • Para obtener más información acerca de estas características y el bloque de mensajes del servidor, vea Información general del bloque de mensajes del servidor (https://go.microsoft.com/fwlink/?LinkId=253174).

  • Compatibilidad con Servidor de archivos de escalabilidad horizontal (SoFS) con disponibilidad continua.

  • Optimizado para pequeñas operaciones de E/S de lectura y escritura aleatorias comunes a SQL Server OLTP.

  • Unidad de transmisión máxima (MTU) está activada de forma predeterminada, lo que mejora considerablemente el rendimiento en transferencias secuenciales grandes como almacenamiento de datos y copias de seguridad o restauración de bases de datos de SQL Server.

Consideraciones relativas a la seguridad

  • La cuenta de servicio de SQL Server y la cuenta de servicio del agente de SQL Server deben tener permisos de recurso compartido CONTROL TOTAL y permisos NTFS en las carpetas de recursos compartidos SMB. Si se usa un servidor de archivos SMB, la cuenta de servicio de SQL Server puede ser una cuenta de dominio o una cuenta del sistema. Para obtener más información sobre los permisos NTFS y de uso compartido, vea Permisos NTFS y de uso compartido en un servidor de archivos (https://go.microsoft.com/fwlink/?LinkId=245535).

    [!NOTA]

    Los permisos de recursos compartidos y los permisos NTFS FULL CONTROL en las carpetas de recursos compartidos SMB deben limitarse a la cuenta de servicio de SQL Server , la cuenta de servicio del Agente SQL Server y los usuarios de windows con roles de servidor de administración.

    Se recomienda usar una cuenta de dominio como cuenta de servicio de SQL Server. Si la cuenta del sistema se emplea como cuenta de servicio, conceda permisos para la cuenta del equipo en el formato: <domain_name>\<computer_name>$.

    [!NOTA]

    • Durante la instalación de SQL Server, es necesario especificar la cuenta de dominio como una cuenta de servicio si el recurso compartido de archivos de SMB se especifica como opción de almacenamiento. Con el recurso compartido de archivos de SMB, la cuenta del sistema solo se puede especificar como una cuenta de servicio después de la instalación de SQL Server.

    • Las cuentas virtuales no se pueden autenticar en una ubicación remota. Todas las cuentas virtuales usan el permiso de la cuenta del equipo. Aprovisione la cuenta del equipo en el formato <domain_name>\<computer_name>$.

  • La cuenta usada para instalar SQL Server debe tener permisos CONTROL TOTAL en la carpeta de recurso compartido de archivos de SMB empleada como directorio de datos, o cualquier otra carpeta de datos (directorio de la base de datos de usuario, directorio de registro de la base de datos de usuario, directorio de TempDB, directorio de registro de TempDB, directorio de copia de seguridad) durante la instalación del clúster.

  • Se deben conceder privilegios SeSecurityPrivilege en el servidor de archivos de SMB a la cuenta usada para instalar SQL Server. Para ello, use la consola Directiva de seguridad local del servidor de archivos para agregar la cuenta de instalación de SQL Server a la directiva Administrar registro de seguridad y auditoría. Esta opción está disponible en la sección Asignaciones de derechos de usuario bajo Directivas locales en la consola Directiva de seguridad local.

Problemas conocidos

  • Después de separar una base de datos de SQL Server 2012 que reside en el almacenamiento conectado a la red, pueden surgir problemas con los permisos de base de datos al intentar volver a adjuntar la base de datos de SQL Server. El problema se define en este artículo de KB (https://go.microsoft.com/fwlink/?LinkId=237321). Para conocer una solución alternativa a este problema, vea la sección Más información del artículo de KB.

  • Si se usa un recurso compartido de archivo SMB como opción de almacenamiento para una instancia en clúster de SQL Server, el registro de diagnóstico del clúster de conmutación por error de SQL Server no puede escribirse de forma predeterminada en el recurso compartido de archivo porque la biblioteca DLL de recursos de SQL Server carece de permiso de lectura y escritura en el recurso compartido de archivo. Para resolver este problema, intente uno de los métodos siguientes:

    1. Conceda permisos de lectura y escritura en el recurso compartido de archivo a todos los objetos de equipo del clúster.

    2. Establezca la ubicación de los registros de diagnóstico en una ruta de acceso de archivo local. Vea el ejemplo siguiente:

      ALTER SERVER CONFIGURATION
      SET DIAGNOSTICS LOG PATH = 'C:\logs';
      

Vea también

Referencia

Configurar los permisos y las cuentas de servicio de Windows

Conceptos

Planear una instalación de SQL Server

Otros recursos

Temas de procedimientos de instalación