Microsoft SQL Server 2017 estuvo disponible para su uso completo en RHEL 7 desde octubre de 2017, y al trabajar en la beta de RHEL 8, Red Hat colaboró estrechamente con Microsoft para mejorar el rendimiento y soportar más lenguajes de programación y marcos de aplicaciones, ofreciendo a los desarrolladores una mayor variedad de herramientas disponibles para trabajar en su próxima aplicación.

La mejor manera de comprender los cambios realizados y su impacto en su trabajo es probarlos en acción, pero RHEL 8 aún se encuentra en versión beta, y Microsoft SQL Server 2017 no es compatible para su uso en aplicaciones reales. ¿Qué hacer entonces?
Si desea probar SQL Server en la versión beta de RHEL 8, esta publicación le ayudará a configurarlo, pero no debe utilizarlo en un entorno de producción hasta que la versión de Red Hat Enterprise Linux 8 se haga pública y Microsoft proporcione su paquete oficialmente soportado para la instalación.
Uno de los principales objetivos de Red Hat Enterprise Linux es crear un entorno estable, . Para esto, RHEL implementa compatibilidad de aplicaciones a nivel de API individuales y interfaces del núcleo. Cuando pasamos a una nueva versión importante, generalmente existen diferencias específicas en los nombres de los paquetes, las nuevas versiones de las bibliotecas y las nuevas utilidades, que pueden causar complicaciones al ejecutar aplicaciones existentes que fueron compiladas para la versión anterior. Los proveedores de software pueden, siguiendo las recomendaciones de Red Hat, crear archivos ejecutables en Red Hat Enterprise Linux 7 que funcionen en Red Hat Enterprise Linux 8, pero el manejo de paquetes es otro asunto. Un paquete de software creado para Red Hat Enterprise Linux 7 no será compatible en Red Hat Enterprise Linux 8.
El servidor SQL Server 2017 en Red Hat Enterprise Linux 7 utiliza python2 y OpenSSL 1.0. Los siguientes pasos le permitirán obtener un entorno de trabajo que sea compatible con estos dos componentes, que ya han migrado a versiones más nuevas en la beta de RHEL 8. La inclusión de versiones anteriores fue hecha por Red Hat específicamente para mantener la compatibilidad hacia atrás.
sudo yum install python2
sudo yum install compat-openssl10
Ahora es necesario comprender los ajustes de origen de python en este sistema. , pero por defecto no hay "/usr/bin/python" en el sistema. Necesitamos hacer que el intérprete de python2 sea el predeterminado, de modo que SQL Server 2017 pueda ver "/usr/bin/python" donde espera verlo. Para ello, debemos ejecutar el siguiente comando:
sudo alternatives --config python
Se te pedirá que elijas la versión de Python, después de lo cual se creará un enlace simbólico que se mantendrá incluso después de actualizar el sistema.
Existen tres archivos ejecutables diferentes para trabajar con python:
Selection Command
———————————————————————-
* 1 /usr/libexec/no-python
+ 2 /usr/bin/python2
3 /usr/bin/python3
Enter para mantener la selección actual[+], o escribe el número de selección:
Aquí necesitas seleccionar la segunda opción, después de lo cual se creará un enlace simbólico de "/usr/bin/python2" a "/usr/bin/python".
Ahora podemos continuar configurando el sistema para trabajar con el repositorio de programas de Microsoft SQL Server 2017 mediante el comando curl:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
A continuación, debemos descargar los archivos de instalación de SQL Server 2017 utilizando la nueva función de descarga en yum. Debe hacerse de tal manera que la instalación se pueda realizar sin necesidad de resolver dependencias:
sudo yum download mssql-server
Ahora instalaremos el servidor sin resolver dependencias utilizando el comando rpm:
sudo rpm -Uvh --nodeps mssql-server*rpm
Después de esto, puedes continuar con la instalación normal de SQL Server, como se describe en la guía de Microsoft "Guía rápida: Instalación de SQL Server y creación de una base de datos en Red Hat" a partir del paso nº 3:
3. Una vez finalizada la instalación del paquete, ejecuta el comando mssql-conf setup y sigue las indicaciones para establecer la contraseña del administrador del sistema (SA) y seleccionar tu versión.
sudo /opt/mssql/bin/mssql-conf setup
Después de completar la instalación, puedes verificar la versión del servidor SQL instalado con el siguiente comando:
# yum list —installed | grep mssql-server
Soportará contenedores
Con el lanzamiento de SQL Server 2019, se promete que la instalación será aún más sencilla, ya que se espera que esta versión esté disponible en RHEL como un contenedor. SQL Server 2019 ya está disponible en versión beta. Para probarlo en RHEL 8 Beta solo se necesitan tres pasos:
Primero, crearemos un directorio de base de datos donde se almacenarán todos nuestros datos SQL. Para este ejemplo, utilizaremos el directorio "/var/mssql."
sudo mkdir /var/mssql
sudo chmod 755 /var/mssql
Ahora necesitamos descargar el contenedor con SQL 2019 Beta desde el repositorio del Microsoft Container Repository con el comando:
sudo podman pull mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Finalmente, es necesario configurar el servidor SQL. En este caso, estableceremos la contraseña del administrador (SA) para la base de datos llamada sql1, que opera en los puertos 1401 a 1433.
sudo podman run -e 'ACCEPT_EULA=Y' -e
'MSSQL_SA_PASSWORD='
—name 'sql1' -p 1401:1433 -v /var/mssql:/var/opt/mssql:Z -d
mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Puedes encontrar información más detallada sobre podman y contenedores en Red Hat Enterprise Linux 8 Beta aquí.
Funciona el doble
Puedes probar la combinación de RHEL 8 Beta y SQL Server 2017 tanto con la instalación tradicional como con la instalación de la aplicación en contenedor. En cualquier caso, ahora tendrás a tu disposición una instancia funcionando de SQL Server, y podrás empezar a llenar la base de datos o explorar las herramientas disponibles en RHEL 8 Beta para crear pila de aplicaciones, automatizar el proceso de configuración u optimizar el rendimiento.
A principios de mayo, asegúrate de escuchar la presentación de Bob Ward, arquitecto senior en el grupo de sistemas de bases de datos de Microsoft, en la cumbre , donde se discutirá el despliegue de una plataforma moderna para trabajar con datos basada en SQL Server 2019 y Red Hat Enterprise Linux 8 Beta.
Y el 8 de mayo se espera el lanzamiento oficial, que abre el uso de SQL Server en aplicaciones reales.
Fuente: habr.com
