GNU/Linux >> Linux の 問題 >  >> Linux

Linux または Docker 上の SQL Server とクロスプラットフォームの SQL Operations Studio

最近、SQL Server 2017 が Linux でも動作することを知らなかった人々に会いましたが、本当に知っておく必要がある .彼らは、単一の Windows デスクトップと、SQL Server を実行するために保持していた単一の Windows サーバーを持っていました。彼らは長い間 Linux ショップでしたが、現在は完全にコンテナー化されています... アンナの机の下にあるこのマシンを除いて. (次はクラウドだと思います...プロのヒント:重要なサーバーを机の下に置かないでください)。最初にライセンスを取得し、後でプラットフォームを決定することもできます.

いくつかの Linux フレーバーで SQL Server を実行できます...

  • Red Hat Enterprise Linux へのインストール
  • SUSE Linux Enterprise Server へのインストール
  • Ubuntu にインストール

または、さらに良いことに、Docker で実行します...

  • Docker で実行

もちろん、適切なボリューム マッピングを実行して、データベースを永続的なストレージに保持する必要があります。インストールなしで、Windows マシンのコンテナ内で完全な SQL Server をスピンアップできるようになることを切望しています。

私のラップトップには Docker for Windows があり、Shayne Boyer の "Docker Why" リポジトリを使用して要点を説明しています。 Linux 上の SQL Server を使用する Web フロントエンドとバックエンドの両方を含む彼のサンプル DockerCompose を見てください。

version: '3.0'
services:

mssql:
image: microsoft/mssql-server-linux:latest
container_name: db
ports:
- 1433:1433
volumes:
- /var/opt/mssql
# we copy our scripts onto the container
- ./sql:/usr/src/app
# bash will be executed from that path, our scripts folder
working_dir: /usr/src/app
# run the entrypoint.sh that will import the data AND sqlserver
command: sh -c ' chmod +x ./start.sh; ./start.sh & /opt/mssql/bin/sqlservr;'
environment:
ACCEPT_EULA: 'Y'
SA_PASSWORD: P@$$w0rdP@$$w0rd

サンプル データを使用してデータベースの初期設定を行い、次に sqlservr 自体を実行している開始コマンドに注意してください。 SQL Server on Linux Docker コンテナーには "sqlcmd" コマンド ラインが含まれているため、Windows で使用したのと同じコマンド ラインを使用して、データベースのセットアップや保守などを行うことができます。環境変数から SQL Server を構成することもできるため、Docker/Kubernetes 内で簡単に使用できます。数分で開始できます。

例:

/opt/mssql-tools/bin/sqlcmd -S localhost -d Names -U SA -P $SA_PASSWORD -I -Q "ALTER TABLE Names ADD ID UniqueIdentifier DEFAULT newid() NOT NULL;"

私は彼のレポを複製し (そして私は .NET Core 2.1 を持っています)、"docker-compose up" とブームを実行し、Alpine でフロント エンドを実行し、Linux で SQL Server でバックエンドを実行しました。

101→ C:\Users\scott> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e5b4dae93f6d namesweb "dotnet namesweb.dll" 38 minutes ago Up 38 minutes 0.0.0.0:57270->80/tcp, 0.0.0.0:44348->443/tcp src_namesweb_1
5ddffb76f9f9 microsoft/mssql-server-linux:latest "sh -c ' chmod +x ./…" 41 minutes ago Up 39 minutes 0.0.0.0:1433->1433/tcp mssql

コマンド ラインも優れていますが、SQL Server は Windows 用の優れた GUI である SQL Server Management Studio で知られています。 SQL Server on Linux をリリースした後、誰もが Windows を使用してそれを管理することを期待していたのでしょうか?いやいや!クロスプラットフォームでオープン ソースの SQL Operations Studio を確認してください。これは、「Windows、macOS、および Linux から SQL Server、Azure SQL DB、および SQL DW を操作できるようにするデータ管理ツール」です。ここから SQL Operations Studio を無料でダウンロードできます。

SQL Ops Studio は本当に素晴らしいです。ここでは、Windows ラップトップの Docker コンテナー内で実行されている Linux 上の SQL Server に対してクエリを実行しています。

クロスプラットフォーム SQL Server がどこまで到達したかを掘り下げて学習する中で、任意の SQL Server に対して SQL を開発および実行できる Visual Studio Code 用の mssql 拡張機能も調べました。 VS Code SQL Server 拡張機能もオープン ソースです!

https://github.com/Microsoft/mssql-docker で Docker の SQL Server を確認し、https://github.com/spboyer/docker-why で Shayne のサンプルを試してください

スポンサー: Intel® Distribution for Python を使用して、ビッグデータとビッグ サイエンス向けに Python をスケーリングします。ネイティブに近いコード速度。 NumPy、SciPy、scikit-learn で使用します。今日それを手に入れよう!


Linux
  1. Ansibleを使用してMicrosoftSQLServer2019をRedHatEnterpriseLinux8にデプロイする

  2. SQL Server Management Studio(SSMS)をセットアップして使用する

  3. Amazon Linux AMI での Docker のアップグレード

  1. PrometheusとGrafanaを使用してLinuxサーバーを監視する

  2. LinuxサーバーにDockerを使用してNextcloudをインストールする方法

  3. pyodbc を使用して Linux から Windows SQL Server への認証を行う

  1. Linuxサーバーのホスト名を変更する

  2. 管理 Linux サーバー

  3. Microsoft SQL Server for Linux (fedora) をインストールするにはどうすればよいですか?