GNU/Linux >> Belajar Linux >  >> Linux

SQL Server di Linux atau di Docker plus SQL Operations Studio lintas platform

Baru-baru ini saya bertemu dengan beberapa orang yang tidak tahu bahwa SQL Server 2017 juga berjalan di Linux tetapi mereka benar-benar perlu tahu . Mereka memiliki satu desktop Windows dan satu Windows Server yang mereka simpan untuk menjalankan SQL Server. Mereka telah lama menjadi toko Linux dan sekarang sepenuhnya dikemas...kecuali untuk mesin ini di bawah meja Anna. (Saya berasumsi The Cloud adalah yang berikutnya ... tip pro:Jangan memiliki server penting di bawah meja Anda). Anda bahkan bisa mendapatkan lisensi terlebih dahulu dan memutuskan platformnya nanti.

Anda dapat menjalankan SQL Server pada beberapa rasa Linux...

  • Instal di Red Hat Enterprise Linux
  • Instal di SUSE Linux Enterprise Server
  • Instal di Ubuntu

atau, lebih baik lagi, jalankan di Docker...

  • Jalankan di Docker

Tentu saja Anda ingin melakukan pemetaan volume yang sesuai untuk menjaga database Anda pada penyimpanan yang tahan lama. Saya sedang menggali untuk dapat menjalankan SQL Server lengkap di dalam wadah di mesin Windows saya tanpa menginstal.

Saya memiliki Docker untuk Windows di laptop saya dan saya menggunakan repo "Docker Why" Shayne Boyer untuk menjelaskan maksudnya. Lihat contoh DockerCompose-nya yang menyertakan frontend web dan backend menggunakan SQL Server di Linux.

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

Perhatikan perintah awalnya di mana dia melakukan populasi awal database dengan data sampel, lalu menjalankan sqlservr itu sendiri. Wadah SQL Server di Linux Docker menyertakan baris perintah "sqlcmd" sehingga Anda dapat mengatur database, memeliharanya, dll dengan baris perintah yang sama yang Anda gunakan di Windows. Anda juga dapat mengonfigurasi SQL Server dari Variabel Lingkungan sehingga membuatnya mudah digunakan di dalam Docker/Kubernetes. Hanya perlu beberapa menit untuk memulai.

Contoh:

/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;"

Saya mengkloning reponya (dan saya memiliki .NET Core 2.1) dan melakukan "docker-compose up" dan boom, menjalankan front end di bawah Alpine dan backend dengan SQL Server di Linux.

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

Baris perintah bagus, tetapi SQL Server dikenal dengan SQL Server Management Studio, GUI yang bagus untuk Windows. Apakah mereka merilis SQL Server di Linux dan kemudian mengharapkan semua orang menggunakan Windows untuk mengelolanya? Saya katakan tidak tidak! Lihat SQL Operations Studio lintas platform dan open source, "alat manajemen data yang memungkinkan bekerja dengan SQL Server, Azure SQL DB, dan SQL DW dari Windows, macOS, dan Linux." Anda dapat mengunduh SQL Operations Studio gratis di sini.

SQL Ops Studio benar-benar mengesankan. Di sini saya menanyakan SQL Server di Linux yang berjalan di dalam wadah Docker saya di laptop Windows saya.

Saat saya menggali dan mempelajari seberapa jauh SQL Server lintas platform telah datang, saya juga memeriksa ekstensi mssql untuk Visual Studio Code yang memungkinkan Anda mengembangkan dan menjalankan SQL terhadap SQL Server apa pun. Ekstensi VS Code SQL Server juga open source!

Periksa SQL Server di Docker di https://github.com/Microsoft/mssql-docker dan coba sampel Shayne di https://github.com/spboyer/docker-why

Sponsor: Skalakan Python Anda untuk data besar &sains besar dengan Distribusi Intel® untuk Python. Kecepatan kode hampir asli. Gunakan dengan NumPy, SciPy &scikit-belajar. Dapatkan Hari Ini!


Linux
  1. Cara Menginstal Nextcloud dengan Docker di Server Linux Anda

  2. Ubah nama host server Linux

  3. Menyiapkan dan menggunakan SQL Server Management Studio (SSMS)

  1. Administrasi Server Linux

  2. Linux python3 - Tidak dapat membuka lib 'SQL Server'

  3. Apakah Sql Server Express tersedia untuk produksi di Linux?

  1. Menggunakan Ansible untuk menyebarkan Microsoft SQL Server 2019 di Red Hat Enterprise Linux 8

  2. Pantau server linux menggunakan Prometheus dan Grafana

  3. Bagaimana cara menginstal Microsoft SQL Server untuk linux (fedora)?