Тук ще ви покажа как да стартирате и стартирате SQL Server на вашия Mac за по-малко от половин час. И най-хубавото е, че SQL Server ще работи локално, без да се нуждаете от софтуер за виртуализация.
Преди SQL Server 2017, ако искате да стартирате SQL Server на вашия Mac, първо трябваше да създадете виртуална машина (използвайки VirtualBox, Parallels Desktop, VMware Fusion или Bootcamp), след това да инсталирате Windows на тази виртуална машина и накрая SQL Server . Това все още е валидна опция в зависимост от вашите изисквания (ето как да инсталирате SQL Server на Mac с VirtualBox, ако искате да изпробвате този метод).
Започвайки с SQL Server 2017, вече можете да инсталирате SQL Server директно на Linux машина. И тъй като macOS е базиран на Unix (а Linux е базиран на Unix), можете да стартирате SQL Server за Linux на вашия Mac. Начинът да направите това е да стартирате SQL Server на Docker.
Така че нека да продължим и да инсталираме Docker. След това ще изтеглим и инсталираме SQL Server.
Но първо... ако използвате Mac с чип M1, вижте Как да инсталирате SQL Server на M1 Mac (ARM64).
-
Инсталирайте Docker
Изтеглете (безплатното) Docker Community Edition за Mac (освен ако вече не сте го инсталирали във вашата система). Това ще ви позволи да стартирате SQL Server от Docker контейнер.
За да изтеглите, посетете страницата за изтегляне на Docker CE за Mac и щракнете върху Вземете Docker .
За да инсталирате, щракнете двукратно върху .dmg файл и след това плъзнете Docker.app икона към вашето Приложение папка.
Какво е Docker?
Docker е платформа, която позволява на софтуера да работи в собствена изолирана среда. SQL Server (от 2017 г.) може да се изпълнява на Docker в собствен изолиран контейнер. След като Docker бъде инсталиран, вие просто изтегляте — или „издърпвате“ — изображението на SQL Server на Linux Docker на вашия Mac, след което го стартирате като Docker контейнер. Този контейнер е изолирана среда, която съдържа всичко необходимо за изпълнение на SQL Server.
-
Стартирайте Docker
Стартирайте Docker по същия начин, по който бихте стартирали всяко друго приложение (напр. чрез папката Applications, Launchpad и т.н.).
Когато отворите Docker, може да бъдете подканени за вашата парола, за да може Docker да инсталира своите мрежови компоненти и връзки към приложенията на Docker. Продължете и предоставете паролата си, тъй като Docker се нуждае от това, за да работи.
-
Увеличете паметта (по избор)
По подразбиране Docker може да има 2GB памет, разпределена за него. SQL Server се нуждае от поне 2GB. Въпреки това, няма да навреди да го увеличите, ако можете.
В моя случай го увеличих до 4GB.
За да направите това, изберете Предпочитания от малката икона на Docker в горното меню:
След това в Ресурси> Разширени екран, плъзнете плъзгача на паметта до поне 4 GB:
След това завършете, като щракнете върху Прилагане и рестартиране
-
Изтеглете SQL Server
След като Docker е инсталиран, можем да изтеглим и инсталираме SQL Server за Linux.
Отворете прозорец на терминала и изпълнете следната команда.
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
Това изтегля най-новото изображение на SQL Server 2019 за Linux Docker на вашия компютър.
Можете също да проверите за най-новата версия на контейнера на уебсайта на Docker, ако желаете.
-
Стартирайте изображението на Docker
Изпълнете следната команда, за да стартирате копие на изображението на 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
Но разбира се, използвайте собственото си име и парола. Освен това, ако сте изтеглили различно изображение на Docker, заменете
mcr.microsoft.com/mssql/server:2019-latest
с този, който сте изтеглили.Ето обяснение на параметрите:
-d
Този незадължителен параметър стартира Docker контейнера в режим на демон. Това означава, че работи във фонов режим и не се нуждае от отворен собствен прозорец на терминала. Можете да пропуснете този параметър, за да може контейнерът да работи в собствен прозорец на терминала. --name sql_server_demo
Друг незадължителен параметър. Този параметър ви позволява да наименувате контейнера. Това може да е удобно, когато спирате и стартирате контейнера си от терминала. -e 'ACCEPT_EULA=Y'
Y
показва, че сте съгласни с EULA (Лицензионно споразумение с краен потребител). Това е необходимо, за да може SQL Server за Linux да работи на вашия Mac.-e 'SA_PASSWORD=reallyStrongPwd123'
Задължителен параметър, който задава sa
парола за база данни.-p 1433:1433
Това преобразува локалния порт 1433 към порт 1433 на контейнера. Това е TCP портът по подразбиране, който SQL Server използва за прослушване на връзки. mcr.microsoft.com/mssql/server:2019-latest
Това казва на Docker кое изображение да използва. Ако сте изтеглили друг, използвайте го вместо това. Сига на паролата
Ако получите следната грешка на тази стъпка, опитайте отново, но с по-силна парола.
Microsoft(R) SQL Server(R) setup failed with error code 1. Please check the setup log in /var/opt/mssql/log for more information.
Получих тази грешка при използване на
reallyStrongPwd
като парола (но, разбира се, не наистина силна парола!). Успях да преодолея това, като добавих няколко числа в края. Въпреки това, ако не беше само демонстрация, определено щях да я направя по-силна от няколко думи и числа в речника. -
Проверете контейнера на Docker (по избор)
Можете да въведете следната команда, за да проверите дали Docker контейнерът работи.
docker ps
Ако е стартиран и работи, трябва да върне нещо подобно:
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
-
Инсталирайте sql-cli (освен ако вече е инсталиран)
Изпълнете следната команда, за да инсталирате инструмента за команден ред sql-cli. Този инструмент ви позволява да изпълнявате заявки и други команди срещу вашия екземпляр на SQL Server.
npm install -g sql-cli
Това предполага, че имате инсталиран NodeJ. Ако не го направите, първо го изтеглете от Nodejs.org. Инсталирането на NodeJs автоматично ще инсталира npm което използваме в тази команда, за да инсталираме sql-cli.
Грешка в разрешенията?
Ако получите грешка и част от нея чете нещо като
Моля, опитайте да изпълните тази команда отново като root/администратор
, опитайте отново, но този път добаветеsudo
към вашата команда:sudo npm install -g sql-cli
-
Свържете се със SQL Server
Сега, когато sql-cli е инсталиран, можем да започнем да работим със SQL Server чрез прозореца на терминала на нашия Mac.
Свържете се със SQL Server с помощта на
mssql
команда, последвана от параметрите на потребителското име и паролата.mssql -u sa -p reallyStrongPwd123
Трябва да видите нещо подобно:
Connecting to localhost...done sql-cli version 0.6.0 Enter ".help" for usage hints. mssql>
Това означава, че успешно сте се свързали с вашия екземпляр на SQL Server.
-
Изпълнете бърз тест
Изпълнете бърз тест, за да проверите дали SQL Server работи и можете да го направите заявка.
Например, можете да изпълните следната команда, за да видите коя версия на SQL Server работите:
select @@version
Ако работи, трябва да видите нещо подобно (но разбира се, това ще зависи от версията, която използвате):
+--------------------+ | (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)
Ако видите съобщение като това, поздравления — SQL Server вече е готов и работи на вашия Mac!
Вече можете да продължите и да изпълнявате SQL заявки срещу SQL Server.
Вижте моя безплатен урок за SQL за начинаещи, за да започнете с писането на прости заявки към SQL Server.
GUI на SQL Server за вашия Mac – Azure Data Studio
Azure Data Studio (по-рано SQL Operations Studio) е безплатен инструмент за управление на GUI, който можете да използвате за управление на SQL Server на вашия Mac. Можете да го използвате за създаване и управление на бази данни, писане на заявки, архивиране и възстановяване на бази данни и други.
Azure Data Studio се предлага за Windows, Mac и Linux.
Ето някои статии/уроци, които съм написал за Azure Data Studio:
- Какво е Azure Data Studio
- Как да инсталирате Azure Data Studio на вашия Mac
- Как да създадете база данни с Azure Data Studio
- Как да възстановим база данни с Azure Data Studio на Mac
Друг безплатен GUI на SQL сървър – DBeaver
Друг GUI инструмент на SQL Server, който можете да използвате на вашия Mac (и Windows/Linux/Solaris), е DBeaver.
DBeaver е безплатен инструмент за управление на база данни с отворен код, който може да се използва в повечето системи за управление на бази данни (като MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, Microsoft Access, Teradata, Firebird, Derby и др. ).
Написах малко въведение в DBeaver или можете да отидете направо на страницата за изтегляне на DBeaver и да го изпробвате с новата си инсталация на SQL Server.
Ограничения на SQL Server за Linux/Mac
SQL Server за Linux има някои ограничения в сравнение с изданията на Windows (въпреки че това може да се промени с времето). Изданието на Linux не включва много от допълнителните услуги, които са налични в версията на Windows, като Analysis Services, Reporting Services и т.н. Ето списък на наличните и какво не в SQL Server 2017 за Linux и ето списъка на Microsoft с Издания и поддържани функции на SQL Server 2019 на Linux.
Друго ограничение е, че SQL Server Management Studio не е наличен за Mac или Linux. SSMS е пълноценно управление на GUI за SQL Server и предоставя много повече функции от Azure Data Studio и DBeaver (поне към момента на писане). Все още можете да използвате SSMS на машина с Windows, за да се свържете със SQL Server на машина с Linux или Mac, но просто не можете да го инсталирате локално на машината с Linux или Mac.
Ако имате нужда от някоя от функциите, които не се поддържат в SQL Server за Linux, ще ви трябва SQL Server за Windows. Въпреки това все още можете да стартирате SQL Server за Windows на вашия Mac, като използвате софтуер за виртуализация. Ето как да инсталирате SQL Server за Windows на Mac с помощта на VirtualBox.