Моя компания разрабатывает программное обеспечение с двумя сторонами: клиентом и сервером. Я установил Microsoft SQL Server в Windows и запускаю клиентскую часть на Ubuntu с некоторой конфигурацией.
Но мне интересно: есть ли способ запустить Ubuntu в качестве сервера и установить SQL Server на это?
Вы можете, конечно, попробовать подход, который я опишу ниже, но я не знаю, успешно ли он его пробовал.
Установите программное обеспечение для виртуализации на вашей машине Ubuntu (VMWare, Xen, VirtualBox). Установите Microsoft Windows Server на виртуальной машине. Установите MS SQL Server на недавно установленный Windows Server.Я не знаю, будет ли какой-либо другой способ работать, но люди могут исправить меня MS SQL Server из того, что я помню, фактически полагаясь на Лицензирование для Microsoft Windows Server. В дополнение к этому SQLServer - довольно плохой ресурс, так что обычно организации пытаются отделить его от работы с любыми другими приложениями на своем собственном кластере или сервере.
Одна вещь, которую я бы поставил под сомнение, - это почему бы не попробовать Sybase as бэкэнд? Связь между Linux и SQLServer и Sybase может проходить через FreeTDS, который будет выглядеть идентично вашему клиентскому программному обеспечению.
ПРЕДУПРЕЖДЕНИЕ: EMBRACE - EXTEND - DROP ?
Да, по состоянию на конец ноября 2016 года и согласно ПРЕДУПРЕЖДЕНИЕ: EMBRACE - EXTEND - DROP ?? [!d1 ], вы можете установить публичный предварительный просмотр sql-сервера vNext CTP1 на Ubuntu 16.04 (не работает с 14.04, потому что пакет OpenSSL устарел):
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
или новее
[ f2]Чтобы удалить его
sudo apt-get remove --purge mssql-server
Чтобы удалить сгенерированные базы данных
sudo rm -rf /var/opt/mssql/
Если вы хотите проверить, работает ли это или нет, не забудьте выключить брандмауэр
iptables -F
iptables -P INPUT ACCEPT
Вы можете запустить SQL-Server с помощью:
systemctl start mssql-server
Вы можете остановить SQL-сервер с помощью:
systemctl stop mssql-server
Чтобы увидеть его статус:
systemctl status mssql-server
Чтобы запустить sql-сервер во время загрузки:
systemctl enable mssql-server
Чтобы отключить запуск SQL-Server во время загрузки:
[ f10]И если вам также нужны инструменты командной строки
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
Чтобы проверить его
sqlcmd -S localhost -U SA -P 'YourPasswordHere'
CREATE DATABASE contoso
exit
И навсегда открыть порт 1433 (sql-server default- порт)
iptables -A INPUT -p tcp --dport 1433 -j ACCEPT
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
, или если вы используете ufw, вы можете сделать то же самое, набрав меньшее значение с помощью
ufw allow 1433/tcp
См. lso инструменты командной строки и этот
для Red Hat (firewalld):
firewall-cmd --add-port=1433/tcp --permanent
firewall-cmd --reload
Если вы не хотите работать с командной строкой инструменты, вы можете подключиться к SSMS с ноутбука Windows.