
Jak pracuję z SQL Server na Mac OS X
Microsoft otwiera się co raz bardziej. Jakiś czas temu pisałem o NET. Core na MAC Używałem wtedy SQLite, ale fajnie by było użyć SQL Server. SQL Server na MAC OS.
Chcemy uruchomić SQL Server na MAC OS
Nie da się. No nie da się. Ale MAC OS to Unix. A Linux to prawie Unix 🙂 I jest SQL Server dla Linuxa. I mamy Dockera 🙂 I mamy obraz SQL Server dla Dockera. Dodajemy jeden do jednego, wychodzi nam cztery 😉 A jednak, instalujemy SQL Server na MAC OS
Mamy już zainstalowanego Dockera. Obraz SQL Server wymaga co najmniej 4 GB RAM, ustawiamy więc potrzebne rzeczy
ściągamy obraz SQL Server
docker pull microsoft/mssql-server-linux
I uruchamiamy nasz kontener
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=QAZwsxedc@!' -p 1433:1433 -d --name sql-server microsoft/mssql-server-linux
Co jest ważne?
Zmienne środowiskowe
Wszystkie zmienne środowiskowe mamy opisane tutaj. Musimy zaakceptować licencję
ACCEPT_EULA=Y
oraz podać MOCNE HASŁO
SA_PASSWORD=QAZwsxedc@!
Oczywiście tu możecie wpisać coś bardziej inteligentnego 🙂
I powinno działać.
Mamy SQL Server na localhost, słuchający na standardowym porcie 1433.
Działa?
Sprawdzamy czy nasz kontener działa. I jaki ma identyfikator. docker ps -a
Działa? Jeżeli tak, to świat stoi przed nami otworem.
Łączymy się z serwerem
Skorzystamy z konsolowego klienta sqlcmd zawartego w dystrybucji SQL Server. Uruchamiamy więc basha w dockerze
docker exec -it <container id> "bash"
i uruchamiamy sqlcmd /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'hasło SQL'
Teraz jesteśmy połączeni i możemy pracować z naszym serwerem SQL.
Działa
NET.Core rozwija się co raz bardziej. Pracujemy z nim przecież nie tylko na platformie Windows. Możemy, zamiast korzystać z serwerów Windows lub chmury Azure „postawić” sobie swój SQL Server w dockerze i pracować lokalnie.
Pisanie kodu, czy jakieś testy sprawiają teraz jeszcze mniej problemów. Nie potrzebujemy maszyn wirtualnych, serwerów w chmurach. Wszystko mamy u siebie i możemy pracować nawet na pustynii 😉