Sim, no final de novembro de 2016 e no docs.microsoft.com , você pode instalar a visualização pública do sql-server vNext CTP1 no Ubuntu 16.04 (não funciona no 14.04 porque o pacote OpenSSL está desatualizado e não funciona no 19.04 porque o pacote OpenSSL é muito novo):
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
sudo apt-get update
sudo apt-get install -y mssql-server
sudo /opt/mssql/bin/sqlservr-setup
ou mais recente
sudo /opt/mssql/bin/mssql-conf setup
Para removê-lo
sudo apt-get remove --purge mssql-server
Para remover os bancos de dados gerados
sudo rm -rf /var/opt/mssql/
Se você deseja verificar se funciona ou não, não se esqueça de desligar o firewall
iptables -F
iptables -P INPUT ACCEPT
Você pode iniciar o SQL-Server com:
systemctl start mssql-server
Você pode parar o SQL-Server com:
systemctl stop mssql-server
Para ver seu status:
systemctl status mssql-server
Para iniciar o sql-server no momento da inicialização:
systemctl enable mssql-server
Para desativar o SQL-Server-start no momento da inicialização:
systemctl disable mssql-server
E se você também quiser as ferramentas de linha de comando
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
sudo apt-get update
sudo apt-get install mssql-tools
Para testá-lo
sqlcmd -S localhost -U SA -P 'YourPasswordHere'
CREATE DATABASE contoso
exit
E para abrir permanentemente a porta 1433 (porta padrão do servidor sql)
iptables -A INPUT -p tcp --dport 1433 -j ACCEPT
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
ou, se você usa o ufw, pode fazer o mesmo digitando menos com
ufw allow 1433/tcp
Veja também persistência de firewall e isso
Para o Red Hat (firewalld):
firewall-cmd --add-port=1433/tcp --permanent
firewall-cmd --reload
Se você não quiser trabalhar com ferramentas de linha de comando, poderá conectar-se ao SSMS a partir de um laptop Windows.
Se você não puder usar o sql-server na sua distribuição (openssl muito antigo / openssl muito novo / distribuição não suportada), poderá sempre usar a imagem do docker:
sudo apt-get install docker.io
docker pull mcr.microsoft.com/mssql/server:2017-latest
docker run -d -p 2017:1433 --name mssql_2017 -e MSSQL_SA_PASSWORD =TOP_SECRET -e ACCEPT_EULA=Y -e MSSQL_PID="Developer" -v /var/opt/mssql:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
que instala a janela de encaixe, puxa a imagem de encaixe-linux-imagem mais recente do SQL-Server-2017 da Internet e mapeia a porta 1433 no contêiner para a porta 2017 no host e define a licença para "Desenvolvedor", a sa-Password para TOP_SECRET e Ele também mapeia / var / opt / mssql no contêiner para / var / opt / mssql no host. Você pode ter que criar essa pasta com mkdir -p /var/opt/mssql
.
A partir daí, você pode iniciar o contêiner docker start mssql_2017
e interromper o contêiner docker stop mssql_2017
.
Para trabalhar graficamente com o sql-server no Linux, você pode usar o AzureDataStudio , baixar o pacote deb da página do github e instalá-lo comsudo dpkg -i azuredatastudio-linux-1.12.2.deb