O Microsoft SQL Server 2017 está disponível para uso completo no RHEL 7 desde outubro de 2017 e, com o RHEL 8 Beta, a Red Hat trabalhou em estreita colaboração com a Microsoft para melhorar o desempenho e fornecer suporte para mais linguagens de programação e estruturas de aplicativos, oferecendo aos desenvolvedores mais opções disponíveis. ferramentas para trabalhar em sua próxima aplicação.

A melhor maneira de entender as mudanças e como elas impactam seu trabalho é experimentá-las, mas o RHEL 8 ainda está em beta e o Microsoft SQL Server 2017 não é compatível para uso em aplicativos ativos. O que fazer?
Se você deseja experimentar o SQL Server no RHEL 8 beta, este post ajudará você a instalá-lo e executá-lo, mas não o utilize em um ambiente de produção até a versão Red Hat Enterprise. Linux A versão 8 não estará disponível ao público e a Microsoft não fornecerá um pacote de instalação com suporte oficial.
Um dos principais objetivos da Red Hat Enterprise Linux é criar um ambiente estável, Para alcançar esse objetivo, o RHEL implementa a compatibilidade de aplicativos no nível de APIs individuais e interfaces do kernel. Ao migrarmos para uma nova versão principal, geralmente existem diferenças significativas em nomes de pacotes, novas versões de bibliotecas e novos utilitários que podem causar dificuldades na execução de aplicativos existentes criados para a versão anterior. Os fornecedores de software podem seguir as diretrizes da Red Hat para criar executáveis para o Red Hat Enterprise. Linux 7 que funcionarão no Red Hat Enterprise Linux 8, mas trabalhar com pacotes é outra história. Um pacote de software criado para o Red Hat Enterprise. Linux A versão 7 não será compatível com o Red Hat Enterprise. Linux 8.
SQL Server 2017 no Red Hat Enterprise Linux O RHEL 7 utiliza Python 2 e OpenSSL 1.0. Os passos a seguir criarão um ambiente de trabalho compatível com esses dois componentes, que já foram migrados para versões mais recentes no RHEL 8 Beta. A Red Hat incluiu intencionalmente versões mais antigas para manter a compatibilidade com versões anteriores.
sudo yum install python2
sudo yum install compat-openssl10
Agora precisamos entender as configurações iniciais do python neste sistema. , mas não há /usr/bin/python no sistema por padrão. Precisamos tornar o python2 o interpretador padrão para que o SQL Server 2017 possa ver /usr/bin/python onde espera vê-lo. Para fazer isso você precisa executar o seguinte comando:
sudo alternatives —config python
Você será solicitado a selecionar sua versão do Python, após a qual será criado um link simbólico que persistirá após a atualização do sistema.
Existem três executáveis diferentes para trabalhar com python:
Selection Command
———————————————————————-
* 1 /usr/libexec/no-python
+ 2 /usr/bin/python2
3 /usr/bin/python3
Enter to keep the current selection[+], or type selection number:
Aqui você precisa selecionar a segunda opção, após a qual um link simbólico será criado de /usr/bin/python2 para /usr/bin/python.
Agora você pode continuar configurando o sistema para funcionar com o repositório de software Microsoft SQL Server 2017 usando o comando curl:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
Em seguida, você deve baixar os arquivos de instalação do SQL Server 2017 usando o novo recurso de download no yum. Você precisa fazer isso de forma que possa instalar sem precisar resolver dependências:
sudo yum download mssql-server
Agora vamos instalar o servidor sem resolver dependências usando o comando rpm:
sudo rpm -Uvh —nodeps mssql-server*rpm
Depois disso, você pode continuar com a instalação normal do SQL Server, conforme descrito no guia da Microsoft "Quick Start: Instalando o SQL Server e criando um banco de dados no Red Hat" da etapa 3:
3. После завершения установки пакета выполните команду mssql-conf setup и следуйте подсказкам для установки пароля системного администратора (SA) и выбора вашей версии.
sudo /opt/mssql/bin/mssql-conf setup
Após a conclusão da instalação, você pode verificar a versão do servidor SQL instalado usando o comando:
# yum list —installed | grep mssql-server
Suporta contêineres
Com o lançamento do SQL Server 2019, a instalação promete ficar ainda mais fácil, pois espera-se que esta versão esteja disponível no RHEL como um contêiner. O SQL Server 2019 já está disponível em versão beta. Para experimentá-lo no RHEL 8 Beta, você só precisa de três etapas:
Primeiro, vamos criar um diretório de banco de dados onde todos os nossos dados SQL serão armazenados. Para este exemplo usaremos o diretório /var/mssql.
sudo mkdir /var/mssql
sudo chmod 755 /var/mssql
Agora você precisa baixar o contêiner com SQL 2019 Beta do Microsoft Container Repository com o comando:
sudo podman pull mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Finalmente, você precisa configurar o servidor SQL. Neste caso, definiremos uma senha de administrador (SA) para um banco de dados chamado sql1 rodando nas portas 1401 - 1433.
sudo podman run -e 'ACCEPT_EULA=Y' -e
'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>'
—name 'sql1' -p 1401:1433 -v /var/mssql:/var/opt/mssql:Z -d
mcr.microsoft.com/mssql/rhel/server:2019-CTP2.2
Saiba mais sobre o Podman e os contêineres no Red Hat Enterprise. Linux A versão 8 Beta pode ser encontrada aqui.
Funciona para dois
Você pode tentar a combinação do RHEL 8 Beta e do SQL Server 2017 usando uma instalação tradicional ou instalando um aplicativo contêiner. De qualquer forma, agora você tem uma instância em execução do SQL Server à sua disposição e pode começar a preencher seu banco de dados ou explorar as ferramentas disponíveis no RHEL 8 Beta para criar uma pilha de aplicativos, automatizar o processo de configuração ou otimizar o desempenho.
No início de maio, não deixe de ouvir Bob Ward, arquiteto sênior do Microsoft Database Systems Group, falar no encontro onde discutiremos a implementação de uma plataforma de dados moderna baseada no SQL Server 2019 e no Red Hat Enterprise. Linux 8 Beta.
E no dia 8 de maio é esperado um lançamento oficial, abrindo o uso do SQL Server em aplicações reais.
Fonte: habr.com
