回答:
以下で概説するアプローチは確かに試すことができますが、誰かがうまく試したかどうかはわかりません。
他の方法が機能するかどうかはわかりませんが、実際にMicrosoft Windows Serverのライセンスに依存していることを覚えていることから、人々はMS SQL Serverを修正できます。このSQLServerの上にはかなりひどいリソースが消費されるため、通常、組織は独自のクラスターまたはサーバー上の他のアプリケーションと一緒に実行しないようにします。
私が疑問に思うことの1つは、Sybaseをバックエンドとして試してみませんか?LinuxからSQLServerおよびSybaseへの接続はを通過できますがFreeTDS
、これはクライアントソフトウェアと同じように見えます。
はい、2016年11月の終わりあたりとして、そしてごとにdocs.microsoft.com、あなたがUbuntuの16.04(上のSQLサーバーvNext CTP1のパブリックプレビューをインストールすることができ14.04上の作業は、OpenSSLのパッケージが古くなっていないため、とのdoesn OpenSSLパッケージが新しすぎるため、19.04では機能しません):
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
以降
sudo /opt/mssql/bin/mssql-conf setup
それを削除するには
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-Serverは次の方法で停止できます。
systemctl stop mssql-server
ステータスを確認するには:
systemctl status mssql-server
起動時にsql-serverを起動するには:
systemctl enable mssql-server
起動時にSQL-Server-startを無効にするには:
systemctl disable mssql-server
コマンドラインツールも必要な場合
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-port)を永続的に開くには
iptables -A INPUT -p tcp --dport 1433 -j ACCEPT
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
またはufwを使用している場合は、lessと入力して同じことを行うことができます
ufw allow 1433/tcp
ファイアウォールの持続性とこれも参照してください
Red Hat(ファイアウォール)の場合:
firewall-cmd --add-port=1433/tcp --permanent
firewall-cmd --reload
コマンドラインツールを使用したくない場合は、WindowsラップトップからSSMSに接続できます。
ディストリビューションでsql-serverを使用できない場合(opensslが古すぎる/ opensslが新しすぎる/ディストリビューションがサポートされていない場合)、常に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
これは、Dockerをインストールし、インターネットから最新のSQL-Server-2017 docker-linux-imageをプルし、コンテナーのポート1433をホストのポート2017にマップし、ライセンスを "Developer"に設定し、sa-PasswordをTOP_SECRETおよびまた、コンテナの/ var / opt / mssqlをホストの/ var / opt / mssqlにマップします。でフォルダを作成する必要があるかもしれませんmkdir -p /var/opt/mssql
。
そこから、でコンテナを開始し、でコンテナをdocker start mssql_2017
停止できますdocker stop mssql_2017
。
Linuxでsql-serverをグラフィカルに操作するには、AzureDataStudioを使用し、githubページからdeb-packageをダウンロードして、次のようにインストールします。sudo dpkg -i azuredatastudio-linux-1.12.2.deb
sqlcmd
mssql-tools askubuntu.com/a/870928/8151の