SQL Server es uno de los motores de bases de datos más utilizados en el mundo corporativo. Si sos desarrollador .NET, lo más seguro es que en algún momento te topes con este motor. El tema es que, como muchas otras herramientas de desarrollo de Microsoft, siempre estuvo asociada a Windows. Es que hace algunos años, solo corrían sobre Windows Server, o Windows Desktop. Pero eso ya cambió.
En este post te voy a mostrar cómo podés correr SQL Server desde Windows, Mac y Linux.
Instalación SQL Server
Primero que nada, vamos a instalar el motor de base de datos. Luego, las herramientas de desarrollo.
Hay varias formas de instalar SQL Server. Hoy día se puede instalar nativo en Windows y Linux, pero no en Mac. Sin embargo, se puede utilizar en cualquier sistema por medio de docker.
Estos son los pasos:
Instalar docker
Esto no voy a explicarlo para todos los sistemas, ya que hay muchas guías al respecto.
Bajarse la imagen
Una vez que ya lo tenés instalado, vamos a descargar y correr una imagen local de SQL Server. Los pasos son los siguientes:
Ver containers existentes
Abrí una terminal y corré el comando:
docker ps -a
Puede que tengas que ponerle sudo
al principio.
Eso te va a mostrar una lista de todas los containers que tenés, ya sea corriendo o no. A mi no me muestra nada, porque todavía no tengo ninguno:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Bajar imagen
Ahora corré el comando
sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
Esto te va a descargar la imágen de SQL Server 2022. Si corrés de nuevo el comando del paso uno, vas a ver que ahora sí tenés un container en tu máquina.
Configurar el container
Una vez que ya tenés tu imagen ahí. Vamos a configurar el container.
Este es el script que tenés que correr en tu terminal:
sudo docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<YourStrong@Passw0rd>" \
-p 1433:1433 --name sql1 --hostname sql1 \
-d \
mcr.microsoft.com/mssql/server:2022-latest
Hay que cambiar algunas cositas:
Donde dice
"MSSQL_SA_PASSWORD=<YourStrong@Passw0rd>"
, ponele el password que quieras definir para el usuario administrador (en SQL se llamasa
).Donde dice
-p 1433:1433
, ponele el número de puerto donde querés que escuche el servicio. Yo lo dejo en1433
que es el default de SQL Server.Acá,
--name sql1 --hostname sql1
,le podés cambiar el nombre a tu instancia y el hostname. Por ahora se lo dejo así.
Tené en cuenta que si corrés más de una instancia en tu máquina, no pueden tener el mismo nombre ni puerto.
Entorno de desarrollo
Instalación
El entorno de desarrollo históricamente utilizado siempre fue el SQL Server Management Studio. Lo malo es que solo está para Windows. Sin embargo, hace ya unos años, Microsoft sacó una alternativa multiplataforma que anda muy bien. Se llama Azure Data Studio, y vendría a ser como el VS Code de SQL.
Para instalarlo, podés ir acá y bajarte la versión correspondiente a tu sistema operativo. Como estoy en Linux, voy a bajar el que dice .deb
. Podés darle doble click para instalarlo.
Conectarse a la base
Una vez instalado, lo abrimos. Lucirá algo como esto:
Una hermosura, pero ahora qué hacemos? Hacemos click donde dice "Create a connection" y completamos los datos como aparecen en el formulario:
Server: localhost,1433
Authentication type: SQL login
User name: sa
Password: El password que le pusiste
Y le damos click en Connect
.
Nos va a preguntar si aprobamos el certificado, y le decimos que sí.
Y listo! Ya tenemos nuestra SQL Server corriendo local y nuestro entorno de desarrollo creado. En próximas publicaciones vamos a estar creando nuestra base de datos desde cero.
Video
Dentro de poco estaré subiendo un video a YouTube sobre este tema. Cuando esté listo lo pondré aquí.