Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PROGRAMA DE FORMACIN:
Especializacin Tecnolgica En Gestin Y Seguridad De Bases De Datos
Modalidad Virtual
Use las dos opciones de memoria de servidor Memoria de servidor mnima y Memoria
de servidor mxima 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.
Cuando SQL Server utiliza la memoria de manera dinmica, realiza una consulta peridica
en el sistema para determinar la cantidad de memoria libre. El mantenimiento de esta
memoria libre evita la paginacin en el sistema operativo (SO). Si hay menos memoria
libre, SQL Server libera memoria para el sistema operativo. Si hay ms memoria libre, SQL
Server puede asignar ms memoria. SQL Server agrega memoria solo cuando su carga de
trabajo requiere ms memoria; un servidor inactivo no aumenta el tamao de su espacio de
direcciones virtuales.
Vea el ejemplo B sobre una consulta que devuelve la memoria que se est usando en estos
momentos. La memoria mxima del servidor controla la SQL Server asignacin de
memoria, incluidos el grupo de bferes, la memoria de compilacin, todas las cachs, las
concesiones de memoria, el bloqueo del Administrador de memoria y la memoria de clr
(bsicamente, cualquier distribuidor de memoria que se encuentre
en sys.dm_os_memory_clerks). La memoria de pilas de subprocesos, los montones de
memoria, los proveedores de servidor vinculado que no sea SQL Server y cualquier
memoria asignada por un DLL que no sea de SQL Server, no se controlan mediante la
memoria mxima del servidor.
Use Memoria de servidor mnima para garantizar una cantidad mnima 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 mnima 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 mnima.
32 bits 64 MB
64 bits 128 MB
Cmo configurar las opciones de memoria utilizando SQL Server Management Studio
Para optimizar el uso de memoria del sistema para SQL Server se debe limitar la cantidad
de memoria utilizada por el sistema para el almacenamiento en memoria cach de archivos.
Para limitar la memoria cach del sistema de archivos, hay que asegurarse de que no est
activada la opcin Maximizar el rendimiento para compartir archivos. Puede
especificar la cantidad mnima de memoria cach del sistema de archivos
seleccionando Minimizar la memoria usada o Balance.
Esta directiva de Windows determina qu cuentas pueden usar un proceso para mantener
los datos en la memoria fsica, impidiendo que el sistema realice la paginacin de los datos
en la memoria virtual del disco. El bloqueo de pginas en memoria puede mantener el
servidor activo cuando se produce la paginacin en la memoria del disco. La
opcin Bloquear pginas en la memoria de SQL Server est establecida en ON en las
instancias de 32 y 64 bits de la edicin SQL Server 2014 Standard y posterior cuando a la
cuenta con privilegios para ejecutar sqlservr.exe se le ha concedido el derecho de usuario
"Bloquear pginas en la memoria (LPIM). En versiones anteriores de SQL Server,
establecer la opcin de bloqueo de pginas para una instancia de 32 bits de SQL Server
requiere que la cuenta con privilegios para ejecutar sqlservr.exe tenga el derecho del
usuario LPIM y que la opcin de configuracin awe_enabled est establecida en ON.
Para deshabilitar la opcin de Bloquear pginas en la memoria para SQL Server, quite el
derecho de usuario Bloquear pginas en la memoria para la cuenta de inicio de SQL
Server.
Para obtener ms informacin sobre la cantidad de memoria fsica admitida por los distintos
sistemas operativos, vea la documentacin de Windows titulada "Lmites de memoria para
versiones de Windows".
Los sistemas de memoria virtual permiten una mayor asignacin de memoria fsica, de forma
que la proporcin de memoria virtual a memoria fsica puede ser superior a 1:1. Como
resultado, los programas ms grandes se pueden ejecutar en equipos con una diversidad de
configuraciones de memoria fsica. No obstante, el uso de una cantidad de memoria virtual
significativamente superior al promedio combinado de los espacios de trabajo de todos los
procesos puede provocar un rendimiento bajo.
32 bits 64 bits
- 2 GB - 8 TB en la arquitectura x64
- 3 GB con el parmetro de
arranque /3gb1
- 4 GB en WOW642
Ejemplos:
Ejemplo A
En el ejemplo siguiente se establece la opcin max server memory en 4 GB:
1
/3gb es un parmetro de arranque del sistema operativo.
2
WOW64 (Windows on Windows 64) es un modo en el que SQL Server de 32 bits se ejecuta en un sistema
operativo de 64 bits. Para obtener ms informacin,
SELECT
(physical_memory_in_use_kb/1024) AS Memory_usedby_Sqlserver_MB,
(locked_page_allocations_kb/1024) AS Locked_pages_used_Sqlserver_MB,
(total_virtual_address_space_kb/1024) AS Total_VAS_in_MB,
process_physical_memory_low,
process_virtual_memory_low
FROM sys.dm_os_process_memory;
2. GESTIN DE USUARIOS
Puede crear un rol de servidor definido por el usuario varias veces, incluido T/SQL, la
interfaz de usuario de SQL Server Management Studio y Windows PowerShell. Si fuese a
crear un rol de servidor definido por el usuario con T/SQL, usara tres comandos diferentes.
Primero, la instruccin Create Server Role creara el rol de servidor definido por el usuario;
segundo, Alter Server Rol agregara un usuario al rol de servidor; finalmente, la instruccin
Grant otorgara los derechos necesarios al rol.
T-SQL
USE [master]
GO
CREATE SERVER ROLE [ViewServerState] AUTHORIZATION [sa]
GO
ALTER SERVER ROLE [ViewServerState] ADD MEMBER [SomeFakeLogin]
GO
GRANT VIEW SERVER STATE TO [ViewServerState]
GO
Podra usar Alter Server Role para quitar un usuario de un rol de servidor definido por el
usuario. En lugar de usar la sintaxis Add Member, usara Drop Member:
T-SQL
ALTER SERVER ROLE [ViewServerState] DROP MEMBER [SomeFakeLogin]
GO
Cuando es momento de implementar uno o ms roles definidos por el usuario contra
diversas instancias de SQL Server, tendr algunas opciones diferentes. Probablemente no
quiere conectar con cada servidor uno a la vez para crear los roles de servidor definidos por
el usuario. Una opcin sera usar la caracterstica SQL Server Management Studio. Esto le
permite ejecutar scripts de T/SQL contra varias instancias.
Tambin puede usar los componentes Windows PowerShell de SQL Server para
implementar nuevos roles de servidor definidos por el usuario contra todas las instancias de
SQL dentro de su organizacin. (Debido a las mltiples maneras de usar Windows
PowerShell para implementar estos scripts, este proceso se encuentra fuera del alcance de
este artculo).
Puede realizar fcilmente la misma accin con la interfaz del usuario de SQL Server
Management Studio. Para crear un rol de servidor definido por el usuario, conctese a la
instancia dentro del Explorador de objetos. Navegue a InstanceName | Seguridad | Roles de
servidor dentro del explorador de objetos. Haga clic con el botn secundario en Roles de
servidor y seleccione Nuevo rol de servidor en el men contexto. Cuando se abra la ventana
Nuevo rol de servidor, especifique el nombre del rol de servidor y el propietario, seleccione
los elementos que pueden protegerse y luego los permisos que desea que tengan los
miembros del rol (consulte la figura 1).
Figura 1 Especifique los derechos que desea que tenga un usuario en especial.
Una vez que complete los campos en la pgina General, seleccione la pgina Miembros
(consulte la figura 2) y especifique los inicios de sesin de SQL Server que sern
miembros de este rol de servidor definido por el usuario.
Figura 2 Seleccionar los miembros especificar los usuarios que tienen acceso a este rol de servidor.
Despus de seleccionar los miembros del rol, seleccione la pgina Pertenencias. Con esto se
especificarn los roles de servidor de los que este rol de servidor definido por el usuario
ser miembro. Si especifica un rol de servidor en esta pantalla, los usuarios dentro del rol
de servidor definidos por el usuario tambin tendrn los derechos otorgados por ese rol de
servidor.
Si fuese a crear un rol definido por el usuario y hacerlo miembro del rol de servidor fijo
serveradmin (consulte la figura 3), no todos los miembros del rol de servidor definido por
el usuario seran eficazmente miembros del rol de servidor fijo serveradmin. Tal como
ocurre con los roles de base de datos o grupos de dominio anidados, debe tener mucho
cuidado en el momento de anidar roles, para no otorgar a los usuarios derechos que no
debieran tener de grupos de mayor valor.
Figura 3 Puede aplicar el rol definido por el usuario a otros roles de servidor.
Para anidar roles de servidor con T/SQL, seguir teniendo que usar la instruccin Alter
Server Role con la sintaxis Add Member. Por ejemplo, para hacer que el rol de servidor del
usuario final ViewServerState sea miembro del rol de servidor fijo setupadmin, alterara el
rol de servidor fijo setupadmin. Luego agregara el rol de servidor definido por el usuario
ViewServerState como miembro:
T-SQL
ALTER SERVER ROLE [setupadmin] ADD MEMBER [ViewServerState]
GO
Los roles de servidor definidos por el usuario tienen muchos usos. Hay docenas de
derechos en el nivel de instancia que puede otorgar a un rol de servidor definido por el
usuario para simplificar la administracin de estos derechos. Tambin podra crear un rol de
administrador de base de datos secundario con algunos derechos, pero no todos los
derechos de un administrador de sistemas. Podra crear un grupo AlwaysOnAdmin, lo que
permitira que los derechos realicen conmutacin por error en una base de datos AlwaysOn
(que se debe realizar desde SQL Server) sin contar con todos los derechos de un
administrador de sistemas.
Existe diversos casos de uso para roles de servidor definidos por el usuario. Estos
facilitarn considerablemente las cargas de trabajo de administracin. Tambin ayudarn a
aumentar la seguridad de instancias de SQL Server, as como tambin estos nuevos roles de
servidor reducirn las instancias de otorgar por accidente derechos inapropiados.
3. INSTANCIAS
Con SQL Server, puede especificar el nombre de instancia cuando complete una instancia preparada en la
pgina Configuracin de instancia. Puede optar por configurar la instancia preparada que est
completando como una instancia predeterminada si no existe una instancia predeterminada de SQL Server
en el equipo.
Instancias mltiples
SQL Server admite varias instancias de SQL Server en un solo servidor o procesador, pero
solo una puede ser la predeterminada. Todas las dems deben ser instancias con nombre.
Un equipo puede ejecutar varias instancias de SQL Server simultneamente y cada
instancia se ejecuta independientemente de las otras instancias.
Opciones
Solo instancias de clsteres de conmutacin por error: especifique el nombre de red en
clster de conmutacin por error de SQL Server. Este nombre identifica la instancia en
clster de conmutacin por error en la red.
Instancia predeterminada o con nombre: tenga presente la informacin siguiente a la hora
de decidir entre instalar una instancia predeterminada o una instancia con nombre de SQL
Server:
Si piensa instalar una nica instancia de SQL Server en un servidor de base de
datos, debe ser una instancia predeterminada.
Use una instancia con nombre para aquellas situaciones en las que piensa tener
varias instancias en el mismo equipo. Un servidor solo puede alojar una instancia
predeterminada.
Cualquier aplicacin que instale SQL Server Express debe instalarla como instancia
con nombre. Con ello se reducen los conflictos en situaciones en las que se instalan
varias aplicaciones en el mismo equipo.
Instancia predeterminada
Seleccione esta opcin para instalar una instancia predeterminada de SQL Server. Un
equipo solo puede hospedar una instancia predeterminada; todas las dems instancias deben
ser instancias con nombre. No obstante, si tiene instalada una instancia predeterminada de
SQL Server, podr agregar una instancia predeterminada de Analysis Services al mismo
equipo.
Instancia con nombre
Seleccione esta opcin para crear una instancia con nombre nueva. Cuando asigne un
nombre a una instancia de SQL Server, tenga en cuenta lo siguiente:
En los nombres de instancia no se distinguen maysculas y minsculas.
Los nombres no pueden comenzar ni terminar por un guin bajo (_).
Los nombres de instancia no pueden contener el trmino "Default" ni otras palabras
clave reservadas. Si se utiliza una palabra clave reservada en un nombre de
instancia, se producir un error en el programa de instalacin. Para obtener ms
informacin, consulte
Si especifica MSSQLServer como nombre de instancia, se crear una instancia
predeterminada.
Una instalacin de Microsoft SQL Server 2014 PowerPivot para SharePoint
siempre se instala como una instancia con nombre de 'PowerPivot'. No puede
especificar un nombre de instancia diferente para este rol de caracterstica.
Los nombres de instancias estn limitados a 16 caracteres.
El primer carcter del nombre de la instancia debe ser una letra. Las letras
aceptables son las que define el estndar Unicode 2.0. Se incluyen los caracteres
latinos, a-z, A-Z y los caracteres alfabticos de otros idiomas.
Los siguientes caracteres pueden ser letras definidas por el estndar Unicode 2.0,
nmeros decimales del alfabeto Latn bsico y de otros alfabetos nacionales, el
signo de dlar ($) o un carcter de subrayado (_).
En los nombres de instancia no se permiten espacios insertados ni otros caracteres
especiales. Tampoco se permiten la barra diagonal inversa (\), la coma (,), los dos
puntos (:), el punto y coma (;), la comilla simple ('), el smbolo de y comercial (&)
ni la arroba (@).
Nota
Solo los caracteres que sean vlidos en la pgina actual de cdigos de Windows
se pueden utilizar en los nombres de instancia de SQL Server. Si se utiliza un
carcter Unicode no admitido, se producir un error en el programa de
instalacin.
Con SysPrep de SQL Server, el identificador de instancia que se muestra en esta pgina
es el identificador de instancia especificado durante el paso de preparacin de la imagen
en el proceso SysPrep de SQL Server. No podr especificar un identificador de instancia
diferente durante el paso para completar la imagen.
Nota
No se admiten identificadores de instancia que comiencen por un guin bajo (_) o que
contengan el signo de almohadilla (#) o el signo de dlar ($).
Para obtener ms informacin acerca de los directorios, las ubicaciones de los archivos y la
asignacin de nombres a las instancias.
Todos los componentes de una instancia determinada de SQL Server se administran como
una unidad. Todos los Service Pack y actualizaciones de SQL Server se aplicarn a cada
componente de una instancia de SQL Server.
Todos los componentes de SQL Server que comparten el mismo nombre de instancia deben
cumplir los siguientes criterios:
La misma versin
La misma edicin
La misma configuracin de idioma
El mismo estado de clster
Importante
Te recomendamos crear dos particiones en tu disco del sistema operativo. Evita usar la particin del
sistema para almacenar datos empresariales.
o Volumen D: con
1000 GB
o Volumen D: con
1500 GB
Alto Cinco o ms discos fsicos en Cinco o ms discos fsicos en total
total
Dos discos en un conjunto reflejado RAID
Dos discos en un conjunto 1 que contiene el volumen C: con 100 GB
reflejado RAID 1 que
contiene el volumen C: con Todos los dems discos en un espacio de
100 GB almacenamiento de paridad que contiene lo
siguiente:
Todos los dems discos en
un conjunto RAID 5 que o Volumen D: con 2000 GB
contiene lo siguiente:
o Volumen E: con 2000 GB
o Volumen D: con
1500 GB
o Volumen E: con
1500 GB
6. SERVICIOS
7. SISTEMA OPERATIVO
.NET .NET 3.5 SP1 es un requisito para SQL Server 2012 cuando se
Framework selecciona Motor de base de datos, Reporting Services, Master Data
Services, Data Quality Services, Replicacin o SQL Server
Management Studio, y no lo instala ya el programa de instalacin de
SQL Server.
Si ejecuta el programa de instalacin en un equipo con el
sistema operativo Windows Vista SP2 o Windows Server 2008
SP2 y no tiene .NET 3.5 SP1, el programa de instalacin de
SQL Server le pide que descargue e instale .NET 3.5 SP1 para
poder continuar con la instalacin de SQL Server. El mensaje
de error incluye un vnculo al centro de descarga o bien puede
descargar .NET 3.5 SP1 desde Windows Update. Para evitar la
interrupcin durante la instalacin de SQL Server, puede
descargar e instalar .NET 3.5 SP1 antes de ejecutar el programa
de instalacin de SQL Server.
Si el programa de instalacin se ejecuta en un equipo con el
sistema operativo Windows Server 2008 R2 SP1, debe habilitar
.NET Framework 3.5 SP1 antes de instalar SQL Server 2012.
Si ejecuta el programa de instalacin en un equipo que tiene el
sistema operativo Windows Server 2012 o Windows 8, el
programa de instalacin de SQL Server descarga e instala .NET
Framework 3.5 SP1 automticamente. Este proceso necesita
acceso a internet.
Si no tiene acceso a internet, debe descargar e instalar .NET
Framework 3.5 SP1 antes de ejecutar el programa de
instalacin para instalar cualquiera de los componentes
mencionados anteriormente. Para obtener ms informacin
acerca de las recomendaciones e instrucciones sobre cmo
adquirir y habilitar .NET Framework 3.5 en Windows Server
2012 o Windows 8.
.NET 4.0 es un requisito para SQL Server 2012. SQL Server instala
.NET 4.0 durante el paso de instalacin de caractersticas.
Si est instalando las ediciones de SQL Server Express,
asegrese de que el equipo disponga de conexin a Internet. El
programa de instalacin de SQL Server descarga e instala .NET
Framework 4 puesto que no se incluye en el medio de
instalacin de SQL Server Express.
SQL Server Express no instala .NET 4.0 en el modo Server
Core de Windows Server 2008 R2 SP1 o Windows Server
2012.Debe instalar .NET 4.0 .0 antes de instalar SQL Server
Express en una instalacin Server Core de Windows Server
2008 R2 SP1 o de Windows Server 2012.
Windows SQL Server 2012 no instala ni habilita Windows PowerShell 2.0; sin
PowerShell embargo, Windows PowerShell 2.0 es un requisito previo de
instalacin para los componentes del Motor de base de datos y SQL
Server Management Studio. Si el programa de instalacin notifica que
Windows PowerShell 2.0 no est presente, puede instalarlo o
habilitarlo siguiendo las instrucciones de la pgina
Software de Los sistemas operativos admitidos para SQL Server 2012 tienen
red software de red integrado. Las instancias con nombre y
predeterminadas de una instalacin independiente admiten los
siguientes protocolos de red: Memoria compartida, Canalizaciones con
nombre, TCP/IP y VIA.
Nota
Importante
Monitor SQL Server 2012 requiere Super VGA (800x600) o un monitor de una
resolucin mayor.
Recupera
automticamente el
espacio de registro para
mantener al mnimo los
requisitos de espacio, Los cambios realizados
eliminando, en esencia, despus de la copia de
Solo se puede recuperar
la necesidad de seguridad ms reciente
hasta el final de una copia
administrar el espacio no estn protegidos. En
Simple de seguridad.
del registro de caso de desastre, es
transacciones. Para necesario volver a
.
obtener informacin realizar dichos
transacciones no son
compatibles con el
modelo de recuperacin
simple. Las
caractersticas siguientes
no se pueden utilizar en
modo de recuperacin
simple:
-Trasvase de registros
-AlwaysOn o creacin
de reflejo de la base de
datos
-Recuperacin de
medios sin prdida de
datos
-Restauraciones a un
momento dado
Para obtener
informacin sobre las
copias de seguridad de
base de datos en el
modelo de recuperacin
optimizado para cargas
masivas de registros.
Copias de seguridad de la base de datos en el modelo de recuperacin simple
Con el modelo de recuperacin simple, despus de cada copia de seguridad, la base de datos
queda expuesta a la prdida potencial del trabajo en caso de desastre. El riesgo de prdida
del trabajo se incrementa con cada actualizacin hasta la siguiente copia de seguridad, cuando
el riesgo de prdida vuelve a cero y empieza un nuevo ciclo de riesgo. El riesgo de prdida
de trabajo aumenta con el tiempo entre una copia de seguridad y otra. La siguiente ilustracin
muestra el riesgo de prdida del trabajo en una estrategia de copia de seguridad que solo usa
copias de seguridad completas de la base de datos.
Ejemplo ( Transact-SQL)
El siguiente ejemplo muestra cmo crear una copia de seguridad completa de la base de datos
mediante WITH FORMAT para sobrescribir cualquier copia de seguridad existente y crear
un nuevo conjunto de medios.
Copiar
En las bases de datos que usan la recuperacin completa y optimizada para cargas masivas
de registros, las copias de seguridad de base de datos son necesarias pero no suficientes.
Tambin se requieren copias de seguridad de registros de transacciones. La siguiente
ilustracin muestra la estrategia de copia de seguridad menos compleja en un modelo de
recuperacin completa.
Ejemplo ( Transact-SQL)
El siguiente ejemplo muestra cmo crear una copia de seguridad completa de la base de
datos mediante WITH FORMAT para sobrescribir cualquier copia de seguridad existente y
crear un nuevo conjunto de medios. A continuacin, en el ejemplo se realiza una copia de
seguridad del registro de transacciones. En una situacin real, deber realizar una serie de
copias de seguridad de registros peridicas. Para este ejemplo, la base de datos de ejemplo
AdventureWorks2012 se configura para usar el modelo de recuperacin completa.
Copiar
USE master;
ALTER DATABASE AdventureWorks2012 SET RECOVERY FULL;
GO
-- Back up the AdventureWorks2012 database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak'
WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks2012 TO DISK =
'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak';
GO
Usar una copia de seguridad completa de la base de datos para restaurar la base de
datos
Es posible volver a crear toda la base de datos en un nico paso; para ello, restaure la base
de datos a partir de una copia de seguridad completa. En la copia de seguridad se incluye
suficiente informacin del registro de transacciones como para permitir la recuperacin de
la base de datos en el punto en que se complet la copia de seguridad. El estado de la base
de datos restaurada ser el mismo que el de la base de datos original en el momento en que
termin la copia de seguridad de base de datos, menos algunas transacciones no
confirmadas. Con el modelo de recuperacin completa, debe restaurar todas las copias de
seguridad de registros de transacciones siguientes. Una vez recuperada la base de datos, las
transacciones no confirmadas se revierten.
En general, la recuperacin de una base de datos hasta el momento del error incluye los
siguientes pasos bsicos:
Repita este paso de restauracin del registro para cada copia de seguridad de
registros adicional.
USE master;
--Create tail-log backup.
BACKUP LOG AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorksFullRM.bak'
WITH NORECOVERY;
GO
--Restore the full database backup (from backup set 1).
RESTORE DATABASE AdventureWorks2012
FROM DISK = 'Z:\SQLServerBackups\AdventureWorksFullRM.bak'
WITH FILE=1,
NORECOVERY;
En este siguiente ejemplo se presupone que usa un sistema de base de datos de gran
importancia para el que se crea una copia de seguridad completa diariamente cada
medianoche, una copia de seguridad diferencial de la base de datos cada hora, de lunes a
sbado, y copias de seguridad del registro de transacciones cada 10 minutos durante el da.
Para restaurar la base de datos al estado en que estaba a las 5:19 a.m. del mircoles, debe
hacer lo siguiente: