Muito tem se falado sobre a Microsoft estar praticamente de mãos dadas com o mundo open source. Sabemos que o Linux sempre foi criticado pela Microsoft, que nós usuários do pinguim temos “sofrido” ao longo dos anos com os comentários dos “Engenheiros” megablasters certificados em algum produto da M$.
O $ colocado ao lado do M não é por vitimismo e sim por um reconhecimento de que a gigante do software proprietário está se rendendo aos encantos do open source e de uma comunidade unida que cresce cada vez mais. Se ela continuasse no modelo de negócio arcaico, perderia uma fatia lucrativa de mercado que reconhece o poder do software livre. Vendo isso, dentre outras “fraquezas” que temos presenciado alguns fatos interessantes, como a Microsoft ter disponibilizado uma versão do Powershell para Linux, ter se filiado à Linux Foundation, e recentemente nos ter presenteado (ou não) com uma versão do SQL Server para Linux, o SQL Server vNext CTP1. É sobre ele que iremos falar.
O SQL Server vNext CTP1 possui suporte para o Red Hat Enterprise Linux (mas nada impede que o você instale em seu CentOS 7, o que ocorreu com sucesso nos meus testes) e Ubuntu. Também está disponível na forma de uma imagem Docker para Linux ou Docker para Windows/Mac. O foco deste post é sobre como instalar o SQL Server vNext CTP1 no Linux.
Índice
1 – Exigências mínimas
- Red Hat Enterprise Linux 7.2 (Ou CentOS 7.2)
- Ubuntu 16.04
- Docker Engine (1.8 ou superior)
OBS: Você precisará de pelo menos 3.25GB de memória para executar o SQL Server. O máximo testado foi de 256GB de memória.
2 – Instalando no RHEL (Red Hat Enterprise Linux)
2.1 – Entre em modo super usuário
sudo su
2.2 – Download do arquivo de configuração do repositório
curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo
2.3 – Saia do modo de super usuário
exit
2.4 – Execute o comando abaixo para instalar o SQL Server
sudo yum install -y mssql-server
2.5 – Configurando o SQL Server
Após o processo de instalação terminar, execute o script abaixo e siga as informações mostradas na tela. Certifique-se de utilizar uma senha forte para a conta SA (mínimo de 8 caracteres, incluindo letras maiúsculas e minúsculas, bem como caracteres especiais):
sudo /opt/mssql/bin/sqlservr-setup
2.6 – Verificando o status do serviço
systemctl status mssql-server
2.7 – Instalando as ferramentas
Os passos seguintes instalam ferramentas de linha de comando, drivers Microsoft ODBC e outras dependências.
O pacote mssql-tools contém:
- sqlcmd: utilitário de consultas via linha de comando;
- bcp: utilitário de importação/exportação em massa.
2.7.1 – Entre em modo super usuário
sudo su
2.7.2 – Download do arquivo de configuração do repositório
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
2.7.3 – Saia do modo superusuário
exit
2.7.4 – Execute o seguinte comando para instalar o mssql-tools
sudo yum install mssql-tools
3 – Instalando no Ubuntu
Os passos abaixo mostrarão como instalar o SQL Server vNext CTP1 no Ubuntu 16.04.
3.1 – Importe o repositório de chaves GPG públicas
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
3.2 – Execute a sequência de comandos abaixo para instalar o SQL Server
sudo apt-get update
sudo apt-get install -y mssql-server
3.3 – Configurando o SQL Server
Após o processo de instalação terminar, execute o script abaixo e siga as informações mostradas na tela. Certifique-se de utilizar uma senha forte para a conta SA (mínimo de 8 caracteres, incluindo letras maiúsculas e minúsculas, bem como caracteres especiais):
sudo /opt/mssql/bin/sqlservr-setup
3.4 – Verificando o status do serviço
Quando a configuração terminar, verifique se o serviço está em execução:
systemctl status mssql-server
3.5 – Instalando as ferramentas
Os passos seguintes instalam ferramentas de linha de comando, drivers Microsoft ODBC e outras dependências.
O pacote mssql-tools contém:
- sqlcmd: utilitário de consultas via linha de comando;
- bcp: utilitário de importação/exportação em massa.
3.5.1 – Importe o repositório de chaves GPG públicas
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
3.5.2 – Registre o repositório da Microsoft no Ubuntu
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
3.5.3 – Atualize a lista de repositórios e execute o comando para instalação
sudo apt-get update
sudo apt-get install mssql-tools
4 – Qual cliente de SQL utilizar?
Você poderá utilizar os seguintes:
- SQL Server Management Studio – Funciona no Windows.
- HeidiSQL – Versão gratuíta para Windows que possui suporte ao SQL Server, MySQL e PostgreSQL.
- Dbeaver – O meu preferido. Ele funciona no Linux (pacotes .deb, .rpm e compiláveis), Windows e Mac OS X. Também possui suporte aos bancos SQL Server, MS Access (esse não é SGBD tá??), MySQL Server, MariaDB, PostgreSQL, DB2, Informix, Firebird, Ingres, Sybase e outros.
O SQL Server vNext CTP1 não possui os mesmos recursos da versão utilizada em larga escala. Várias características e serviços não são suportados, bem como a existência de limitações de recursos. Não é recomendado o seu uso em ambiente de produção. Utilize-o em uma máquina virtual.
(Nada impede que possamos utilizá-lo em ambiente de testes de uma empresa a fim de fazer as devidas comparações).
Visite os links abaixo para maiores informações:
Release Notes
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-release-notes
Limitações de segurança para o SQL Server no Linux
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-security-overview
Troubleshooting no SQL Server para Linux
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-troubleshooting-guide
Limitações e problemas com o SQL Server vNext CTṔ 1.0
https://msdn.microsoft.com/pt-br/library/mt788652.aspx
Espero que tenha gostado!
Abraços!
Fontes:
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-red-hat
https://docs.microsoft.com/pt-br/sql/linux/sql-server-linux-setup-ubuntu
https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools