Sunteți pe pagina 1din 44

ACTIVIDAD AA02 – EV4 - PLAN DE CONFIGURACIÓN Y RECUPERACIÓN ANTE

DESASTRES PARA EL SMBD

Leonardo Valdes Angel

SENA
Especialización Tecnológica en Gestión y Seguridad de las Bases de Datos
Metodología Virtual
2019
Introducción

Un DESASTRE se define como un evento repentino no planeado que ocasiona la “no


disponibilidad” de los servicios informáticos por un tiempo tal que, para restablecer
estos servicios, es necesario utilizar facilidades alternas de cómputo y comunicaciones
en otra localidad.

Para poder restablecer estos servicios se hace necesario planear, desarrollar, probar
y llevar a cabo procedimientos que aseguren la recuperación de estos servicios,
documentando las estrategias, personal, procedimientos y recursos que serán
utilizados para responder ante interrupciones que afecten los servicios de cómputo y
comunicaciones.

Para cualquier tipo de organización es imprescindible que se cuente con la capacidad


para restablecer las operaciones de TI. Debido a que los riesgos asociados son muy
altos y la alta dependencia en las tecnologías de información y de telecomunicaciones
ha motivado la necesidad de contar con las medidas preventivas adecuadas y con un
nivel de continuidad que les permita ejecutar todos sus procesos sin ningún tipo de
pérdida o que la detención del servicio prestado sea mínima. Se torna necesario tener
una prevención de las múltiples amenazas, garantizando principalmente, la
preservación de tres características:

• Integridad: que se proteja la exactitud y totalidad de los datos y los métodos de


procesamiento.
• Confidencialidad: que la información sea accesible solo a las personas
autorizadas.
• Disponibilidad: que los usuarios autorizados tengan acceso a la información y
los recursos cuando lo necesiten.

Este documento describe la planeación y el diseño del plan de recuperación de


desastre para la infraestructura tecnológica que soportará el SMBD en la Alcaldía de
San Antonio del SENA, se identificarán las prioridades en el momento de recuperar,
prevenir y proteger los activos en el área de TI ante un desastre.
Objetivos de un plan de desastre

• Dar continuidad a los servicios informáticos en caso de presentarse una


situación de contingencia mayor o catastrófica.

• Proveer un enfoque organizado para el manejo de las actividades de respuesta


y recuperación luego de un incidente no planeado o de una interrupción
prolongada de los servicios de cómputo, con el objeto de evitar confusión y
reducir la probabilidad de error.

• Ofrecer respuestas oportunas y apropiadas a cualquier incidente no planeado,


reduciendo así el efecto de una interrupción de los servicios de cómputo.

• Recuperar las aplicaciones críticas del negocio de una manera oportuna,


incrementando la habilidad de la organización para recuperarse de una
pérdida o daños a las instalaciones y servicios.
Alcance

El Plan de recuperación de desastres debe incluir las acciones y procedimientos


individuales, así como a los responsables de dar respuesta y recuperación de la
operación normal de los servicios de cómputo y comunicaciones ante cualquiera de los
siguientes escenarios:

• Cualquier incidente externo que pudiera causar una interrupción de los servicios
de cómputo por un tiempo prolongado, como un corte en el servicio de
Comunicaciones o fallas en el suministro eléctrico.
• Cualquier incidente que cause daño físico a las instalaciones, como incendio,
temblor o inundación.
• Cualquier incidente que afecte indirectamente el acceso a las instalaciones,
como una huelga, evacuación urgente a las instalaciones debido a una amenaza
de bomba, o una amenaza externa como el incendio de algún edificio contiguo.
• Desastre regional no esperado tal como la erupción de un volcán, un terremoto
o una inundación.
• Cierre de las instalaciones por recomendación de la Secretaría de Salud.
Infraestructura Tecnológica

Secretaría Software de Aplicación Software Propietario


General Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business
Premium
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Gobierno Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business Aplicación de Gestión de
Premium Comerciantes
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Hacienda Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business Aplicación de Gestión de Impuesto
Premium Predial
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Planeación y Obras Públicas Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business Sistema de Información Geográfico
Premium Sistema de Información de
Microsoft Project Estratificación
Bitdefender Total Security 2019
Acrobat Reader
Secretaría de Educación Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business Aplicación de Matriculas
Premium Aplicación de Gestión Documental
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Secretaría Software de Aplicación Software Propietario
Salud Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business Aplicación del Sistema de
Premium Información Integral en Salud
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Deportes, Recreación y Cultura Windows 10 Professional Integrador de consultas y reportes
Microsoft Office 365 Business
Premium
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader

Gestión Ambiental y Minería Windows 10 Professional Integrador de consultas y reportes


Microsoft Office 365 Business Sistema de Información de Gestión
Premium Ambiental y Minera
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader

Oficina de Control Interno Windows 10 Professional Integrador de consultas y reportes


Microsoft Office 365 Business Aplicación de soporte a ISO 27000
Premium
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader

Oficina del alcalde Windows 10 Professional Integrador de consultas y reportes


Microsoft Office 365 Business
Premium
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader

Oficina de Tecnologías de Windows 10 Professional Integrador de consultas y reportes


Información y Comunicación Microsoft Office 365 Business Aplicación de Help Desk
Premium
Microsoft Project
Bitdefender Total Security 2019
Acrobat Reader
Equipo de Recuperación de Desastres

Cargo Nro. Teléfono Extensión Nro. Teléfono Correo Electrónico


Oficina Celular Institucional
Director de TIC’s 555-55-55 1001 555-555-55-55 directortic@alcaldia.sena.gov.co

Analista de 555-55-55 1002 555-555-55-55 analistatic@alcaldia.sena.gov.co


Implementación y
Soporte de
Proyectos y
Aplicaciones

Técnico de 555-55-55 1003 555-555-55-55 tsoporte@alcaldia.sena.gov.co


Soporte en
Campo

1 representante Email personalizado


por cada
secretaría
Análisis de Impacto

El Análisis de Impacto del Negocio, consiste en definir una serie de pasos interactivos
con el objeto de identificar claramente los impactos de las interrupciones y tomar
decisiones respecto a aquellos procesos que se consideran críticos para la
organización y que afectan directamente el negocio ante la ocurrencia de un desastre,
estos pasos se muestran en esta ilustración:

* Punto Tiempo objetivo de tiempo de recuperación (RTO).

Periodo de tiempo en el cual los mínimos niveles de productos y/o servicios y los sistemas, aplicaciones, o funciones que los
soportan deben ser recuperados después de que una interrupción ocurra.

* Punto objetivo de recuperación (RPO).

Punto en el tiempo en el cual los datos deben ser recuperados después de que una interrupción ocurra.

* WRT: Tiempo disponible para recuperar datos perdidos una vez los sistemas estén reparados

* MTD: Representa el periodo máximo de tiempo de inactividad que la organización puede tolerar.
Amenazas y Riesgos

Antes de identificar las amenazas y riesgos para el SMBD de la Alcaldía de San Antonio
del SENA es importante tener claros los siguientes conceptos.

• Activo: Es un objeto o recurso de valor empleado en una empresa u


organización.
• Amenaza: Es un evento que puede causar un incidente de seguridad en una
empresa u organización produciendo pérdidas o daños potenciales en sus
activos.
• Vulnerabilidad: Es una debilidad que puede ser explotada con la materialización
de una o varias amenazas a un activo.
• Riesgo: Es un incidente o situación, que ocurre en un sitio concreto en un
intervalo de tiempo determinado, con consecuencia negativas o positivas que
pueden afectar el cumplimiento de los objetivos.
• Control: Es un mecanismo de seguridad de prevención y corrección empleado
para disminuir las vulnerabilidades

Teniendo en cuenta los anteriores conceptos, se puede hacer una aproximación que
establezca un conjunto de causas que pueden generar dificultades, así:

Riesgos Tecnológicos • Fallas en el Fluido Eléctrico.


• Sabotaje Informático.
• Fallas en el Centro de Datos.
• Problemas Técnicos.
• Fallas en equipos tanto de
procesamiento,
telecomunicaciones como
eléctricos.
• Servicios de Soporte a Sistemas
de Producción y/o Servicios.
Riesgos Humanos • Robos.
• Acto Hostil.
• Marchas, mítines.
• Artefactos explosivos.
• Problemas organizacionales
(huelgas, leyes aceptadas por el
congreso, regulaciones
gubernamentales, leyes
internacionales)
• Problemas de terceros
involucrados en la producción o
soporte a un servicio.
• Problemas con los proveedores
de insumos o subproductos.

Desastres Naturales • Sismos


• Tormentas Eléctricas
• Incendios
• Inundaciones

Evaluación

Tipo de Riesgo Riesgo Probabilidad Calificación


Fallas en el Fluido Eléctrico M A

Tecnológico Sabotaje Informático M-A A

Fallas en el Centro de M A
Datos

Problemas Técnicos A A

Fallas en equipos tanto de M A


procesamiento,
telecomunicaciones como
eléctricos

Servicios de Soporte a M A
Sistemas de Producción
y/o Servicios
Tipo de Riesgo Riesgo Probabilidad Calificación
Robos M A
Humano
Acto Hostil B M

Marcha B M

Artefactos explosivos B A

Problemas B A
organizacionales (huelgas,
leyes aceptadas por el
congreso, regulaciones
gubernamentales, leyes
internacionales)

Problemas de terceros M A
involucrados en la
producción o soporte a un
servicio

Problemas con los M A


proveedores de insumos o
subproductos

Sismos B A
Natural
Tormentas Eléctricas B M

Erupciones B A

Incendio M A

Inundaciones M A

Toda evaluación de riesgos debe estar fundamentada en estudios técnicos y científicos


serios que deben revisarse y actualizarse periódicamente.
Valores de calificación
A= Alto M=Medio B=Bajo N/A= Ninguno
Actividades del Plan de Recuperación de Desastres

• Participar en la evaluación de daños en la infraestructura tecnológica, en los


sistemas y en las comunicaciones.
• Estimar el tiempo de reparación o reemplazo de equipos y/o sistemas afectados
por una contingencia o que presentan fallas.
• Coordinar el rescate de equipos para que no sufran mayor daño.
• Montar y organizar los equipos y sistemas en el Centro de Cómputo o
instalaciones Alternas de Trabajo.
• Restaurar y/o reconstruir archivos vitales.
• Reanudar los servicios de cómputo y comunicaciones que soportan los
procesos identificados como críticos.
• Asistir en la recuperación de los datos protegidos de las computadoras
personales y de las redes locales.
• Coordinar la distribución de equipos necesarios para activar la operación en el
Centro de Cómputo o instalaciones Alternas de Trabajo.
• Preparar equipos e instalar los clientes de las aplicaciones en el Centro de
Cómputo o instalaciones Alternas de Trabajo.
• Restablecer el acceso a la red local y a los sistemas de cómputo centralizados.
• Obtener los datos protegidos (Back-up) conservados fuera de la empresa.
• Contactar a los proveedores de bienes y servicios de Infraestructura
Tecnológica que sean necesarios para apoyar la recuperación.
• Coordinar todas las actividades de soporte para la restauración del Centro de
• Cómputo afectado.
• Coordinar la reinstalación del Centro de Cómputo afectado una vez que ha sido
restaurado.
• Coordinar una reunión de evaluación del proceso del Plan.
• Generar un reporte de evaluación del Plan al Comité Directivo de la
Organización y a la Dirección General.
Plan de priorización por procesos
Secretaria / Procesos Sistemas Recursos MTD Prioridad de RTO RPO WRT Procedimiento
Oficina Transversales Críticos Días recuperación Días Días Días Alterno
General Integrador de Web de la Profesionales de 1 Alta 0.5 1 0.5 - 1 Atención al
consultas y Alcaldía TICs público
Gobierno reportes Aplicación de 2 Alta 1 1 0.5 - 1 presencial
gestión de Proveedores de
Acceso a red comerciantes TICs Aplicar
Hacienda corporativa e Aplicación de 2 Alta 1 1 0.5 - 1 procedimientos
intranet Gestión de Infraestructura de manuales
Impuesto Telecomunicación utilizando
Servidor Predial formatos físicos
Plan/Obras Impresión Sistema de Sistemas 2 Media 1 1 0.5 - 1 establecidos para
Información Operativos los casos de
Servidor de Geográfico contingencia.
Archivos SMBD
Sistema de
Correo Información
electrónico Estratificación
Educación Sistema de 2 Media 1 1 0.5 - 1
Acceso a Información de
Internet Matriculas

Aplicación Help Aplicación de


Desk Gestión
Documental
Salud del Sistema de 1 Alta 0.5 1 0.5 - 1
Información
Integral en
Salud
Deportes/Cultura - 3 Media Baja 1 1 0.5 - 1

Ambiental/Minería Sistema de 2 Media 1 1 0.5 - 1


Información de
Gestión
Ambiental y
Minera
Control Interno Aplicación de 2 Media Alta 1 1 0.5 - 1
soporte a ISO
27000
Política de Copias de Seguridad

Secretaría Activo Actividad Frecuencia Responsable Medidas de Control


Todas Archivos de Office y Copia de Seguridad Periodo: Diario y Oficina de TICs Verificación:
Project en el servidor de Consolidado Mensual de los
backups y su Semanal datos y
respectivo espejo. procedimientos de
Medio: DD, DD copia, transferencia
Espero y restauración de
Archivos de todas las Copia de Seguridad Periodo: Diario y datos.
aplicaciones críticas. de archivos de Consolidado
configuración y data semanal Custodia: Oficina de
de producción en TICs y Proveedor de
servidor de backups Medio: DD y almacenamiento en
y transferencia Almacenamiento en la nube según
encriptada a la nube estricto protocolo
servidor de de confidencialidad
proveedor de y soporte.
respaldo.
Registro: Acta
detallada de cada
uno de los backups
Resumen: Configuración de Restauración y Recuperación de SQL Server

Para recuperar una base de datos de SQL Server de una falla, un administrador de
base de datos tiene que restaurar un conjunto de copias de seguridad de SQL Server
en una secuencia de restauración lógicamente correcta y significativa. La restauración
y recuperación de SQL Server admite la restauración de datos desde copias de
seguridad de una base de datos completa, un archivo de datos o una página de datos,
de la siguiente manera:

La base de datos (una restauración completa de la base de datos)


Toda la base de datos se restaura y recupera, y la base de datos está fuera de línea
durante la duración de las operaciones de restauración y recuperación.

El archivo de datos (un archivo de restauración)


Un archivo de datos o un conjunto de archivos se restaura y recupera. Durante una
restauración de archivos, los grupos de archivos que contienen los archivos se
desconectan automáticamente mientras dura la restauración. Cualquier intento de
acceder a un grupo de archivos sin conexión provoca un error.

La página de datos (una página de restauración)


Bajo el modelo de recuperación completa o el modelo de recuperación de registro
masivo, puede restaurar bases de datos individuales. Las restauraciones de página se
pueden realizar en cualquier base de datos, independientemente del número de grupos
de archivos.
La copia de seguridad y restauración de SQL Server funciona en todos los sistemas
operativos compatibles. Para obtener información sobre los sistemas operativos
compatibles, consulte Requisitos de hardware y software para instalar SQL. Para
obtener información sobre la compatibilidad con copias de seguridad de versiones
anteriores de SQL Server, consulte la sección "Compatibilidad con soporte" de
RESTORE (Transact-SQL).
Descripción general de los escenarios de restauración

Un escenario de restauración en SQL Server es el proceso de restaurar datos de una


o más copias de seguridad y luego recuperar la base de datos. Los escenarios de
restauración admitidos dependen del modelo de recuperación de la base de datos y
de la edición de SQL Server.

La siguiente tabla presenta los posibles escenarios de restauración que son


compatibles con diferentes modelos de recuperación.

Escenario de Bajo modelo de recuperación En modelos de recuperación


restauración simple completos / de registro masivo

Restauración Esta es la estrategia básica de Esta es la estrategia básica de


completa de la restauración. Una restauración completa restauración. Una restauración
base de datos de la base de datos puede implicar completa de la base de datos implica
simplemente restaurar y recuperar una la restauración de una copia de
copia de seguridad completa de la base seguridad completa de la base de
de datos. Alternativamente, una datos y, opcionalmente, una copia de
restauración completa de la base de seguridad diferencial (si corresponde),
datos puede implicar la restauración de seguida de la restauración de todas las
una copia de seguridad completa de la copias de seguridad de registro
base de datos seguida de la restauración posteriores (en secuencia). La
y recuperación de una copia de restauración completa de la base de
seguridad diferencial. datos se completa recuperando la
última copia de seguridad del registro
Para obtener más información, y también restaurándola (RESTAURAR
consulte Restaurar bases de datos CON RECUPERACIÓN).
completas (modelo de recuperación
simple) . Para obtener más información,
consulte Restauración completa de
bases de datos (Modelo de
recuperación completa)

Restauración de Restaure uno o más archivos de solo Restaura uno o más archivos, sin
archivos * lectura dañados, sin restaurar toda la restaurar toda la base de datos. La
base de datos. La restauración de restauración de archivos se puede
archivos solo está disponible si la base realizar mientras la base de datos está
de datos tiene al menos un grupo de fuera de línea o, para algunas
archivos de solo lectura. ediciones de SQL Server, mientras la
base de datos permanece en
línea. Durante una restauración de
archivos, los grupos de archivos que
contienen los archivos que se están
restaurando están siempre fuera de
línea.
Escenario de Bajo modelo de recuperación En modelos de recuperación
restauración simple completos / de registro masivo

Restaurar No aplica Restaura una o más páginas


página dañadas. La restauración de la página
se puede realizar mientras la base de
datos está fuera de línea o, para
algunas ediciones de SQL Server,
mientras la base de datos permanece
en línea. Durante una restauración de
página, las páginas que se están
restaurando están siempre fuera de
línea.

Debe haber disponible una cadena


ininterrumpida de copias de seguridad
de registros, hasta el archivo de
registro actual, y todas deben
aplicarse para actualizar la página con
el archivo de registro actual.

Para obtener más información,


consulte Restaurar páginas (SQL
Server) .

Restauración Restaure y recupere la base de datos en Restaure y recupere la base de datos


por partes * etapas a nivel de grupo de archivos, en etapas en el nivel de grupo de
comenzando con el principal y todos los archivos, comenzando con el grupo de
grupos de archivos secundarios de archivos principal.
lectura / escritura.

* La restauración en línea solo se admite en la edición Enterprise.


Modelos de recuperación y operaciones de restauración compatibles

Las operaciones de restauración que están disponibles para una base de datos dependen de
su modelo de recuperación. La siguiente tabla resume si y en qué medida cada uno de los
modelos de recuperación admite un escenario de restauración determinado.

Modelo de Modelo de Modelo de


Operación de recuperación recuperación de recuperación
restauración completa registro masivo simple

Recuperación de Recuperación Alguna exposición a Cualquier dato


datos completa (si el la pérdida de datos. desde la última
registro está copia de seguridad
disponible). completa o
diferencial se
pierde.

Restauración de En cualquier No permitido si la No soportado.


un punto en el momento cubierto copia de seguridad
tiempo por las copias de del registro contiene
seguridad de cambios masivos
registro. registrados.

Restauración de Apoyo total. Algunas veces. ** Disponible solo


archivos * para archivos
secundarios de
solo lectura.

Restauración de Apoyo total. Algunas veces. ** Ninguna.


página *

Restauración por Apoyo total. Algunas veces. ** Disponible solo


partes (nivel de para archivos
grupo de secundarios de
archivos) * solo lectura.

* Disponible solo en la edición Enterprise de SQL Server.

** Para conocer las condiciones requeridas, consulte Restricciones de restauración en el


modelo de recuperación simple , más adelante en este tema.
Restaurar escenarios bajo el modelo de recuperación simple

El modelo de recuperación simple impone las siguientes restricciones en las operaciones de


restauración:

• La restauración de archivos y la restauración por etapas están disponibles solo para


grupos de archivos secundarios de solo lectura. Para obtener información sobre estos
escenarios de restauración, consulte Restauraciones de archivos (modelo de
recuperación simple) y Restauraciones por etapas (SQL Server) .
• La restauración de la página no está permitida.
• La restauración en un punto en el tiempo no está permitida.

Si alguna de estas restricciones no es adecuada para sus necesidades de recuperación, le


recomendamos que considere usar el modelo de recuperación completa. Para obtener más
información, consulte Resumen de copia de seguridad (SQL Server) .

Importante

Independientemente del modelo de recuperación de una base de datos, una copia de


seguridad de SQL Server no puede ser restaurada por una versión de SQL Server que sea
más antigua que la versión que creó la copia de seguridad.
Restaurar bajo el modelo de recuperación de registro masivo

En esta sección se tratan las consideraciones de restauración que son exclusivas del modelo
de recuperación de registro masivo, que está destinado exclusivamente como complemento
del modelo de recuperación completa.

Nota

Para obtener una introducción al modelo de recuperación de registro masivo, consulte

El registro de transacciones (SQL Server) .

En general, el modelo de recuperación con registro masivo es similar al modelo de


recuperación completa, y la información descrita para el modelo de recuperación completa
también se aplica a ambos. Sin embargo, la recuperación en un punto en el tiempo y la
restauración en línea se ven afectadas por el modelo de recuperación de registro masivo.
Restricciones para la recuperación de un punto en el tiempo

Si una copia de seguridad del registro realizada bajo el modelo de recuperación de registro
masivo contiene cambios registrados de forma masiva, no se permite la recuperación en un
momento dado. Si intenta realizar una recuperación puntual en una copia de seguridad del
registro que contiene cambios masivos, la operación de restauración fallará.
Restricciones para la restauración en línea

Una secuencia de restauración en línea solo funciona si se cumplen las siguientes


condiciones:

• Todas las copias de seguridad de registro necesarias deben haberse realizado antes de
que comience la secuencia de restauración.
• Los cambios masivos deben respaldarse antes de iniciar la secuencia de restauración
en línea.
• Si existen cambios masivos en la base de datos, todos los archivos deben estar en línea
o inactivos . (Esto significa que ya no forma parte de la base de datos).

Si estas condiciones no se cumplen, la secuencia de restauración en línea falla.

Nota

Recomendamos cambiar al modelo de recuperación completa antes de iniciar una


restauración en línea. Para obtener más información, consulte Modelos de recuperación
(SQL Server) .

Para obtener información sobre cómo realizar una restauración en línea,


consulte Restauración en línea (SQL Server) .

Asesor de recuperación de base de datos (SQL Server Management Studio)

El Asesor de recuperación de base de datos facilita la construcción de planes de restauración


que implementan secuencias de restauración correctas óptimas. Se han solucionado muchos
problemas conocidos de restauración de bases de datos y mejoras solicitadas por los
clientes. Las mejoras principales introducidas por el Asesor de recuperación de base de
datos incluyen lo siguiente:

• Algoritmo del plan de restauración: el algoritmo utilizado para construir planes de


restauración ha mejorado significativamente, especialmente en escenarios de
restauración complejos. Muchos casos de borde, incluidos los escenarios de
bifurcación en restauraciones en un momento dado, se manejan de manera más
eficiente que en versiones anteriores de SQL Server.
• Restauraciones de punto en el tiempo: el Asesor de recuperación de base de datos
simplifica enormemente la restauración de una base de datos en un momento
dado. Una línea de tiempo de copia de seguridad visual mejora significativamente el
soporte para restauraciones de punto en el tiempo. Esta línea de tiempo visual le
permite identificar un punto factible en el tiempo como el punto de recuperación
objetivo para restaurar una base de datos. La línea de tiempo facilita el desplazamiento
de una ruta de recuperación bifurcada (una ruta que abarca las bifurcaciones de
recuperación). Un plan de restauración en un momento dado determinado incluye
automáticamente las copias de seguridad que son relevantes para la restauración en su
punto objetivo en el tiempo (fecha y hora). Para obtener más información,
consulte Restaurar una base de datos de SQL Server a un punto en el tiempo (Modelo
de recuperación completa) .

Para obtener más información, consulte el Asesor de recuperación de bases de datos,


consulte los siguientes blogs de administración de SQL Server:

• Consejero de Recuperación: Una Introducción


• Asesor de recuperación: uso de SSMS para crear / restaurar copias de seguridad
divididas

Recuperación acelerada de la base de datos

Vista previa de SQL Server 2019 CTP 2.3 presenta la recuperación acelerada de bases de
datos para SQL Server en las instalaciones. La recuperación acelerada de la base de datos
mejora en gran medida la disponibilidad de la base de datos, especialmente en presencia de
transacciones de larga ejecución, al rediseñar el proceso de recuperación del motor de la
base de datos de SQL Server. La recuperación de la base de datos es el proceso que utiliza
SQL Server para que cada base de datos comience en un estado de transacción consistente
o limpio. Una base de datos, con la recuperación acelerada de la base de datos habilitada,
completa la recuperación significativamente más rápido después de una conmutación por
error u otro cierre no limpio.

Puede habilitar la recuperación acelerada de la base de datos por base de datos en la versión
preliminar de CTP 2.3 de SQL Server 2019 o posterior usando la siguiente sintaxis:

SQLCopy
ALTER DATABASE <db_name> SET ACCELERATED_DATABASE_RECOVERY = {ON | OFF}

Note

Esta sintaxis no es necesaria para aprovechar esta característica de Azure SQL DB, donde
está activada de forma predeterminada.

Si tiene bases de datos críticas que son propensas a grandes transacciones, experimente
con esta característica durante la vista previa. Proporcionar comentarios al equipo de SQL
Server
Opciones de configuración de memoria

Use las dos opciones de memoria de servidor Memoria de servidor mínima y Memoria de
servidor máxima para reconfigurar la cantidad de memoria (en megabytes) administrada por
el Administrador de memoria de SQL Server para un proceso de SQL Server usado por una
instancia de SQL Server.

La configuración predeterminada para la memoria de servidor mínima es 0, y para la memoria


de servidor máxima es 2 147 483 647 megabytes (MB). De forma predeterminada, SQL
Server puede cambiar sus requisitos de memoria de manera dinámica basándose en los
recursos del sistema disponibles. Para obtener más información, consulte Administración
dinámica de memoria.

La cantidad de memoria mínima permitida para memoria de servidor máxima es 128 MB.

Importante

Si establece el valor de memoria de servidor máxima en una cifra demasiado alta, puede
producir que una única de instancia de SQL Server tenga que competir por la memoria con
otras instancias de SQL Server hospedadas en el mismo host. Sin embargo, si establece este
valor en una cifra demasiado baja, podría producir problemas de rendimiento y presión de
memoria significativos. Si establece Memoria de servidor máxima en el valor mínimo, puede
incluso evitar que SQL Server se inicie. Si no puede iniciar SQL Server después de cambiar
esta opción, inicie esta herramienta mediante la opción de inicio ** -f** y restablezca la
opción Memoria de servidor máxima a su valor anterior. Para más información,
consulte Opciones de inicio del servicio de motor de base de datos.

SQL Server puede usar memoria dinámicamente; sin embargo, es posible establecer las
opciones de memoria manualmente y restringir la cantidad de memoria a la que SQL
Server puede acceder. Antes de establecer la cantidad de memoria para SQL Server,
determine la configuración de memoria apropiada restando de la memoria física total la
memoria necesaria para el sistema operativo, las asignaciones de memorias no controladas
por la configuración max_server_memory y todas las demás instancias de SQL Server (y
otros usos del sistema, si el equipo no está dedicado totalmente a SQL Server). Esta
diferencia es la cantidad de memoria máxima que puede asignar a la instancia de SQL
Server actual.
Establecimiento manual de las opciones de memoria

Las opciones de servidor memoria de servidor mínima y memoria de servidor máxima pueden
establecerse en un intervalo de valores de memoria. Este método es útil para que los
administradores de bases de datos o de sistemas configuren una instancia de SQL
Server junto con los requisitos de memoria de otras aplicaciones u otras instancias de SQL
Server que se ejecutan en el mismo host.
Nota

Memoria de servidor mínima y Memoria de servidor máxima son opciones avanzadas. Si usa
el procedimiento almacenado del sistema sp_configure para cambiar estos valores, podrá
cambiarlos solo si Mostrar opciones avanzadas tiene establecido el valor 1. Estos valores
surten efecto inmediatamente, sin necesidad de reiniciar el servidor.

Use min_server_memory para garantizar una cantidad mínima de memoria disponible para el
Administrador de memoria de SQL Server en una instancia de SQL Server. SQL Server no
asignará inmediatamente la cantidad de memoria especificada en Memoria de servidor
mínima durante el inicio. No obstante, cuando el uso de memoria ha alcanzado este valor
debido a una carga del cliente, SQL Server no puede liberar memoria a menos que se
reduzca el valor de Memoria de servidor mínima. Por ejemplo, cuando puede haber varias
instancias de SQL Server en el mismo host simultáneamente, establezca el parámetro
min_server_memory en vez de max_server_memory para reservar memoria para una
instancia. Además, el establecimiento del valor min_server_memory es esencial en un
entorno virtualizado para asegurarse de que la presión de memoria del host subyacente no
intenta desasignar memoria del grupo de búferes en una máquina virtual (VM) de SQL
Server invitada más allá de lo necesario para disfrutar de un rendimiento aceptable.
Nota

No es seguro que SQL Server asigne la cantidad de memoria especificada en Memoria de


servidor mínima. Si la carga en el servidor no precisa nunca que se asigne la cantidad de
memoria especificada en Memoria de servidor mínima, SQL Server se ejecutará con menos
memoria.

Use max_server_memory para garantizar que el sistema operativo no experimenta presión de


memoria perjudicial. Para establecer la configuración de memoria de servidor máxima,
supervise el consumo total del proceso SQL Server para determinar los requisitos de
memoria. Para ser más precisos con estos cálculos para una única instancia:

• Desde la memoria total del sistema operativo, reserve entre 1 y 4 GB para el propio
sistema.
• Después, reste el equivalente de las asignaciones de memoria de SQL
Server potenciales al control Memoria de servidor máxima, que está formado por
**tamaño de la pila 1 * subprocesos de trabajo máximos calculados 2 + parámetro de
inicio -g 3 ** (o 256 MB de manera predeterminada si no se establece -g). El resto
debería ser la configuración de max_server_memory para la instalación de una única
instancia.
Cómo configurar las opciones de memoria con SQL Server Management Studio

Use las dos opciones de memoria de servidor memoria de servidor mínima y memoria de
servidor máximapara reconfigurar la cantidad de memoria (en megabytes) administrada por
el Administrador de memoria de SQL Serverpara una instancia de SQL Server. De forma
predeterminada, SQL Server puede cambiar sus requisitos de memoria de manera dinámica
basándose en los recursos del sistema disponibles.
Procedimiento para configurar una cantidad fija de memoria (no recomendado)

Para establecer una cantidad fija de memoria:

1. En el Explorador de objetos, haga clic con el botón derecho en un servidor y


seleccione Propiedades.
2. Haga clic en el nodo Memoria.
3. En Opciones de memoria del servidor, escriba la misma cantidad que quiera
para Memoria de servidor mínima y Memoria de servidor máxima.

Use la configuración predeterminada si desea que SQL Server pueda cambiar


dinámicamente sus requisitos de memoria según los recursos del sistema
disponibles. Se recomienda establecer una memoria de servidor máxima, tal y como se
describe anteriormente.

Bloquear páginas en la memoria (LPIM)

Esta directiva de Windows determina qué cuentas pueden usar un proceso para mantener los
datos en la memoria física, impidiendo que el sistema realice la paginación de los datos en la
memoria virtual del disco. El bloqueo de páginas en memoria puede mantener el servidor
activo cuando se produce la paginación en la memoria del disco. La opción Bloquear páginas
en memoria está establecida en ON en las instancias de la edición SQL Server Standard y
posterior cuando a la cuenta con privilegios para ejecutar sqlservr.exe se le ha concedido el
derecho de usuario de Windows Bloquear páginas en memoria (LPIM).

Para deshabilitar la opción Bloquear páginas en memoria para SQL Server, quite el derecho
de usuario Bloquear páginas en memoria a la cuenta con privilegios que ejecuta la cuenta de
inicio de sqlservr.exe (la cuenta de inicio de SQL Server).

La configuración de esta opción no afecta a la administración dinámica de memoria de SQL


Server, lo que permite realizar expansiones y contracciones mediante solicitudes de otros
distribuidores de memoria. Cuando se usa el derecho de usuario Bloquear páginas en la
memoria se recomienda establecer un límite superior para la memoria de servidor máxima, tal
y como se describe anteriormente.
Importante

Esta opción solo se debería usar en caso necesario, principalmente si hay algún indicio de
que el proceso sqlservr se está transfiriendo al almacenamiento auxiliar. En este caso, se
notificará el error 17890 en el registro de errores, similar al ejemplo siguiente: A significant
part of sql server process memory has been paged out. This may result in a performance
degradation. Duration: #### seconds. Working set (KB): ####, committed (KB): ####,
memory utilization: ##%. A partir de SQL Server 2012 (11.x), no se necesita la marca de
seguimiento 845en Standard Edition para usar páginas bloqueadas.
Para habilitar Bloquear páginas en la memoria

Para habilitar la opción de bloqueo de páginas en memoria:

1. En el menú Inicio , haga clic en Ejecutar. En el cuadro Abrir , escriba gpedit.msc.

Se abrirá el cuadro de diálogo Directiva de grupo .

2. En la consola Directiva de grupo , expanda Configuración del equipoy, a continuación,


expanda Configuración de Windows.
3. Expanda Configuración de seguridad y, a continuación, expanda Directivas locales.
4. Seleccione la carpeta Asignación de derechos de usuario .

Las directivas se mostrarán en el panel de detalles.

5. En el panel, haga doble clic en Bloquear páginas en la memoria.


6. En el cuadro de diálogo Configuración de la directiva de seguridad local, agregue la
cuenta con privilegios para ejecutar sqlservr.exe (la cuenta de inicio de SQL Server).

Ejecución de varias instancias de SQL Server

Cuando esté ejecutando varias instancias de Motor de base de datos, existen tres maneras
con las que puede administrar la memoria:

• Usar memoria de servidor máxima para controlar el uso de memoria, tal y


como aanteriormente. Establezca los valores máximos de cada instancia, teniendo
cuidado de que la asignación total no sea mayor que la memoria física total de su
equipo. Es buena idea proporcionar a cada instancia memoria proporcional a la carga
de trabajo o al tamaño de la base de datos esperados. Este método tiene la ventaja de
que cuando se inician nuevos procesos o instancias, habrá memoria libre para ellos de
forma inmediata. El inconveniente es que si no está ejecutando todas las instancias,
ninguna de las instancias que se están ejecutando podrá utilizar el resto de la memoria
libre.
• Usar memoria de servidor mínima para controlar el uso de memoria, tal y como se
detalla anteriormente. Establezca la configuración mínima de cada instancia, de manera
que la suma de estos mínimos sea 1-2 GB menos que la memoria física total de su
equipo. De nuevo, puede establecer estos mínimos proporcionalmente a la carga de
trabajo que se espera por cada instancia. Este método tiene la ventaja de que si no se
ejecutan todas las instancias a la vez, las que se estén ejecutando pueden utilizar el
resto de la memoria libre. Este método también resulta útil cuando en el equipo se está
ejecutando otro proceso que consuma mucha memoria, puesto que asegura que SQL
Server recibirá, al menos, una cantidad de memoria razonable. El inconveniente es que
cuando se inicia una nueva instancia (o cualquier otro proceso), es posible que pase
algún tiempo hasta que las instancias que se están ejecutando liberen memoria,
especialmente si para ello deben escribir páginas modificadas en sus bases de datos.
• No hacer nada (no se recomienda). Las primeras instancias que se presenten con una
carga de trabajo intentarán asignar toda la memoria. Puede que las instancias inactivas
o las instancias que se inician más tarde terminen ejecutándose con una cantidad
mínima de memoria disponible. SQL Server no intenta equilibrar el uso de memoria en
todas las instancias. Sin embargo, todas las instancias responderán a las señales de
notificación de memoria de Windows para ajustar el tamaño de su superficie de
memoria. Windows no equilibra la memoria entre las aplicaciones con la API de
notificación de memoria. Simplemente proporciona informes globales acerca de la
disponibilidad de memoria del sistema.

Esta configuración se puede cambiar sin tener que reiniciar las instancias; por tanto, se
puede experimentar fácilmente para encontrar la mejor configuración para el patrón de uso.
Proporcionar la cantidad máxima de memoria a SQL Server

Se puede configurar memoria hasta el límite del espacio de direcciones virtuales de proceso
en todas las ediciones de SQL Server. Para obtener más información, consulte Memory
Limits for Windows and Windows Server Releases(Límites de memoria para versiones de
Windows y Windows Server).

Ejemplos
Ejemplo A. Establecimiento de la opción de memoria de servidor máxima en 4 GB

En el ejemplo siguiente se establece la opción max server memory en 4 GB. Tenga en cuenta
que, aunque sp_configureespecifica el nombre de la opción como max server memory (MB),
el ejemplo muestra que se omite el elemento (MB).
SQLCopiar

sp_configure 'show advanced options', 1;


GO
RECONFIGURE;
GO
sp_configure 'max server memory', 4096;
GO
RECONFIGURE;
GO

Esto dará como resultado una instrucción similar a la siguiente:

La opción de configuración "Memoria de servidor máxima (MB)" ha cambiado de


2147483647 a 4096. Ejecute la instrucción RECONFIGURE para instalar.
Ejemplo B: Determinación de la asignación de memoria actual

La consulta siguiente devuelve información acerca de la memoria asignada actual.


SQLCopiar
SELECT
physical_memory_in_use_kb/1024 AS sql_physical_memory_in_use_MB,
large_page_allocations_kb/1024 AS sql_large_page_allocations_MB,
locked_page_allocations_kb/1024 AS sql_locked_page_allocations_MB,
virtual_address_space_reserved_kb/1024 AS sql_VAS_reserved_MB,
virtual_address_space_committed_kb/1024 AS sql_VAS_committed_MB,
virtual_address_space_available_kb/1024 AS sql_VAS_available_MB,
page_fault_count AS sql_page_fault_count,
memory_utilization_percentage AS sql_memory_utilization_percentage,
process_physical_memory_low AS sql_process_physical_memory_low,
process_virtual_memory_low AS sql_process_virtual_memory_low
FROM sys.dm_os_process_memory;
Ejemplo C. Determinación del valor para "Memoria de servidor máxima (MB)"

La siguiente consulta devuelve información sobre el valor configurado actualmente y el que


utiliza SQL Server. Esta consulta devolverá resultados independientemente de si el valor
"Mostrar opciones avanzadas" está establecido en "true".
SQLCopiar

SELECT c.value, c.value_in_use


FROM sys.configurations c WHERE c.[name] = 'max server memory (MB)'
Gestión de usuarios, roles e inicios de sesión

En SMO, los inicios de sesión están representados por el objeto Login . Cuando el inicio de
sesión existe en SQL Server, se puede agregar a una función de servidor. La función del
servidor está representada por el objeto ServerRole. La función de la base de datos está
representada por el objeto DatabaseRole y la función de la aplicación está representada por
el objeto ApplicationRole .

Los privilegios asociados con el nivel del servidor se enumeran como propiedades del
objeto ServerPermission . Los privilegios de nivel de servidor se pueden otorgar, denegar o
revocar de cuentas de inicio de sesión individuales.

Cada objeto de base de datos tiene un objeto UserCollection que especifica a todos los
usuarios en la base de datos.Cada usuario está asociado con un inicio de sesión. Un inicio de
sesión se puede asociar con usuarios en más de una base de datos. El
método EnumDatabaseMappings del objeto de inicio de sesión se puede usar para enumerar
a todos los usuarios en cada base de datos asociada con el inicio de
sesión. Alternativamente, la propiedad de inicio de sesión del objeto Usuario especifica el
inicio de sesión asociado con el usuario.

Las bases de datos de SQL Server también tienen roles que especifican un conjunto de
privilegios de nivel de base de datos que permiten a un usuario realizar tareas específicas. A
diferencia de los roles de servidor, los roles de base de datos no son fijos. Se pueden crear,
modificar y eliminar. Los privilegios y los usuarios pueden asignarse a una función de base de
datos para la administración masiva.

Ejemplo

Para los siguientes ejemplos de código, tendrá que seleccionar el entorno de programación,
la plantilla de programación y el lenguaje de programación para crear su aplicación. Para
obtener más información, consulte Crear un proyecto de Visual C # SMO en Visual Studio
.NET .
Enumeración de inicios de sesión y usuarios asociados

Cada usuario en una base de datos está asociado con un inicio de sesión. El inicio de sesión
se puede asociar con los usuarios en más de una base de datos. El ejemplo de código
muestra cómo llamar al método EnumDatabaseMappings del objeto Login para enumerar a
todos los usuarios de la base de datos que están asociados con el inicio de sesión. El ejemplo
crea un inicio de sesión y un usuario en la base de datos AdventureWorks2012 para
asegurarse de que haya información de asignación para enumerar.
C#Copy

{ Server srv = new Server(); //Iterate through each database and display. foreach ( Database
db in srv.Databases) { Console.WriteLine("========"); Console.WriteLine("Login Mappings
for the database: " + db.Name); Console.WriteLine(" "); //Run the EnumLoginMappings
method and return details of database user-login mappings to a DataTable object variable.
DataTable d; d = db.EnumLoginMappings(); //Display the mapping information. foreach
(DataRow r in d.Rows) { foreach (DataColumn c in r.Table.Columns) {
Console.WriteLine(c.ColumnName + " = " + r[c]); } Console.WriteLine(" "); } } }

Enumerar inicios de sesión y usuarios asociados en PowerShell

Cada usuario en una base de datos está asociado con un inicio de sesión. El inicio de sesión
se puede asociar con los usuarios en más de una base de datos. El ejemplo de código
muestra cómo llamar al método EnumDatabaseMappings del objeto Login para enumerar a
todos los usuarios de la base de datos que están asociados con el inicio de sesión. El ejemplo
crea un inicio de sesión y un usuario en la base de datos AdventureWorks2012 para
asegurarse de que haya información de asignación para enumerar.
PowerShellCopy

# Set the path context to the local, default instance of SQL Server. CD
\sql\localhost\Default\Databases #Iterate through all databases foreach ($db in Get-ChildItem)
{ "=====" "Login Mappings for the database: "+ $db.Name #get the datatable containing the
mapping from the smo database oject $dt = $db.EnumLoginMappings() #display the results
foreach($row in $dt.Rows) { foreach($col in $row.Table.Columns) { $col.ColumnName + "=" +
$row[$col] } } }

Gestionando roles y usuarios

Este ejemplo muestra cómo administrar roles y usuarios. Para ejecutar este ejemplo,
necesitará hacer referencia a los siguientes ensamblados:

• Microsoft.SqlServer.Smo.dll
• Microsoft.SqlServer.Management.Sdk.Sfc.dll
• Microsoft.SqlServer.ConnectionInfo.dll
• Microsoft.SqlServer.SqlEnum.dll
using Microsoft.SqlServer.Management.Smo; using System; public class A { public static void
Main() { Server svr = new Server(); Database db = new Database(svr, "TESTDB");
db.Create(); // Creating Logins Login login = new Login(svr, "Login1"); login.LoginType =
LoginType.SqlLogin; login.Create("password@1"); Login login2 = new Login(svr, "Login2");
login2.LoginType = LoginType.SqlLogin; login2.Create("password@1"); // Creating Users in
the database for the logins created User user1 = new User(db, "User1"); user1.Login =
"Login1"; user1.Create(); User user2 = new User(db, "User2"); user2.Login = "Login2";
user2.Create(); // Creating database permission Sets DatabasePermissionSet dbPermSet =
new DatabasePermissionSet(DatabasePermission.AlterAnySchema);
dbPermSet.Add(DatabasePermission.AlterAnyUser); DatabasePermissionSet dbPermSet2 =
new DatabasePermissionSet(DatabasePermission.CreateType);
dbPermSet2.Add(DatabasePermission.CreateSchema);
dbPermSet2.Add(DatabasePermission.CreateTable); // Creating Database roles
DatabaseRole role1 = new DatabaseRole(db, "Role1"); role1.Create(); DatabaseRole role2 =
new DatabaseRole(db, "Role2"); role2.Create(); // Granting Database Permission Sets to
Roles db.Grant(dbPermSet, role1.Name); db.Grant(dbPermSet2, role2.Name); // Adding
members (Users / Roles) to Role role1.AddMember("User1"); role2.AddMember("User2"); //
Role1 becomes a member of Role2 role2.AddMember("Role1"); // Enumerating through
explicit permissions granted to Role1 // enumerates all database permissions for the Grantee
DatabasePermissionInfo[] dbPermsRole1 = db.EnumDatabasePermissions("Role1"); foreach
(DatabasePermissionInfo dbp in dbPermsRole1) { Console.WriteLine(dbp.Grantee + " has " +
dbp.PermissionType.ToString() + " permission."); } Console.WriteLine(" "); } }
Crear un rol de servidor

Este tema describe cómo crear una nueva función de servidor en SQL Server 2017 mediante
SQL Server Management Studio o Transact-SQL.

Antes de empezar

Limitaciones y restricciones

A los roles de servidor no se les puede otorgar permiso en los valores de base de datos. Para
crear roles de base de datos, vea CREAR ROL (Transact-SQL) .

• Requiere el permiso CREATE SERVER ROLE o la membresía en la función fija del


servidor sysadmin.
• También requiere IMPERSONATE en el server_principal para los inicios de sesión, el
permiso ALTER para los roles de servidor utilizados como server_principal , o la
pertenencia a un grupo de Windows que se usa como server_principal.
• Cuando usa la opción AUTORIZACIÓN para asignar la propiedad del rol del servidor,
también se requieren los siguientes permisos:
o Para asignar la propiedad de un rol de servidor a otro inicio de sesión, se requiere el
permiso IMPERSONATE en ese inicio de sesión.
o Para asignar la propiedad de una función de servidor a otra función de servidor, se
requiere ser miembro de la función de servidor del destinatario o el permiso ALTER
en esa función de servidor.

Usando SQL Server Management Studio


Para crear una nueva función de servidor

1. En el Explorador de objetos, expanda el servidor donde desea crear la nueva función de


servidor.
2. Expanda la carpeta Seguridad .
3. Haga clic con el botón derecho en la carpeta Funciones del servidor y
seleccione Nueva función del servidor ....
4. En el cuadro de diálogo New Server Role - server_role_name , en la página General ,
ingrese un nombre para la nueva función de servidor en el cuadro Server name name .
5. En el cuadro Propietario , ingrese el nombre del principal del servidor que será el
propietario del nuevo rol.Alternativamente, haga clic en los puntos
suspensivos (...) para abrir el cuadro de diálogo Seleccionar servidor de inicio de sesión
o rol .
6. En Securables , seleccione uno o más valores que puedan ser protegidos a nivel de
servidor. Cuando se selecciona un asegurable, a este rol de servidor se le pueden
otorgar o denegar permisos sobre ese asegurable.
7. En el cuadro Permisos: Explícito , seleccione la casilla de verificación para otorgar,
otorgar con concesión o denegar el permiso a esta función de servidor para los
elementos de seguridad seleccionados. Si no se puede otorgar o denegar un permiso a
todos los elementos de seguridad seleccionados, el permiso se representa como una
selección parcial.
8. En la página Miembros , use el botón Agregar para agregar inicios de sesión que
representen a individuos o grupos a la nueva función del servidor.
9. Un rol de servidor definido por el usuario puede ser miembro de otro rol de servidor. En
la página Membresías , seleccione una casilla de verificación para hacer que la función
de servidor actual definida por el usuario sea miembro de una función de servidor
seleccionada.
10. Haga clic en Aceptar .

Utilizando Transact-SQL
Para crear una nueva función de servidor

1. En el Explorador de objetos , conéctese a una instancia de Database Engine.


2. En la barra estándar, haga clic en Nueva consulta .
3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar .

Copy

--Creates the server role auditors that is owned the securityadmin fixed server role.
USE master; CREATE SERVER ROLE auditors AUTHORIZATION securityadmin; GO
Establecer la opción de configuración del servidor Conexiones de usuario

En este tema se describe cómo establecer la opción de configuración del servidor conexiones
de usuario en SQL Server 2017 mediante SQL Server Management Studio o Transact-
SQL. La opción de conexiones de usuario especifica el número máximo de conexiones de
usuario simultáneas que se permiten en una instancia de SQL Server.El número real de
conexiones de usuario permitidas depende también de la versión de SQL Server que se use y
de los límites de las aplicaciones y del hardware. SQL Server permite un máximo de 32.767
conexiones de usuario. Como la opción user connections es una opción dinámica
(autoconfiguración), SQL Server ajusta automáticamente el número máximo de conexiones
de usuario a medida que se necesitan, hasta el valor máximo permitido. Por ejemplo, si solo
10 usuarios han iniciado una sesión, se asignan 10 objetos de conexión de usuario. En la
mayoría de los casos, no es necesario cambiar el valor de esta opción. El valor
predeterminado es 0, lo que significa que se permite un máximo de 32 767 conexiones de
usuario.

Para determinar el número máximo de conexiones de usuario que el sistema permite, puede
ejecutar sp_configure o consultar la vista de catálogo sys.configuration .

Antes de comenzar

• Esta opción es avanzada y solo debe cambiarla un administrador de base de datos con
experiencia o un profesional certificado de SQL Server.
• Usar la opción de conexiones de usuario ayuda a evitar que el servidor se sobrecargue
con demasiadas conexiones simultáneas. Puede calcular el número de conexiones
basándose en los requisitos del sistema y de los usuarios. Por ejemplo, en un sistema
con muchos usuarios, cada usuario no necesitará normalmente una conexión
exclusiva. Los usuarios pueden compartir las conexiones. Los usuarios que ejecutan
aplicaciones de OLE DB necesitan una conexión para cada objeto de conexión abierta,
los que ejecutan aplicaciones de Conectividad abierta de bases de datos (ODBC)
necesitan una conexión para cada controlador de conexión activo de la aplicación y los
que ejecutan aplicaciones de DB-Library necesitan una conexión para cada proceso
iniciado que llame a la función dbopen de DB-Library.
Importante

Si tiene que utilizar esta opción, no establezca un valor demasiado alto, ya que cada
conexión tiene sobrecarga, independientemente de si la conexión se está utilizando. Si
se supera el número máximo de conexiones de usuario, recibirá un mensaje de error y
no podrá conectarse hasta que esté disponible otra conexión.

De forma predeterminada, todos los usuarios tienen permisos de ejecución


en sp_configure sin ningún parámetro o solo con el primero. Para ejecutar sp_configure con
ambos parámetros y cambiar una opción de configuración, o para ejecutar la instrucción
RECONFIGURE, un usuario debe tener el permiso ALTER SETTINGS en el servidor. Los roles
fijos de servidor sysadmin y serveradmin tienen el permiso ALTER SETTINGS de forma
implícita.
Uso de SQL Server Management Studio
Para configurar la opción de conexiones de usuario

1. En el Explorador de objetos, haga clic con el botón derecho en un servidor y haga clic
en Propiedades.
2. Haga clic en el nodo Conexiones .
3. En Conexiones, en el cuadro Número máximo de conexiones simultáneas , escriba o
seleccione un valor entre 0 y 32767 para establecer el número máximo de usuarios que
se pueden conectar simultáneamente a la instancia de SQL Server.
4. Reinicie SQL Server.

Usar Transact-SQL
Para configurar la opción de conexiones de usuario

1. Conéctese con el Motor de base de datos.


2. En la barra Estándar, haga clic en Nueva consulta.
3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic
en Ejecutar. En este ejemplo se muestra cómo usar sp_configure para configurar el
valor de la opción de user connections en 325 usuarios.

SQLCopiar

USE AdventureWorks2012 ;
GO
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE ;
GO
EXEC sp_configure 'user connections', 325 ;
GO
RECONFIGURE;
GO
Opciones de configuración de servidor (SQL Server)

Puede administrar y optimizar los recursos de SQL Server mediante opciones de


configuración con SQL Server Management Studio o el procedimiento almacenado del
sistema sp_configure. Las opciones de configuración de servidores más utilizadas están
disponibles mediante SQL Server Management Studio; es posible el acceso a todas las
opciones de configuración mediante sp_configure. Antes de establecer estas opciones, debe
considerar detenidamente los efectos en el sistema. Para obtener más información, vea Ver o
cambiar las propiedades del servidor (SQL Server).

IMPORTANTE: Solo un administrador de la base de datos con experiencia o un técnico


de SQL Server con la titulación apropiada debe cambiar las opciones avanzadas.

Categorías de las opciones de configuración

Las opciones de configuración tienen efecto en uno de estos dos momentos:

• Inmediatamente después de establecer la opción y ejecutar la


instrucción RECONFIGURE (o, en algunos casos, RECONFIGURE WITH
OVERRIDE). La reconfiguración de ciertas opciones invalidará planes en la caché de
planes, provocando la compilación de nuevos planes. Para obtener más información,
vea DBCC FREEPROCCACHE (Transact-SQL).

-O bien-

• Después de realizar las acciones anteriores y reiniciar la instancia de SQL Server.

Las opciones que necesitan que se reinicie SQL Server solo mostrarán inicialmente el valor
modificado en la columna value. Después de reiniciar, el nuevo valor aparecerá tanto en la
columna value como en la columna value_in_use.

Para algunas opciones, es necesario reiniciar el servidor para que el valor de la nueva
configuración surta efecto. Si establece el nuevo valor y ejecuta sp_configure antes de
reiniciar el servidor, el nuevo valor aparecerá en la columna value de las opciones de
configuración, pero no en la columna value_in_use . Después de reiniciar el servidor, el nuevo
valor aparecerá en la columna value_in_use .

Las opciones de configuración automática son aquellas que SQL Server ajusta según las
necesidades del sistema. En la mayoría de los casos, esto elimina la necesidad de establecer
los valores manualmente. Como ejemplo se pueden citar las opciones min server
memory y max server memory , así como la opción user connections.
Tabla de opciones de configuración

La siguiente tabla contiene todas las opciones de configuración disponibles, la gama de


valores posibles y los valores predeterminados. Las opciones de configuración están
marcadas con códigos de letras de la forma siguiente:

• A = Opciones avanzadas, que solo las deben cambiar un administrador de base de


datos con experiencia o un profesional certificado de SQL Server, y que requieren el
valor 1 para Mostrar opciones avanzadas.
• RR = Opciones que requieren el reinicio del Motor de base de datos.
• RP = Opciones que requieren el reinicio del motor de PolyBase.
• SC = Opciones de configuración automática.

Opción de Valor Valor


configuración mínimo Valor máximo predeterminado

access check cache 0 16384 0


bucket count (A)

access check cache 0 2147483647 0


quota (A)

ad hoc distributed 0 1 0
queries (A)

affinity I/O mask (A, - 2147483647 0


RR) 2147483648

affinity64 I/O mask (A, - 2147483647 0


disponible solo en la 2147483648
versión de 64 bits
de SQL Server)

affinity mask (A) - 2147483647 0


2147483648
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

affinity64 mask (A, RR), - 2147483647 0


disponible solo en la 2147483648
versión de 64 bits
de SQL Server

Agent XPs (A) 0 1 0

Cambia a 1 cuando
se inicia el
Agente SQL
Server . El valor
predeterminado es
0 si el Agente SQL
Server se
establece para que
se inicie
automáticamente
durante la
instalación.

allow 0 1 0
updates(obsoleto. No
debe usarse. Generará
un error durante la
reconfiguración).

automatic soft-NUMA 0 1 0
disabled

Valor predeterminado 0 1 0
de la suma de
comprobación de
copia de seguridad
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

compresión de copia 0 1 0
de seguridad
predeterminada

blocked process 0 86400 0


threshold (A)

c2 audit mode (A, RR) 0 1 0

clr enabled 0 1 0

clr strict security (A) 0 1 0


Se aplica a: SQL
Server (SQL Server
2017 (14.x) hasta SQL
Server 2017).

common criteria 0 1 0
compliance enabled(A,
RR)

autenticación de la 0 1 0
base de datos
independiente (A)

cost threshold for 0 32767 5


parallelism (A)

cross db ownership 0 1 0
chaining
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

cursor threshold (A) -1 2147483647 -1

Database Mail XPs (A) 0 1 0

default full-text 0 2147483647 3082


language (A)

default language 0 9999 0

default trace 0 1 1
enabled(A)

disallow results from 0 1 0


triggers (A)

EKM provider enabled 0 1 0

external scripts 0 1 0
enabled (SC)

Requiere el reinicio
de: SQL Server (SQL
Server 2016
(13.x) y SQL Server
2017).

filestream_access_level 0 2 0

fill factor (A, RR) 0 100 0


Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

ft crawl bandwidth 0 32767 100


(max); vea ft crawl
bandwidth(A)

ft crawl bandwidth 0 32767 0


(min); vea ft crawl
bandwidth(A)

ft notify bandwidth 0 32767 100


(max); vea ft notify
bandwidth(A)

ft notify bandwidth 0 32767 0


(min); vea ft notify
bandwidth(A)

index create 704 2147483647 0


memory(A, SC)

in-doubt xact 0 2 0
resolution (A)

lightweight pooling(A, 0 1 0
RR)

locks (A, RR, SC) 5000 2147483647 0

max degree of 0 32767 0


parallelism (A)
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

max full-text crawl 0 256 4


range (A)

max server memory(A, 16 2147483647 2147483647


SC)

max text repl size 0 2147483647 65536

max worker threads(A) 128 32767 0

1024 es el Cero configura


máximo automáticamente
recomendado el número máximo
para SQL de subprocesos de
Server de 32 trabajo
bits y 2048 dependientes del
para SQL número de
Serverde 64 procesadores
bits. Nota: SQL mediante la fórmula
Server 2014 (256 +
(12.x) fue la ( <procesadores> -
última versión 4) * 8) para SQL
disponible en Server de 32 bits, y
el sistema (512
operativo de + <procesadores> -
32 bits. 4) * 8) para SQL
Server de 64
bits. Nota: SQL
Server 2014
(12.x) fue la última
versión disponible
en el sistema
operativo de 32
bits.

media retention (A, RR) 0 365 0


Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

min memory per 512 2147483647 1024


query (A)

min server memory (A, 0 2147483647 0


SC)

desencadenadores 0 1 1
anidados

network packet size(A) 512 32767 4096

Ole Automation 0 1 0
Procedures (A)

open objects (A, RR, 0 2147483647 0


obsoleto)

optimize for ad hoc 0 1 0


workloads (A)

PH_timeout (A) 1 3600 60

PolyBase Hadoop y 0 7 0
Azure Blob
Storage(RP)

Se aplica a: SQL
Server (SQL Server
2016 (13.x) hasta SQL
Server 2017).
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

precompute rank (A) 0 1 0

priority boost (A, RR) 0 1 0

query governor cost 0 2147483647 0


limit (A)

query wait (A) -1 2147483647 -1

recovery interval (A, 0 32767 0


SC)

remote access (RR) 0 1 1

remote admin 0 1 0
connections

remote data archive 0 1 0

remote login timeout 0 2147483647 10

remote proc trans 0 1 0

remote query timeout 0 2147483647 600

Opción Replication 0 1 0
XPs (A)
Opción de Valor Valor
configuración mínimo Valor máximo predeterminado

scan for startup 0 1 0


procs(A, RR)

server trigger recursion 0 1 1

set working set size(A, 0 1 0


RR, obsoleto)

show advanced 0 1 0
options

SMO y DMO XPs (A) 0 1 1

transform noise 0 1 0
words(A)

two digit year cutoff(A) 1753 9999 2049

user connections (A, 0 32767 0


RR, SC)

user options 0 32767 0

xp_cmdshell (A) 0 1 0

S-ar putea să vă placă și