Início Rápido: Instalar o SQL Server e criar um banco de dados no Red Hat

Aplica-se a:SQL Server – Linux

Neste início rápido, você instala o SQL Server 2017 (14.x) no RHEL (Red Hat Enterprise Linux) 8.x. Em seguida, você pode se conectar ao sqlcmd para criar seu primeiro banco de dados e executar consultas.

Para obter mais informações sobre plataformas com suporte, confira as Notas sobre a versão do SQL Server 2017 no Linux.

Neste início rápido, você instala o SQL Server 2019 (15.x) no RHEL (Red Hat Enterprise Linux) 8.x. Em seguida, você pode se conectar ao sqlcmd para criar seu primeiro banco de dados e executar consultas.

Para obter mais informações sobre plataformas com suporte, confira as Notas sobre a versão do SQL Server 2019 no Linux.

Neste início rápido, você instala o SQL Server 2022 (16.x) no RHEL (Red Hat Enterprise Linux) 8.x. Em seguida, você pode se conectar ao sqlcmd para criar seu primeiro banco de dados e executar consultas.

Para obter mais informações sobre plataformas com suporte, confira as Notas sobre a versão do SQL Server 2022 (16.x) no Linux.

Dica

Este tutorial requer a entrada do usuário e uma conexão com a Internet. Se estiver interessado nos procedimentos de instalação autônoma ou offline, confira Diretrizes de instalação para o SQL Server em Linux. Se você optar por ter uma VM do SQL Server pré-instalada no RHEL pronta para executar sua carga de trabalho baseada em produção, siga as práticas recomendadas para criar a VM do SQL Server.

Imagens do Azure Marketplace

Você pode criar sua VM com base na seguinte imagem do Azure Marketplace:

Ao usar a imagem do marketplace acima, você evita a etapa de instalação e pode configurar diretamente a instância fornecendo o SKU e a senha do sa necessários para começar a usar o SQL Server. As VMs do SQL Server Azure implantadas no RHEL usando as imagens do Marketplace acima têm suporte total para Microsoft e Red Hat.

Você pode configurar SQL Server em Linux com mssql-conf usando o seguinte comando:

sudo /opt/mssql/bin/mssql-conf setup

Pré-requisitos

É necessário ter um computador RHEL 8.0 – 8.6 com no mínimo, 2 GB de memória.

Para instalar o Red Hat Enterprise Linux em seu próprio computador, acesse https://access.redhat.com/products/red-hat-enterprise-linux/evaluation. Também é possível criar máquinas virtuais RHEL no Azure. Confira Criar e gerenciar VMs do Linux com a CLI do Azure e use --image RHEL na chamada para az vm create.

Se você já tiver instalado uma versão CTP (Community Technology Preview) ou RC (Release Candidate) do SQL Server, será necessário remover primeiro o repositório antigo antes de seguir essas etapas. Para saber mais, confira Configurar repositórios do Linux para o SQL Server.

Para obter outros requisitos do sistema, confira Requisitos do sistema do SQL Server em Linux.

Instale o SQL Server

Os comandos a seguir para instalação do SQL Server apontam para o repositório do RHEL 8. O RHEL 8 não vem pré-instalado com o python2, que é exigido pelo SQL Server. Antes de começar as etapas de instalação do SQL Server, execute o comando e verifique se python2 está selecionado como o interpretador:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands:
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command:
sudo alternatives --config python

Para obter mais informações, consulte o seguinte blog sobre como instalar o python2 e configurá-lo como o interpretador padrão: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Para configurar o SQL Server no RHEL, execute os seguintes comandos em um terminal para instalar o pacote mssql-server:

  1. Baixe o arquivo de configuração do repositório do Red Hat do SQL Server 2017 (14.x):

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo
    

    Dica

    Se você quiser instalar uma versão diferente do SQL Server, confira as versões SQL Server 2019 (15.x) ou SQL Server 2022 (16.x) deste artigo.

  2. Execute o seguinte comando para instalar o SQL Server:

    sudo yum install -y mssql-server
    
  3. Após a conclusão da instalação do pacote, execute mssql-conf setup usando o caminho completo e siga os prompts para definir a senha SA e escolher sua edição. Como lembrete, as seguintes edições do SQL Server são licenciadas gratuitamente: Evaluation, Developer e Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Lembre-se de especificar uma senha forte para a conta SA. Você precisa de um comprimento mínimo de 8 caracteres, incluindo letras maiúsculas e minúsculas, dígitos de base 10 e/ou símbolos não alfanuméricos.

  4. Após concluir a configuração, verifique se o serviço está em execução:

    systemctl status mssql-server
    
  5. Para permitir conexões remotas, abra a porta do SQL Server no firewall no RHEL. A porta do SQL Server padrão é TCP 1433. Se você estiver usando FirewallD para o firewall, poderá usar os seguintes comandos:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

Neste momento, o SQL Server está em execução no seu computador RHEL e está pronto para uso!

Os comandos a seguir para instalação do SQL Server apontam para o repositório do RHEL 8. O RHEL 8 não vem pré-instalado com o python2, que é exigido pelo SQL Server. Antes de começar as etapas de instalação do SQL Server, execute o comando e verifique se python2 está selecionado como o interpretador:

sudo alternatives --config python
# If not configured, install python2 and openssl10 using the following commands:
sudo yum install python2
sudo yum install compat-openssl10
# Configure python2 as the default interpreter using this command:
sudo alternatives --config python

Para obter mais informações, consulte o seguinte blog sobre como instalar o python2 e configurá-lo como o interpretador padrão: https://www.redhat.com/en/blog/installing-microsoft-sql-server-red-hat-enterprise-linux-8-beta.

Para configurar o SQL Server no RHEL, execute os seguintes comandos em um terminal para instalar o pacote mssql-server:

  1. Baixe o arquivo de configuração do repositório do Red Hat do SQL Server 2019 (15.x):

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
    

    Dica

    Se você quiser instalar uma versão diferente do SQL Server, consulte as versões SQL Server 2017 (14.x) ou SQL Server 2022 (16.x) deste artigo.

  2. Execute o seguinte comando para instalar o SQL Server:

    sudo yum install -y mssql-server
    
  3. Após a conclusão da instalação do pacote, execute mssql-conf setup usando o caminho completo e siga os prompts para definir a senha SA e escolher sua edição. Como lembrete, as seguintes edições do SQL Server são licenciadas gratuitamente: Evaluation, Developer e Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Lembre-se de especificar uma senha forte para a conta SA. Você precisa de um comprimento mínimo de 8 caracteres, incluindo letras maiúsculas e minúsculas, dígitos de base 10 e/ou símbolos não alfanuméricos.

  4. Após concluir a configuração, verifique se o serviço está em execução:

    systemctl status mssql-server
    
  5. Para permitir conexões remotas, abra a porta do SQL Server no firewall no RHEL. A porta do SQL Server padrão é TCP 1433. Se você estiver usando FirewallD para o firewall, poderá usar os seguintes comandos:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

Neste momento, o SQL Server está em execução no seu computador RHEL e está pronto para uso!

Os comandos a seguir para instalação do SQL Server apontam para o repositório do RHEL 8.

Para configurar o SQL Server no RHEL, execute os seguintes comandos em um terminal para instalar o pacote mssql-server:

  1. Baixe o arquivo de configuração do repositório do Red Hat do SQL Server 2022 (16.x):

    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
    

    Dica

    Se você quiser instalar uma versão diferente do SQL Server, consulte as versões SQL Server 2017 (14.x) ou SQL Server 2019 (15.x) deste artigo.

  2. Execute o seguinte comando para instalar o SQL Server:

    sudo yum install -y mssql-server
    
  3. Após a conclusão da instalação do pacote, execute mssql-conf setup usando o caminho completo e siga os prompts para definir a senha SA e escolher sua edição. Como lembrete, as seguintes edições do SQL Server são licenciadas gratuitamente: Evaluation, Developer e Express.

    sudo /opt/mssql/bin/mssql-conf setup
    

    Lembre-se de especificar uma senha forte para a conta SA. Você precisa de um comprimento mínimo de 8 caracteres, incluindo letras maiúsculas e minúsculas, dígitos de base 10 e/ou símbolos não alfanuméricos.

  4. Após concluir a configuração, verifique se o serviço está em execução:

    systemctl status mssql-server
    
  5. Para permitir conexões remotas, abra a porta do SQL Server no firewall no RHEL. A porta do SQL Server padrão é TCP 1433. Se você estiver usando FirewallD para o firewall, poderá usar os seguintes comandos:

    sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
    sudo firewall-cmd --reload
    

Neste momento, o SQL Server está em execução no seu computador RHEL e está pronto para uso!

instalar as ferramentas de linha de comando SQL Server

Para criar um banco de dados, é necessário conectar-se a uma ferramenta que pode executar instruções Transact-SQL no SQL Server. As seguintes etapas instalam as ferramentas de linha de comando do SQL Server: sqlcmd e bcp.

  1. Baixe o arquivo de configuração do repositório do Red Hat.

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
    
  2. Se você tiver uma versão anterior do mssql-tools instalada, remova os pacotes unixODBC mais antigos.

    sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
    
  3. Execute os seguintes comandos para instalar mssql-tools com o pacote do desenvolvedor do unixODBC. Para obter mais informações, confira Instalar o Microsoft ODBC Driver for SQL Server (Linux).

    sudo yum install -y mssql-tools unixODBC-devel
    
  4. Para conveniência, adicione /opt/mssql-tools/bin/ à variável PATH de ambiente para tornar o sqlcmd ou bcp acessível no shell bash.

    Para sessões interativas, modifique a variável de ambiente PATH em seu arquivo ~/.bash_profile com o seguinte comando:

    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
    

    Para sessões não interativas, modifique a variável de ambiente PATH em seu arquivo ~/.bashrc com o seguinte comando:

    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
    source ~/.bashrc
    

Conectar-se localmente

As etapas a seguir usam o sqlcmd para conectar-se localmente à nova instância do SQL Server.

  1. Execute o sqlcmd com parâmetros para o nome do SQL Server (-S), o nome de usuário (-U) e a senha (-P). Neste tutorial, você está se conectando localmente, portanto, o nome do servidor é localhost. O nome de usuário é sa e a senha é a mesma fornecida para a conta SA durante a instalação.

    sqlcmd -S localhost -U sa -P '<YourPassword>'
    

    É possível omitir a senha na linha de comando para receber uma solicitação para inseri-la.

    Se depois você decidir se conectar remotamente, especifique o nome do computador ou endereço IP do parâmetro -S e verifique se a porta 1433 está aberta no firewall.

  2. Se isso funcionar, você será levado a um prompt de comando sqlcmd: 1>.

  3. Se houver uma falha de conexão, primeiro, tente diagnosticar o problema da mensagem de erro. Em seguida, examine as recomendações de solução de problemas de conexão.

Criar e consultar dados

As seções a seguir descrevem como usar o sqlcmd para criar um novo banco de dados, adicionar dados e executar uma consulta simples.

Para mais informações sobre como escrever consultas e instruções em Transact-SQL, veja Tutorial: Escrever instruções do Transact-SQL.

Criar um novo banco de dados

As etapas a seguir criam um novo banco de dados denominado TestDB.

  1. No prompt de comando sqlcmd, cole o seguinte comando Transact-SQL para criar um banco de dados de teste:

    CREATE DATABASE TestDB;
    
  2. Na próxima linha, grave uma consulta para retornar o nome de todos os bancos de dados do servidor:

    SELECT Name from sys.databases;
    
  3. Os dois comandos anteriores não foram executados imediatamente. Digite GO em uma nova linha para executar os comandos anteriores:

    GO
    

Inserir dados

Em seguida, crie uma nova tabela, dbo.Inventory, e insira duas novas linhas.

  1. No prompt de comando sqlcmd, altere o contexto para o novo banco de dados TestDB:

    USE TestDB;
    
  2. Criar nova tabela denominada dbo.Inventory:

    CREATE TABLE dbo.Inventory (
       id INT, name NVARCHAR(50),
       quantity INT
    );
    
  3. Inserir dados na nova tabela:

    INSERT INTO dbo.Inventory VALUES (1, 'banana', 150);
    INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);
    
  4. Digite GO para executar os comandos anteriores:

    GO
    

Selecionar dados

Agora, execute uma consulta para retornar da tabela dbo.Inventory.

  1. No prompt de comando sqlcmd, digite uma consulta que retorna linhas de tabela dbo.Inventory em que a quantidade é maior que 152:

    SELECT * FROM dbo.Inventory
    WHERE quantity > 152;
    
  2. Execute o comando:

    GO
    

Saia do prompt de comando sqlcmd

Para encerrar a sessão sqlcmd, digite QUIT:

QUIT

Práticas recomendadas de desempenho

Após instalar o SQL Server em Linux, examine as práticas recomendadas para configuração do Linux e do SQL Server a fim de melhorar o desempenho para cenários de produção. Para obter mais informações, confira Práticas recomendadas de desempenho e diretrizes de configuração do SQL Server em Linux.

Ferramentas de dados multiplataforma

Além de sqlcmd, você pode usar as seguintes ferramentas multiplataforma para gerenciar o SQL Server:

Ferramenta Descrição
Azure Data Studio Um utilitário de gerenciamento de banco de dados GUI multiplataforma.
Visual Studio Code Um editor de código GUI multiplataforma que executa instruções Transact-SQL com a extensão mssql.
PowerShell Core Uma ferramenta de automação e configuração multiplataforma baseada em cmdlets.
mssql-cli Uma interface de linha de comando multiplataforma para executar comandos Transact-SQL.

Conectando do Windows

As ferramentas do SQL Server no Windows se conectam às instâncias do SQL Server no Linux da mesma forma que se conectam a qualquer instância remota do SQL Server.

Se você tiver um computador Windows que pode se conectar a um computador Linux, tente as mesmas etapas deste tópico de um prompt de comando do Windows executando o sqlcmd. É necessário usar o nome de destino do computador Linux ou o endereço IP em vez do localhost e ter certeza de que a porta TCP 1433 está aberta no computador SQL Server. Se houver problemas ao se conectar do Windows, consulte recomendações de solução de problemas de conexão.

Para outras ferramentas que executam o Windows, mas se conectam ao SQL Server no Linux, consulte:

Outros cenários de implantação

Para outros cenários de instalação, veja os seguintes recursos:

Para obter respostas a perguntas frequentes, confira as Perguntas frequentes sobre o SQL Server em Linux.

Próximas etapas