Tutaj pokażę, jak uruchomić SQL Server na komputerze Mac w mniej niż pół godziny. A najlepsze jest to, że będziesz mieć SQL Server działający lokalnie, bez konieczności używania oprogramowania do wirtualizacji.
Przed SQL Server 2017, jeśli chciałeś uruchomić SQL Server na komputerze Mac, najpierw musiałeś utworzyć maszynę wirtualną (przy użyciu VirtualBox, Parallels Desktop, VMware Fusion lub Bootcamp), a następnie zainstalować system Windows na tej maszynie wirtualnej, a na końcu SQL Server . Jest to nadal ważna opcja w zależności od twoich wymagań (oto jak zainstalować SQL Server na komputerze Mac z VirtualBox, jeśli chcesz wypróbować tę metodę).
Począwszy od SQL Server 2017, możesz teraz zainstalować SQL Server bezpośrednio na komputerze z systemem Linux. A ponieważ macOS jest oparty na Uniksie (a Linux na Uniksie), możesz uruchomić SQL Server dla Linuksa na komputerze Mac. Sposobem na to jest uruchomienie SQL Server na Dockerze.
Więc śmiało zainstalujmy Dockera. Następnie pobierzemy i zainstalujemy SQL Server.
Ale najpierw… jeśli używasz komputera Mac z chipem M1, zobacz Jak zainstalować SQL Server na komputerze Mac M1 (ARM64).
-
Zainstaluj okno dokowane
Pobierz (bezpłatną) wersję Docker Community Edition dla komputerów Mac (chyba że masz ją już zainstalowaną w swoim systemie). Umożliwi to uruchomienie SQL Server z kontenera Docker.
Aby pobrać, odwiedź stronę pobierania Docker CE dla komputerów Mac i kliknij Pobierz Docker .
Aby zainstalować, kliknij dwukrotnie plik .dmg a następnie przeciągnij Docker.app ikonę do Twojej aplikacji folder.
Co to jest Docker?
Docker to platforma, która umożliwia uruchamianie oprogramowania we własnym izolowanym środowisku. SQL Server (od 2017 r.) można uruchomić na platformie Docker we własnym izolowanym kontenerze. Po zainstalowaniu platformy Docker wystarczy pobrać — lub „wyciągnąć” — program SQL Server w systemie Linux Docker Image na komputer Mac, a następnie uruchomić go jako kontener platformy Docker. Ten kontener to izolowane środowisko, które zawiera wszystko, czego SQL Server potrzebuje do działania.
-
Uruchom okno dokowane
Uruchom Dockera w taki sam sposób, w jaki uruchamiasz każdą inną aplikację (np. przez folder Aplikacje, Launchpad itp.).
Po otwarciu platformy Docker może zostać wyświetlony monit o podanie hasła, aby platforma Docker mogła zainstalować swoje składniki sieciowe i łącza do aplikacji platformy Docker. Śmiało i podaj swoje hasło, ponieważ Docker potrzebuje tego do uruchomienia.
-
Zwiększenie pamięci (opcjonalnie)
Domyślnie Docker może mieć przydzielone 2 GB pamięci. SQL Server potrzebuje co najmniej 2 GB. Jednak nie zaszkodzi jej zwiększyć, jeśli możesz.
W moim przypadku zwiększyłem go do 4 GB.
Aby to zrobić, wybierz Preferencje z małej ikony Dockera w górnym menu:
Następnie w Zasobach> Zaawansowane ekran, przesuń suwak pamięci do co najmniej 4 GB:
Następnie zakończ, klikając Zastosuj i uruchom ponownie
-
Pobierz serwer SQL
Teraz, gdy Docker jest zainstalowany, możemy pobrać i zainstalować SQL Server dla systemu Linux.
Otwórz okno Terminala i uruchom następujące polecenie.
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
Spowoduje to pobranie najnowszego obrazu platformy Docker programu SQL Server 2019 dla systemu Linux na komputer.
Jeśli chcesz, możesz również sprawdzić najnowszą wersję kontenera w witrynie Docker.
-
Uruchom obraz Dockera
Uruchom następujące polecenie, aby uruchomić instancję właśnie pobranego obrazu Docker:
docker run -d --name sql_server_demo -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=reallyStrongPwd123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest
Ale oczywiście użyj własnego imienia i hasła. Ponadto, jeśli pobrałeś inny obraz platformy Docker, zastąp
mcr.microsoft.com/mssql/server:2019-latest
z tym, który pobrałeś.Oto wyjaśnienie parametrów:
-d
Ten opcjonalny parametr uruchamia kontener Docker w trybie demona. Oznacza to, że działa w tle i nie potrzebuje otwartego własnego okna Terminala. Możesz pominąć ten parametr, aby kontener działał we własnym oknie Terminala. --name sql_server_demo
Kolejny opcjonalny parametr. Ten parametr umożliwia nazwanie kontenera. Może to być przydatne podczas zatrzymywania i uruchamiania kontenera z terminala. -e 'ACCEPT_EULA=Y'
Y
pokazuje, że zgadzasz się z umową EULA (Umowa licencyjna użytkownika końcowego). Jest to wymagane, aby SQL Server dla systemu Linux działał na komputerze Mac.-e 'SA_PASSWORD=reallyStrongPwd123'
Wymagany parametr, który ustawia sa
hasło do bazy danych.-p 1433:1433
To mapuje lokalny port 1433 na port 1433 w kontenerze. Jest to domyślny port TCP, którego SQL Server używa do nasłuchiwania połączeń. mcr.microsoft.com/mssql/server:2019-latest
To mówi Dockerowi, którego obrazu użyć. Jeśli pobrałeś inny, użyj go zamiast tego. Siła hasła
Jeśli na tym etapie pojawi się następujący błąd, spróbuj ponownie, ale z silniejszym hasłem.
Microsoft(R) SQL Server(R) setup failed with error code 1. Please check the setup log in /var/opt/mssql/log for more information.
Otrzymałem ten błąd podczas używania
reallyStrongPwd
jako hasło (ale oczywiście nie) naprawdę silne hasło!). Udało mi się to przezwyciężyć, dodając na koniec kilka liczb. Jednakże, gdyby to nie było tylko demo, zdecydowanie uczyniłbym je silniejszymi niż kilka słów i liczb ze słownika. -
Sprawdź kontener Docker (opcjonalnie)
Możesz wpisać następujące polecenie, aby sprawdzić, czy kontener Docker jest uruchomiony.
docker ps
Jeśli jest już uruchomiony, powinien zwrócić coś takiego:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4e4aa21eb391 mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/sqls…" 23 seconds ago Up 21 seconds 0.0.0.0:1433->1433/tcp sql_server_demo
-
Zainstaluj sql-cli (chyba że jest już zainstalowany)
Uruchom następujące polecenie, aby zainstalować narzędzie wiersza poleceń sql-cli. To narzędzie umożliwia uruchamianie zapytań i innych poleceń na Twojej instancji SQL Server.
npm install -g sql-cli
Zakłada się, że masz zainstalowane NodeJs. Jeśli nie, pobierz go najpierw z Nodejs.org. Instalacja NodeJs spowoduje automatyczną instalację npm czego używamy w tym poleceniu, aby zainstalować sql-cli.
Błąd uprawnień?
Jeśli pojawi się błąd, a jego część brzmi mniej więcej w stylu
Spróbuj ponownie uruchomić to polecenie jako root/administrator
, spróbuj ponownie, ale tym razem dodajsudo
na twoje polecenie:sudo npm install -g sql-cli
-
Połącz z serwerem SQL
Teraz, gdy sql-cli jest zainstalowane, możemy rozpocząć pracę z SQL Server za pomocą okna Terminal na naszym Macu.
Połącz się z SQL Server za pomocą
mssql
polecenie, a następnie parametry nazwy użytkownika i hasła.mssql -u sa -p reallyStrongPwd123
Powinieneś zobaczyć coś takiego:
Connecting to localhost...done sql-cli version 0.6.0 Enter ".help" for usage hints. mssql>
Oznacza to, że udało Ci się połączyć z instancją SQL Server.
-
Przeprowadź szybki test
Uruchom szybki test, aby sprawdzić, czy SQL Server jest uruchomiony i czy możesz wysłać do niego zapytanie.
Na przykład możesz uruchomić następujące polecenie, aby zobaczyć, która wersja SQL Server jest uruchomiona:
select @@version
Jeśli jest uruchomiony, powinieneś zobaczyć coś takiego (ale oczywiście będzie to zależeć od używanej wersji):
+--------------------+ | (No column name) | |--------------------| | Microsoft SQL Server 2019 (RTM-CU3) (KB4538853) - 15.0.4023.6 (X64) Mar 4 2020 00:59:26 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 18.04.4 LTS) | +--------------------+ (1 row affected)
Jeśli zobaczysz taki komunikat, gratulacje — SQL Server jest już uruchomiony na Twoim Macu!
Możesz teraz śmiało uruchamiać zapytania SQL na serwerze SQL.
Zobacz mój darmowy samouczek SQL dla początkujących, aby rozpocząć pisanie prostych zapytań w SQL Server.
GUI SQL Server dla komputera Mac — Azure Data Studio
Azure Data Studio (dawniej SQL Operations Studio) to bezpłatne narzędzie do zarządzania z graficznym interfejsem użytkownika, którego można używać do zarządzania programem SQL Server na komputerze Mac. Możesz go używać do tworzenia baz danych i zarządzania nimi, pisania zapytań, tworzenia kopii zapasowych i przywracania baz danych i nie tylko.
Azure Data Studio jest dostępne w systemach Windows, Mac i Linux.
Oto kilka artykułów/samouczków, które napisałem dla Azure Data Studio:
- Co to jest Azure Data Studio
- Jak zainstalować Azure Data Studio na komputerze Mac
- Jak utworzyć bazę danych za pomocą Azure Data Studio
- Jak przywrócić bazę danych za pomocą Azure Data Studio na komputerze Mac
Kolejny darmowy graficzny interfejs użytkownika serwera SQL — DBeaver
Innym narzędziem graficznym SQL Server, którego można używać na komputerze Mac (i Windows/Linux/Solaris) jest DBeaver.
DBeaver to bezpłatne narzędzie do zarządzania bazami danych typu open source, którego można używać w większości systemów zarządzania bazami danych (takich jak MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, Microsoft Access, Teradata, Firebird, Derby i innych ).
Napisałem małe wprowadzenie do DBeaver, możesz też przejść bezpośrednio do strony pobierania DBeaver i wypróbować ją z nową instalacją SQL Server.
Ograniczenia SQL Server dla Linux/Mac
SQL Server dla systemu Linux ma pewne ograniczenia w porównaniu z wersjami systemu Windows (chociaż może się to zmienić z biegiem czasu). Wersja Linux nie zawiera wielu dodatkowych usług, które są dostępne w wersji Windows, takich jak Analysis Services, Reporting Services itp. Oto lista dostępnych i niedostępnych usług SQL Server 2017 dla systemu Linux oraz lista Microsoft Wersje i obsługiwane funkcje SQL Server 2019 w systemie Linux.
Innym ograniczeniem jest to, że program SQL Server Management Studio nie jest dostępny na komputerach Mac ani Linux. SSMS to w pełni rozwinięte zarządzanie GUI dla SQL Server i zapewnia znacznie więcej funkcji niż Azure Data Studio i DBeaver (przynajmniej w momencie pisania). Nadal możesz używać SSMS na komputerze z systemem Windows, aby połączyć się z SQL Server na komputerze z systemem Linux lub Mac, ale po prostu nie możesz zainstalować go lokalnie na komputerze z systemem Linux lub Mac.
Jeśli potrzebujesz jakiejkolwiek funkcji nieobsługiwanej w programie SQL Server dla systemu Linux, będziesz potrzebować programu SQL Server dla systemu Windows. Jednak nadal możesz uruchomić program SQL Server dla systemu Windows na komputerze Mac, korzystając z oprogramowania do wirtualizacji. Oto jak zainstalować SQL Server dla Windows na Macu za pomocą VirtualBox.