Cómo instalar Microsoft SQL Server en Debian 12
MSSQL Server o Microsoft SQL Server es un RDBMS (Sistema de Gestión de Bases de Datos Relacionales) desarrollado por Microsoft. Como servidor de bases de datos, se utiliza para almacenar datos para tus aplicaciones. El Servidor SQL es ideal para múltiples propósitos de aplicaciones, puedes utilizar MS SQL Server como base de datos para tus aplicaciones de escritorio, utilizarlo para tus aplicaciones web, o cualquier pequeña aplicación de servidor.
En esta guía, te mostraremos cómo instalar Microsoft SQL Server 2022 Edition en un servidor Debian 12. También aprenderás a instalar MS SQL Tools para interactuar con MS SQL Server. Además, aprenderás algunas consultas básicas de MS SQL Server.
Requisitos previos
Para completar esta guía, asegúrate de que tienes lo siguiente:
- Un servidor Debian 12.
- Un usuario no root con privilegios sudo.
Añadir el repositorio de Microsoft SQL
En esta guía, utilizaremos el nombre MS SQL Server como referencia al servidor Microsoft SQL Server.
Antes de instalar MS SQL Server, debes añadir el repositorio de MS SQL Server a tu máquina Debian. En este ejemplo, añadirás el repositorio de MS SQL Server 2022 a tu servidor Debian 12.
En primer lugar, actualiza tu repositorio Debian y actualiza todos los paquetes utilizando el comando.
sudo apt update && sudo apt upgrade
Ahora instala las dependencias de los paquetes utilizando el siguiente comando. Escribe y para confirmar la instalación.
sudo apt install gnupg2 apt-transport-https wget curl
Una vez instaladas las dependencias de los paquetes, añade la clave GPG para el repositorio de MS SQL Server ejecutando el siguiente comando.
wget -q -O- https://packages.microsoft.com/keys/microsoft.asc | \ gpg --dearmor | sudo tee /usr/share/keyrings/microsoft.gpg > /dev/null 2>&1
A continuación, añade el repositorio de MS SQL Server con el comando siguiente. En esta guía, instalarás el MS SQL Server 2022.
echo "deb [signed-by=/usr/share/keyrings/microsoft.gpg arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022 jammy main" | \ sudo tee /etc/apt/sources.list.d/mssql-server-2022.list
Después de añadir la clave GPG y el repositorio de MS SQL Server, utiliza el comando que aparece a continuación para actualizar tu repositorio de Debian y recuperar la información de los paquetes para MS SQL Server.
sudo apt update
Instalar Microsoft SQL Server
Ahora que has añadido el repositorio de MS SQL Server a tu sistema Debian, vamos a instalarlo mediante el gestor de paquetes APT. En este caso, instalarás MS SQL Server 2022 en tu servidor Debian.
Instala MS SQL Server 2022 utilizando el siguiente comando apt. Cuando te pida confirmación, introduce y y pulsa ENTER para confirmar.
sudo apt install mssql-server
Al final de este proceso, verás las instrucciones para completar la instalación de MS SQL Server.
Ejecuta el siguiente comando para completar la instalación de MS SQL Server.
sudo /opt/mssql/bin/mssql-conf setup
Ahora se te preguntará lo siguiente:
- ¿Seleccionar la edición de MS SQL Server? Escribe 3 para seleccionar SQL Server Express.
- Cuando se te pregunte por los términos de la licencia? Escribe Sí para confirmar.
- Ahora introduce la contraseña de administrador de tu MS SQL Server y repite.
Con esto, la configuración de MS SQL Server debería estar completada. Debería estar ejecutándose en tu servidor Debian.
Comprueba el estado del servicio MS SQL Server utilizando el comando que se indica a continuación. Asegúrate de que MS SQL Server se está ejecutando y está habilitado en tu sistema.
sudo systemctl is-enabled mssql-server sudo systemctl status mssql-server
Configurar UFW
Una vez que el MS SQL Server se esté ejecutando, el siguiente paso es configurar UFW y abrir el puerto 1433/tcp para el MS SQL Server. Asegúrate de conectar
Instala UFW (Uncomplicated Firewall) en tu máquina Debian utilizando el siguiente comando. Escribe y para confirmar cuando se te pregunte.
sudo apt install ufw
Una vez instalado UFW, ejecuta el siguiente comando ufw para añadir el perfil OpenSSH y el puerto 1433/tcp. Y asegúrate de cambiar la subred de red con las direcciones IP de tu red local.
El perfil OpenSSH permitirá el tráfico al puerto SSH 22, mientras que el puerto 1433/tcp se utiliza para el tráfico de MS SQL Server.
sudo ufw allow OpenSSH sudo ufw allow 1433/tcp
or
sudo ufw allow from 192.168.1.0/24 to any port 1433
Ahora inicia y habilita UFW utilizando el siguiente comando. Cuando se te pregunte, escribe y para confirmar e iniciar UFW.
sudo ufw enable
Si UFW se está ejecutando, verás el mensaje«El cortafuegos está activo y habilitado al iniciar el sistema«.
Ahora puedes verificar la lista de puertos abiertos y perfiles habilitados en UFW utilizando el siguiente comando.
sudo ufw status
Asegúrate de que el perfil OpenSSH y el puerto 1433/tcp están añadidos a UFW.
Instalación de Microsoft SQL Tools para Cliente
En esta sección, aprenderás a instalar MS SQL Tools en tu máquina cliente. Se explica cómo instalar MS SQL Tools en distribuciones Linux basadas en Debian y en distribuciones basadas en RedHat.
Añade el repositorio de MS SQL Tools y actualiza el índice de paquetes en tu cliente Debian/Ubuntu utilizando el comando que se indica a continuación.
Para la máquina cliente Debian/Ubuntu:
echo "deb [signed-by=/usr/share/keyrings/microsoft.gpg arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/22.04/prod jammy main" | \ sudo tee /etc/apt/sources.list.d/prod.list
sudo apt update
Para la máquina cliente distribuciones basadas en RedHat:
sudo curl -o /etc/yum.repos.d/mssql-prod.repo https://packages.microsoft.com/config/rhel/9.0/prod.repo sudo dnf repolist
Una vez añadido el repositorio, ejecuta el comando que se indica a continuación para instalar MS SQL Tools en tu máquina cliente.
MS SQL Tools para distribuciones Debian/Ubuntu:
sudo apt install mssql-tools unixodbc-dev
MS SQL Tools para distribuciones basadas en RHEL:
sudo dnf install mssql-tools unixODBC-devel
Introduce SÍ cuando se te pregunte por las condiciones de licencia de los paquetes de MS SQL Tools.
Una vez finalizada la instalación, MS SQL Tools debe instalarse en el directorio /opt/mssql-tools/bin. Puedes comprobar el directorio /opt/mssql-tools/bin y verás dos archivos binarios sqlcmd como cliente MS SQL y bcp para importar datos al Servidor SQL.
ls -ah /opt/mssql-tools/bin
A continuación, añade el directorio /opt/mssql-tools/bin al PATH del sistema utilizando el siguiente comando.
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> /etc/environment
Ahora carga el archivo /etc/environment y verifica el PATH utilizando el siguiente comando. Asegúrate de que el directorio /opt/mssql-tools/bin se añade al PATH del sistema.
source /etc/environment echo $PATH
Por último, ejecuta el siguiente comando para localizar ambos archivos binarios sqlcmd y bcp.
which sqlcmd which bcp
Ahora puedes ejecutar ambos comandos«sqlcmd» y«bcp» de la siguiente manera:
sqlcmd -? bcp -?
Conexión a MS SQL Server mediante sqlcmd
Ahora que has instalado las Herramientas MS SQL en tu máquina cliente, el siguiente paso es conectarte a tu MS SQL Server.
Para conectarte a tu MS SQL Server, ejecuta el siguiente comando sqlcmd. Introduce tu contraseña de administrador cuando se te pida.
sqlcmd -S localhost -U SA -p
Una vez conectado, ejecuta la siguiente consulta para verificar tu versión de MS SQL Server.
select @@version go
Verás que has instalado MS SQL Server 2022.
Ahora verifica la lista de bases de datos de tu MS SQL Server utilizando la consulta siguiente.
select name from sys.databases; go
Verás las bases de datos por defecto master, tempdb, model y msdb en el MS SQL Server.
Crear base de datos y usuario en MS SQL Server
Una vez que te hayas conectado al MS SQL Server, ahora puedes crear un nuevo usuario y base de datos en el MS SQL Server.
Para crear un nuevo login y usuario en MS SQL Server, ejecuta las siguientes consultas. En este ejemplo, crearás un nuevo login Alex con la contraseña‘Myp@ssw0rd0987==+‘.
CREATE LOGIN Alex WITH PASSWORD='Myp@ssw0rd0987==+'; GO
Después crea una nueva base de datos‘AppDB‘ y cambia a ella utilizando las siguientes consultas.
CREATE DATABASE AppDB; GO
USE AppDB; GO
Ahora ejecuta las siguientes consultas para crear una nueva tabla de usuarios.
CREATE TABLE users ( id INT PRIMARY KEY IDENTITY (1, 1), first_name VARCHAR (50) NOT NULL, last_name varchar(50) NOT NULL, email varchar(50), last_login DATE NOT NULL ); GO
Después crea un nuevo usuario‘Alex’ para el login‘Alex‘ utilizando la siguiente consulta.
CREATE USER Alex FOR LOGIN Alex; GO
Una vez creado el usuario, ejecuta la consulta siguiente para conceder privilegios de usuarios de tabla al usuario Alex.
GRANT SELECT, INSERT, UPDATE, DELETE ON users TO Alex; GO
Escribe quit para salir.
Insertar y Recuperar Datos en Microsoft SQL Server
Con la nueva base de datos y el usuario creados, el siguiente paso es verificar tu base de datos conectándote al MS SQL Server utilizando tu usuario, concretamente a tu base de datos.
Ahora ejecuta el comando‘sqlcmd‘ que aparece a continuación para conectarte a tu base de datos utilizando tu usuario de inicio de sesión. Introduce tu contraseña cuando se te solicite.
sqlcmd -S localhost -U Alex -d AppDB -p
Una vez conectado, ejecuta la siguiente consulta para insertar nuevos datos en la tabla ‘usuarios’.
INSERT INTO users (first_name, last_name, email, last_login) VALUES ('Alex', 'Seed', '[email protected]', '20221201'); GO
Ahora puedes ejecutar la siguiente consulta SELECT para recuperar tus datos en MS SQL Server.
SELECT * FROM users; GO
Ahora puedes escribir quit para salir.
Conclusión
¡Enhorabuena! Ya has completado la instalación de Microsoft SQL Server 2022 en el servidor Debian 12. También has aprendido a instalar MS SQL Tools en distribuciones basadas en Debian y RedHat y has aprendido a conectarte a MS SQL Server mediante el comando «sqlcmd».
Además, también has aprendido el uso básico de las consultas MS SQL para crear bases de datos y usuarios, crear tablas e insertar y recuperar datos en el MS SQL Server.