sábado, 29 de octubre de 2016

Preparar una pc limitada para grandes desarrollos sin depender de servidores ni nubes.!

Objetivo: poder desarrollar eficientemente con el hardware minimo, Preparando una computadora o estación de trabajo limitada de recursos (Por ejemplo una netbook) para desarrollo  de aplicaciones conectadas a bases de datos y que no quede super lentota por instalar un dinosaurio como el servidor MS SQL. (Netbooks  que cuestan mucho menos que tablets)

Por lo tanto tengo que buscar formas de tener herramientas para manejar bases de datos que no se coman toda la memoria y disco duro de una computadora muy limitada de memoria ram y de disco duro.

La solución propuesta si eres PROGRAMADOR es instalar LocalDB y LinqPad.  y si eres administrador de bases de datos DBA, propondria simplemente instalar el  cliente de SQL (MSS) para desarrollar Querys, Stored Procedures o Administrar las bases de datos https://msdn.microsoft.com/en-us/library/mt238290.aspx

Si en cambio se va a desarrollar Datos tabulares es necesario tambien instalar 
Data Tools, en este caso ya junto con el instalador se incluse LocalDB, el cual se puede descargar de esta liga: https://msdn.microsoft.com/en-us/library/mt204009.aspx  .

SOLUCION PARA PROGRAMADOR:

En el siguiente link se puede descargar la version mas light de sql express, o sea elegir la opción LocalDB el siguiente instalador te da tres opciones, el express full, el express core y el localdb, este ultimo es una version muy pequeña pero suficeinte para un desarrollador y fue el que yo instale en mi pequeña maquina de desarrollador netbook, me informe en las siguientes ligas:



Cuando se instala localDB dispondremos de un comando llamado SqlLocalDB para manejar nuestras instancias de base de datos, y para enviarle comando SQL podemos o bien instalar una de tantas utilerias remplaso del SSMS como en mi caso que instale LinqPad o bien usar una instruccion de linea de comandos como SQLCMD, ademas al instalar LocalDB se genera una instancia por default llamada MSSQLLocalDB. a la que podremos conectarnos de inmediato.

un ejemplo de uso de esta utileria es el siguiente, en el que se crea una nueva instancia llamada DEPARTMENT

SqlLocalDB.exe create "DEPARTMENT" 12.0 -s

Localdb NO instala una herramienta GUI para administrar las bases, es lo que lo hace tan ligero de descargar, digamos que solo es el motor, entonces ahora necesitamos buscar una consola alternativa al SSMS tambien ligera y sensilla de usar, yo elegi LINQPAD, aun que claro que no tiene toda la funcionalidad del verdadero SSMS, yo creo que esto nos forzara a hacer mas tareas con scripts y esto nos ayudara como desarrolladores a aprender mejor y mas rapido SQL.

LINQPAD, Es muy util para no tener que descargar el full MMC del SQL. y explorar con un arbolito y ejecutar queries en las bases de datos de localdb


COMO CONECTAR LINQPAD A LOCALDB a la intancia por default

Se conecta al siguiente servidor de la siguiente forma

(localdb)\MSSQLLocalDB

Esta información la obtuve de la siguientes páginas.



Y listo, ya podemos manejar nuestras bases de datos para nuestro desarrollo manteniendo nuestra pc super rapida y sin depender de servidores ni nubes.


SOLUCION PARA DBA

Para un dba, la solución seria instalar Data tools desde el siguiente link,  lo que resta es simplemente configurarlo para usar LocalDB.


Y luego con estas herramientas ya instaladas, simplemente conectar a local db para poder ensayar querys y manejo de bases de datos.