2014/05/04

SQL SERVER - Envía las copias de seguridad a una carpeta de red, servidor FTP, Dropbox, Google Drive o Amazon S3

Déjenme decirles acerca de una de las herramientas más útiles de SQL que cada DBA debe utilizar - es SQLBackupAndFTP . He estado utilizando esta herramienta desde el año 2009 - y que es el primer programa que se instala en el servidor SQL. Descargue una versión gratuita, la configuración de 1 minuto y las copias de seguridad diarias están a salvo en la nube. 
En resumen, SQLBackupAndFTP
  • Crea la base de datos SQL Server y archivo de copias de seguridad en la fecha prevista
  • Comprime y cifra las copias de seguridad
  • Envía copias de seguridad a una carpeta de red, servidor FTP, Dropbox, Google Drive o Amazon S3
  • Envía notificaciones por correo electrónico sobre el éxito o el fracaso del trabajo
SQLBackupAndFTP viene en versiones gratis y pagados (desde $ 29) - Véase la comparación de versiones . La versión gratuita es totalmente funcional para las copias de seguridad ad hoc ilimitadas o para copias de seguridad programadas de hasta dos bases de datos - será suficiente para muchos clientes pequeños.
Lo que más me ha impresionado desde el principio - es que he entendido cómo funciona y era capaz de configurar el trabajo de una sola forma (ver Imagen 1 - forma principal arriba)
  1. Conectarse a su servidor SQL y seleccione las bases de datos para hacer copia de seguridad
  2. Haga clic en "Añadir destino de copia de seguridad" para configurar las copias de seguridad donde deben ir a (la red, servidor FTP, Dropbox, Google Drive o Amazon S3)
  3. Ingrese su correo electrónico para recibir confirmaciones por correo electrónico
  4. Establece la hora para comenzar backups completos diarios (o vaya a Configuración si necesita copias de seguridad diferenciales o del registro de transacciones en un horario flexible)
  5. Pulse el botón "Ejecutar ahora" para poner a prueba
Se puede llegar a este formulario si hace clic en los botones "Configuración" en la sección "Programación". Seleccione qué tipos de copias de seguridad y la frecuencia con que desea ejecutar de ellas y ver las copias de seguridad programadas en la lista de "plan de respaldo estimado"

El tutorial detallado está disponible en el sitio web del desarrollador.
Junto con la configuración SQLBackupAndFTP le da la opción de instalar "One-Click SQL Restore" (se puede instalar autónomo también) - una herramienta básica para la restauración de las copias de seguridad simplemente completa.
Sin embargo básico, puede arrastrar y colocar en él el archivo zip creado por SQLBackupAndFTP, se baja la cremallera del archivo BAK, si es necesario, se conecta con el servidor SQL en el inicio, selecciona la base de datos a la derecha, es lo suficientemente inteligente como para reiniciar el servidor para soltar las conexiones abiertas en caso de necesidad - muy útil para desarrolladores que necesitan para restaurar las bases de datos a menudo.
Usted puede preguntar por qué es esta herramienta es mejor que las tareas de mantenimiento disponibles en SQL Server? Mientras que las tareas de mantenimiento son fáciles de configurar, SQLBackupAndFTP es todavía muy fácil e integra soluciones para la compresión, cifrado, FTP, almacenamiento en la nube y el correo electrónico que lo hacen superior a las tareas de mantenimiento en todos los aspectos.
En una cara de la moneda SQLBackupAndFTP no es la herramienta más lujoso para gestionar copias de seguridad o consultar su salud. Sólo funciona con fiabilidad en las instancias locales de SQL Server. En otras palabras, tiene que ser instalado en el servidor de SQL en sí. Para los servidores remotos que utiliza secuencias de comandos que es menos fiable. Esta limitación es en realidad inherente a servidor SQL como mandato BACKUP DATABASE crea la copia de seguridad no en el cliente, pero en el propio servidor.
Esta herramienta es compatible con casi todas las versiones conocidas de SQL Server. Se trabaja con SQL Server 2008 (todas las versiones) y muchas de las versiones anteriores. Es especialmente útil para SQL Server Express 2005 y SQL Server Express 2008, ya que carecen de herramientas integradas para la copia de seguridad.
Recomiendo esta herramienta a todos los administradores de bases. Ellos deben absolutamente probar, ya que es gratis y hace exactamente lo que promete. Puede descargar una copia gratuita de la herramienta desde aquí.
Referencia:  Pinal Dave ( http://blog.SQLAuthority.com )

2014/05/02

Moralejas ( Chistes)

1) CUANDO SU EMPLEADO SE ENFERME, DELE EL DIA LIBRE! 

Kung Chang llamó a su jefe y le  dijo: 
- Jefe, hoy yo no tlabajal, yo estal enfelmo. Duele  cabeza, duele panza, duele pielna, no voy tlabajo. 
El Jefe le responde: 
- Kung Chang, realmente hoy te necesito en el trabajo.  Cuando me siento así de mal, le pido a mi esposa que tengamos sexo. Eso me hace sentir mucho mejor y puedo ir a trabajar. Deberías probar, te hará muy bien. 
Dos horas después, Kung Chang vuelve a llamar a su Jefe  y le dice: 
- ¡Jefe, no sabel qué decil! Glacias pol consejo, ya  sentilme mucho mejol, enseguida yo il tlabajo. Felicito mucho, muy linda su casa, muy glande su cualto y muy buena su esposa. 

Moraleja administrativa: 
La comunicación debe ser clara.  Sea explícito cuando hable con sus colaboradores. 
 
2) RESPETAR LAS OPINIONES 

Un hombre estaba poniendo flores en la tumba de un  pariente, cuando ve a un chino poniendo un plato de arroz en la tumba vecina. El hombre se dirige al chino, y le  pregunta: 

-  Disculpe señor, pero ¿cree usted que de verdad el difunto se comerá el arroz? 
-  Si, respondió el chino... 'Cuando el suyo venga a oler sus FLORES.

MORALEJA: 
Respetar las opciones del otro,  es una de las mayores virtudes que un ser humano puede tener. Las personas  son diferentes, actúan diferente y piensan diferente. No  juzgue............. COMPRENDA.
 
3) HISTORIA DE DOS AMIGAS 

Dos amigas salieron solas, sin sus maridos. De regreso en la madrugada, agotadas por la borrachera, les dieron ganas de  hacer pis, pero 
lo único que había cerca era un cementerio. Decidieron bajarse y hacerlo... La primera no encontró con que secarse, así que se limpió con 
su ropa interior y la tiró. La segunda tampoco encontró con qué, así que agarró la cinta  de una corona de flores perteneciente a un reciente funeral y se limpió con ella.. 

A la mañana siguiente los maridos se llaman y uno le dice al otro: !!... esto ya es el colmo!, estoy hasta los huevos de las salidas 
de éstas dos. Esto es ha acabado, imagínate..... llegar sin bragas a casa a las 4:00 de la mañana. 

Y el otro le contesta: Tienes suerte, y no se de qué te quejas!!! Por lo menos la tuya llegó sin bragas. Mi mujer llegó con una cinta en el culo que decía:
'Nunca te olvidaremos. Con cariño: tus compañeros de  trabajo'.

MORALEJA: 
No saque conclusiones sin preguntar, pregunte, siempre pregunte antes.

4) AMOR DE LEJOS... 

Un soldado español destinado en Irak recibe una carta de su novia desde Madrid. La carta decía lo siguiente: 
Querido Alberto. 
Ya no puedo continuar con esta relación. La distancia que nos separa es demasiado grande. Tengo que admitir que te he sido infiel dos veces desde que te fuiste y creo que ni tu ni yo nos merecemos esto, lo siento. 

Por favor devuélveme la foto que te envié. 
Con amor. Sofía. 

El soldado, muy herido, le pidió a todos sus compañeros que le regalaran fotos de sus novias, hermanas, amigas, tías, primas, etc. 
Junto con la foto de Sofía incluyó todas esas otras fotos que había recolectado de sus amigos. 

Había 57 fotos en el sobre y una nota que decía : 

Querida Sofía. 
Perdóname, pero no puedo recordar quién coño eres. Por favor, busca tu foto en el paquete y me devuelves el resto.

MORALEJA: 
Aún derrotado... hay que SABER JODER AL ENEMIGO

2014/04/24

Depurar la Aplicación en Visual Studio

Cuando usted necesita para diagnosticar errores o problemas en su aplicación, utilice el depurador integrado de Visual Studio.
  1. Abra el proyecto de aplicación en Visual Studio.
  2. Ejecute la aplicación en modo de depuración para encontrar excepciones, los problemas en la ejecución, o valores de datos. Presione F5 o seleccione el botón Start.
    Inicio de la depuración - usar el botón Inicio o presione F5  
  3. Cuando el depurador detecta una excepción, se suspende la ejecución de la aplicación.
    Deténgase en la excepción
  4. Cierre el diálogo de excepción a encontrar el objeto no inicializado. Incluso a una excepción, el depurador le permite examinar el estado de su aplicación.
  5. Coloca el ratón sobre las variables para ver sus valores en una punta de datos.
    Vea los valores de las variables en un consejo de datos
  6. En la ventana locales, usted puede aprender más sobre el contexto del problema.
    Ver la ventana Locales
    En este caso, la propiedad podría ser una referencia a un campo privado que es la raíz del problema. El siguiente paso es por lo general para moverse a través de su código para encontrar donde las cosas salieron mal.
  7. En la ventana Pila de llamadas, se puede ver el camino que su aplicación se llevó a alcanzar el punto donde ocurrió la excepción.
    Ver la pila de llamadas
    Use su conocimiento del código para determinar un lugar para establecer un punto de interrupción. 
  8. Abra el archivo en el que desea iniciar la depuración y, a continuación, seleccione la línea en la que desea comenzar.Presione F9 o haga doble clic en la izquierda cuneta al lado de la línea.
    Establezca un punto de interrupción
    El punto de ruptura se muestra como un círculo rojo en la cuneta. El punto de interrupción se detiene su aplicación para que pueda comenzar a recorrer el código.
  9. Debido a que el depurador detecta una excepción, tendrá que reiniciar la sesión de depuración. Pulse Mayús + F5 o seleccione el botón Detener depuración en la barra de herramientas.
    Detener depuración  
  10. Reinicie la sesión de depuración. Utilice los comandos de paso a paso para moverse a través de su código, buscando el método que es muy probable que para crear el objeto sin inicializar. ¿Cuáles son los comandos de paso a paso?
    Encontrar la variable sin inicializar
  11. Cuando haya identificado el lugar donde se puede solucionar el problema, detener la depuración y cambiar o añadir código.
    Solucionar el problema en el código
  12. Reinicie la sesión de depuración, y correr a través de la aplicación de nuevo para confirmar su arreglo.

Q & A

Q:¿Cuáles son los comandos de paso a paso?
A:Usted puede moverse a través de la aplicación utilizando uno de estos comandos:
Paso a paso por (F10) Pasando por encima de una función siempre se ejecuta la siguiente línea de código y luego suspende la ejecución. No importa si la línea contiene una llamada a un método en el código.
Step Into (F11) Cuando entras en una línea de código, el depurador realiza una de las siguientes acciones:
  • Si la declaración es una llamada a una función en el código, el depurador se mueve a la primera línea de la función llamada y luego suspende la ejecución.
  • Si la siguiente declaración no es una llamada a una función en el código, como un sistema o función de marco, el depurador ejecuta la sentencia, se mueve a la siguiente declaración, y luego suspende la ejecución.
Continuar (F5) Continuar reinicia la ejecución de la aplicación. La ejecución continúa hasta que se alcanza un punto de interrupción, se produce una excepción, o se cierra la aplicación.
Ejecutar hasta el cursor (Ctrl + F10) Corriendo hacia el cursor actúa como un punto de interrupción temporal.Seleccione una línea en el código y seleccione Ejecutar hasta el cursor en el menú contextual.
El depurador continúa la ejecución de la aplicación hasta que la línea que contiene el cursor está a punto de ser ejecutado, o hasta que se alcanza un punto de interrupción entre la línea donde reanudó la ejecución y el cursor.
Q:¿Puedo obtener un mayor control sobre cuando mis puntos de interrupción fuego?
A:Sí, usted puede desactivar temporalmente los puntos de interrupción, y se puede establecer las condiciones que determinan cuándo un fuego punto de interrupción.  Más información aquí .
Q:¿Puedo depurar una aplicación que no está en mi máquina de Visual Studio?
R:Sí. Pero sólo si la aplicación se está ejecutando en un dispositivo que se conecta a través de una red o que está conectado directamente a la máquina de Visual Studio. Usted tendrá que hacer algún tipo de configuración  para poder depurar este camino.
Q:¿Puedo cambiar mi código sin detener la sesión de depuración?
R:A veces, pero las normas sobre cuando esto es posible son complicadas . La mejor manera es sólo para probarlo.Obtendrá un error si el lenguaje o el contexto no admite la edición. Si esto sucede, usted puede simplemente eliminar los cambios.

2014/04/23

Crear y Ejecutar Pruebas Unitarias en Visual Studio

Crear pruebas unitarias y ejecutarlos con frecuencia para asegurarse de que su código funciona correctamente.

Crear una prueba unitaria

  1. Crear un proyecto de prueba unitaria.
    Agregar un proyecto de prueba de unidad para su solución
  2. Asigne un nombre al proyecto.
    Plantilla de proyecto de prueba unitaria
    El proyecto ya ha sido añadido a su solución.
    Proyecto de prueba unitaria en el Explorador de soluciones
  3. En el proyecto de prueba de unidad, agregue una referencia al proyecto que desea probar.
    Agregue una referencia a su proyecto de prueba unitaria
  4. Seleccione el proyecto que contiene el código que pondrá a prueba.
    Seleccione la referencia para agregar
  5. Código de la prueba unitaria.
    Agregue código para la prueba unitaria 

Ejecutar pruebas unitarias

  1. Abra el explorador de prueba.
    Abra el Explorador de prueba desde el menú de la prueba 
  2. Ejecutar pruebas unitarias.
    Ejecutar pruebas unitarias en el explorador de prueba 
    Usted puede ver las pruebas unitarias que aprueba o no, en el explorador de prueba.
    Resultados de la prueba unidad de revisión en el explorador de prueba 

Q & A

Q:¿Puedo ejecutar pruebas unitarias en Visual Studio si uso un marco de prueba de unidad diferente?
R:Sí. Utilice el plug-in para que el marco para que corredor de prueba de Visual Studio puede trabajar con ese marco.Estos son los marcos de pruebas unitarias complementos para Visual Studio  que están disponibles en estos momentos.
  1. Utilice gestor de extensiones de Visual Studio para descargar el plug-in.
    Seleccione 3 ª parte prueba de unidad plug-ins con gestor de extensiones 
  2. Descarga el plug-in de la Galería de Visual Studio en Herramientas / Testing, o búsquelo si se conoce el nombre.
    Descarga el plug-in 
  3. Crear un proyecto de biblioteca de clases.
    Crear un proyecto de biblioteca de clases 
    Agregue el proyecto a la solución.
    Nombre del proyecto de biblioteca de clases y agregarlo 
  4. En el proyecto de biblioteca de clases, ejecute NuGet para instalar el plug-in.
    Administrar paquetes NuGet para instalar el plug-in 
    NuGet  es una extensión de Visual Studio que se puede utilizar para agregar y actualizar las bibliotecas y herramientas para sus proyectos.
  5. Instale el plug-in. Si conoce el nombre, puede buscar en línea.
    Instale el marco de 3 ª parte 
    El marco se hace referencia en el proyecto.
    La referencia para el marco de pruebas unitarias 3 ª parte se añade a la solución 
  6. En el proyecto de biblioteca de clases, agregue una referencia al proyecto que desea probar.
    Agregue una referencia al proyecto  
  7. Seleccione el proyecto que contiene el código que pondrá a prueba.
    Seleccione el proyecto para ser probado 
  8. Código de la prueba unitaria.
    Agregue código para la prueba unitaria

2014/04/22

Crea tu Aplicación en Visual Studio

Empezar a desarrollar su aplicación mediante la creación de un proyecto en Visual Studio.
  1. Si no lo ha hecho, instale Visual Studio .
  2. Crear un proyecto (abreviado: Ctrl + Shift + N).
    Crear nuevo proyecto
  3. Elija una plantilla y añada el nuevo proyecto de código para el control de versiones. Nosotros sugerimos que usted pone su nuevo proyecto en c: \ Users \ SuNombre \ Source \ Repos \.
    Elija una plantilla
  4. Elija Git para el control de versiones.
    Elija de diálogo de control de fuente
    Es una buena idea para seguir adelante y cometer el nuevo proyecto  ahora.
  5. Escriba su código.
    Editor de código
  6. Ejecutar la aplicación (del teclado: Ctrl + F5).
Felicitaciones, usted ha creado un proyecto simple en Visual Studio. Ahora usted puede comenzar a desarrollar sus propias aplicaciones.

Q & A

Q:¿Cómo puedo crear una aplicación de Windows 8 tienda?
R:He aquí una serie de videos  que te muestra cómo hacerlo.
Q:¿Cómo puedo crear una cuenta de Windows Phone 8 aplicación?
R:Esta serie de videos  le ayudará a empezar.
Q:¿Cómo puedo utilizar ASP.Net para crear una aplicación web y luego implementarlo en la nube?
R:He aquí una serie de videos en ASP.Net  que cubre el despliegue de Microsoft Azure.
Q:¿Cómo puedo crear una aplicación móvil que almacena los datos en la nube?
R:He aquí una serie de vídeos  sobre la creación de diferentes aplicaciones móviles utilizando Microsoft Azure servicios móviles.
Q:¿Qué sucede cuando agrego el proyecto al control de versiones?
R:Su proyecto de código se crea en su nuevo repositorio Git local. Es una buena idea para seguir adelante y comprometer al nuevo proyecto.
  1. Ir a la página de los cambios en Team Explorer (abreviado: Ctrl + 0, G).
    Página Cambios en Team Explorer
  2. Si aún no ha introducido su nombre y dirección de correo electrónico, sin embargo, hacer eso primero. Estos se asocian con tus commits.
    Seleccione Configurar
  3. Ahora se puede introducir un comentario, y confirmar los cambios.
    Cambios página con el botón Commit destacó
    Sus cambios se han cometido a nivel local.
    Comprometerse con éxito
    Fuente: http://www.visualstudio.com/

2014/04/21

Instalar Visual Studio

  1. Vaya aquí para descargar una copia de Visual Studio, si todavía no la tiene. Inicie sesión con su cuenta de Microsoft.
    Inicie sesión con su cuenta de Microsoft para descargar Visual Studio
    Si tiene una cuenta de Microsoft asociada a una suscripción de MSDN, inicie sesión con esa cuenta para ver qué ediciones de Visual Studio proporciona su suscripción.
  2. Proporcione información para crear un perfil de Visual Studio si todavía no tiene. Cada vez que inicie sesión con esta cuenta de Microsoft en cualquier equipo, tendrá la configuración de Visual Studio disponible. A continuación, seleccione la versión de Visual Studio que desea descargar.
    Descargue Visual Studio
  3. Instale Visual Studio y seleccione las características que desee. Cuando Visual Studio esté instalado, ya estará listo para empezar a programar.
  4. Al iniciar Visual Studio 2013, puede iniciar sesión. ¿Por qué es recomendable iniciar sesión?
    Sign in page 
  5. Si todavía no tiene perfil, se le pedirá que cree uno. Puede cambiar la configuración aquí o en las opciones de Visual Studio; la configuración se guarda con su perfil. Independientemente de la ubicación donde inicie sesión, tendrá la configuración a su disposición.
    Configuración de Visual Studio

Preguntas y respuestas

P:¿Por qué debería iniciar sesión y crear un perfil de Visual Studio?
R:La configuración de Visual Studio (por ejemplo, la inclusión automática de llaves) se guarda en su perfil. Puede iniciar sesión en cualquier equipo y en cualquier momento y siempre tendrá la configuración a su disposición.
Inicie sesión en Visual Studio durante el período de prueba de 30 días para disfrutar de estas ventajas:
  • Visual Studio Professional o Ultimate: Amplíe 90 días el período de prueba
  • Visual Studio Express: Siga usando esta edición de forma gratuita
Aquí encontrará más información sobre los beneficios de iniciar sesión y crear un perfil.
P:Ya tengo Visual Studio 2012. ¿Puedo probar Visual Studio 2013 junto con Visual Studio 2012?
R:Sí. Puede usar Visual Studio 2012 y Visual Studio 2013 en el mismo equipo.
Fuente: http://www.visualstudio.com/

2014/04/08

Visual Studio 2013 Update 2 RC, novedades


En la Build 2012 ha habido un montón de novedades en prácticamente todo el ecosistema de desarrollo de la plataforma Microsoft.

Una de ellas ha sido la publicación para descarga de los desarrolladores de la segunda actualización del IDE Visual Studio 2013, en su último estado de Release Candidate.

Esta actualización incluye un editor de ficheros Saas, una extensión de CSS que añade capacidades de preprocesamiento, del uso de variables, anidamiento avanzado, ficheros parciales, importaciones, mezcla, herencia y operadores.

También incluye un nuevo y mejorado editor de ficheros Json, formato de intercambio de información que ha ido desplazando a XML en la Web.

Ambos dos incluyen coloreado del código, intellisense, y se pueden elegir como ítem a añadir a un proyecto existente.
Otra cosa que me parece muy útil son las nuevas capacidades de Scaffolding. Por ejemplo, en MVC me construye automáticamente combos desplegables partiendo de un Enum.

La plantilla de ASP.Net ha recibido mejoras, añadiendo a las pantallas de confirmación de la cuenta y reinicio de la contraseña; también la de Web API añade la autenticación con cuentas organizativas (On premise); y las SPA incluyen autenticación basada en vistas (view) MVC y de servidor.

Se ha mejorado el editor LESS y se ha añadido un nuevo selector de documentos tanto en HTML, Razor, CSS, LESS y Saas.

También se ha incluido las últimas versiones de los framework más utilizados por los desarrolladores de .net, como son:

          - ASP.NET MVC 5.1.2
          - ASP.NET Web API 2.1.2
          - ASP.NET Web Pages 3.1.2
          - ASP.NET Identity 2.0.0
          - Entity Framework 6.1.0 RTM
          - NuGet 2.8 RTM
          - ASP.NET SignalR 2.0.2

Concluyendo, una nueva actualización de la extensa herramienta, con la que tenemos para estudiar y divertirnos durante bastante rato hasta que, finalmente, se publique la versión RTM.

Más información | Announcing new web features in Visual Studio 2013 Update 2 RC
Enlace de descarga | Visual Studio 2013 Update 2 RC

2014/04/07

Mejores Prácticas para ser un DBA SQL Server

Navegando por la red me encontré este excelente articulo que resume en 4 fases  los puntos críticos para ser un buen DBA, no dejen de leerlo, excelente articulo.
Fase 1.- Día a día

1.  Compruebe los registros de eventos del S.O. y los registros de SQL Server para detectar eventos inusuales.
2.  Verifique que todos los trabajos programados se han ejecutado correctamente.
3.  Confirme que las copias de seguridad se han hecho y guardado con éxito a un lugar seguro.
4.  Monitoree el espacio en disco para asegurarse de que sus servidores de SQL no se quedarán sin espacio en disco. Para un mejor rendimiento, todos los discos deben tener 15% o más de espacio libre.
5.  A lo largo del día, haga un seguimiento periódico de rendimiento utilizando Monitor de sistema y de perfiles / Traza de SQL.
6.  Monitorear regularmente e identificar problemas de bloqueo.
7.  Mantenga un registro de los cambios que realice a los servidores, incluyendo la documentación de los problemas de rendimiento a identificar y corregir.
8.  Crear alertas de SQL Server para que le avise de posibles problemas, y las envíe por mail. Tomar las medidas necesarias.
9.  Regularmente restaure copias de seguridad en un servidor de prueba para verificar que realmente los puede restaurar. No es necesario para restaurar todas las copias de seguridad todos los días, pero debiera hacerlo a menudo para asegurarse de que usted tiene buenas copias de seguridad.
10.  Tómese su tiempo para aprender algo nuevo como un DBA para promover su desarrollo profesional.

Fase 2.- Instalación

1. Siempre documente las instalaciones de modo completo, aun cuando parezca redundante, esto hará que las instancias de SQL Server se pueden reproducir fácilmente en caso de emergencia.
2. Si es posible, instalar y configurar todas las instancias de SQL Server de una manera consistente, de la misma forma, basándose en las normas pre-acordadas de su organización.
3. No instale los servicios de SQL Server que no se utilizan, como Microsoft indexación de texto completo, Reporting Services o Analysis Services.
4. Para obtener el mejor rendimiento de SQL Server, detenga todos los servicios del sistema operativo que no son necesarios.
5. Para un óptimo rendimiento de SQL Server, no ejecutar al SQL Server junto con ninguna otra aplicación. 6. Para obtener el mejor rendimiento I / O, busque los archivos de base de datos (. mdf) y archivos de registro (. ldf) en discos separados para aislar a los patrones de acceso a disco.
7. Si tempdb se utiliza en gran medida, póngalo en un disco aparte.
8. No instale SQL Server en un controlador de dominio.
9. Asegúrese de que SQL Server se instala en una partición NTFS.
10. No utilice NTFS con cifrado de archivos de datos (EFS) y ni compresión de datos sobre el disco de la base de datos de SQL Server y los archivos de registro.

Fase 3.- Actualizar

1. Ejecute el Upgrade Advisor de SQL Server antes de actualizar. Haga los cambios necesarios antes de realizar la actualización.
2. Realizar una actualización de prueba antes de actualizar los servidores de producción. Y no se olvide de probar las aplicaciones con la nueva versión también.
3. Antes de actualizar, asegúrese de tener un plan para revertir los cambios en caso que la actualización sea problemática.
4. No actualizar clústeres de SQL Server en su lugar. En cambio, a reconstruirlos en un nuevo hardware.
5. Si actualiza desde una versión anterior de SQL Server, debe actualizar todas las estadísticas en todas las bases de datos. Esto se debe a que las estadísticas no se actualizan automáticamente durante el proceso de actualización.

Fase 4.- Seguridad

1. Asegure la seguridad física de cada Servidor SQL, previniendo que cualquier usuario no autorizado pueda acceder físicamente a sus servidores.
2. Instalar solamente las mínimas y necesarias nettwork libraries y network protocols en sus instancias SQL
3. Minimize el número de usuarios sysadmins con acceso a SQL Server.
4. Como DBA, lóguese como sysadmin solo cuando realmente lo necesite. Cree cuentas específicas para DBAs para que puedan acceder a SQL Server cuando no necesiten privilegios sysadmin.
5. Asigne a la cuenta “sa” una password realmente compleja y no la use nunca para loguearse a SQL Server. En vez de eso use una cuenta Windows Authentication para acceder SQL Server como sysadmin.
6. Dele a los usuarios los mínimos permisos necesarios que le permitan a ellos realizar su trabajo.
7. De ser posible, use stored procedures o views para el acceso a los datos en vez de dejarlos acceder directamente a las tablas.
8. De ser posible, use Windows Authentication logins en vez de SQL Server logins.
9. Use strong passwords (combinación de mayúsculas, minúsculas, números y caracteres especiales) para todos los SQL Server login.
10. No le asigne permisos al rol de base de datos “public”
11. Remueve Logins IDs que ya no necesitan acceder a SQL Server apenas los detecte.
12. Deshabilite el usuario “guest” en cada base de datos usando REVOKE CONNECT FROM GUEST.
13. No use “cross database ownership chaining” si no es realmente necesario.
14. Nunca habilite permisos a xp_cmdshell a los usuarios que no son sysadmin.
15. Eliminar las bases de ejemplo (adventureworks, pubs, northwind) de todas las instancias de producción.
16. Usar Windows Global Groups, o SQL Server Roles para manejar grupos de usuarios con similares permisos.
17. No debería crear ni permitir crear network shares en servidores SQL Server.
18. Configurar login auditing, de esta manera se puede ver quienes intentaron loguearse y los intentos fallidos de login.
19. No use jamás la cuenta sa ni login ids que sean sysadmin como cuentas de acceso desde aplicaciones.
20. Asegúrese que sus servidores están detrás de un firewall y no están expuestos directamente a internet.
21. En SQL Server 2005 y previos, remover el grupo de BUILTIN/Administrators para evitar que los administradores locales del servidor puedan acceder a SQL Server. En SQL Server 2008, el grupo BUILTIN/Administrators group no existe en forma predeterminada.
22. Ejecute cada servicio SQL Server bajo una cuenta de dominio diferente.
23. Dele a las cuentas asignadas a los servicios SQL Server los mínimos permisos que le permitan al mismo ejecutarse de la manera correcta. En la mayoría de los casos los permisos de un administrador local no son necesarios y menos aún los permisos de un administrador de dominio.
24. Cuando use queries distribuidas use linked servers en vez de remote servers. Remote servers están solo por backward compatibility.
25. No navegue internet desde una instancia de producción de SQL Server.
26. En vez de instalar antivirus/antispyware en un SQL Server, realice escaneos desde un servidor remoto y solo cuando la actividad del servidor SQL no sea tan alta.
27. Agregue los service packs, tanto de SQL Server com de sistema operativo apenas estén disponibles.
28. Considere la posibilidad de encriptar los backups con herramientas como Red Gate SQL Backup Pro u otras.
29. Solo habilite las trazas de “C2 auditing” o “Common Criteria compliance” cuando sea realmente necesario, porque sobrecargan el servidor si están habilitadas.
30. Considere seriamente ejecutar un SQL Server security scanner para detectar si hay huecos de seguridad en sus servidores, tanto a nivel sistema operativo como servidor de base de datos. http://searchsqlserver.techtarget.com/feature/SQL-Server-security-test-checklist
31. Considere habilitar SSL or IPSEC para las conexiones entre sql server y los clientes.
32. Si está utilizando SQL Server 2005/2008, habilite password policy checking.
33. Si está usando SQL Server 2008 en un entorno de alta seguridad, considere implementar TDE, Transparent Data Encryption para proteger los datos de su servidor.
34. Si utiliza SQL Server 2005, no use SQL Server Surface Area Configuration para desbloquear características que nunca se utilizan y que pueden traer solamente problemas de seguridad.
35. Si está usando SQL Server 2005/2008 y crea endpoints, solo habilite permisos grant CONNECT a los logins que realmente necesitan acceder esos endpoints. Explícitamente deniegue (deny) CONNECT permissions a los endpoints que no son necesarios para los usuarios.

(Traducido Articulo de Brad McGehee)

2014/04/04

Encontrar la última fecha y hora de una copia de seguridad (completa, diferencial y del registro de backup)

SQL Expert Sravani ha publicado un guión fantástico, que también muestra la última tarea completa, diferencial y de registro de copia de seguridad de la base de datos. Referencia: Pinal Dave ( http://blog.SQLAuthority.com )