Как подключить SQL Server на Mac
3 ответа
Если вы используете Docker, вы можете получить образ SQL Server и запустить его локально. Это позволяет вам подключаться к вашему экземпляру SQL Server с помощью Azure Data Studio.
Сначала потяните изображение
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
Затем запустите его
sudo docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=YourStrong!Passw0rd' \
-p 1433:1433 --name sql1 \
-d mcr.microsoft.com/mssql/server:2017-latest
Примечание: "Пароль должен содержать не менее 8 символов и содержать символы из трех из следующих четырех наборов: заглавные буквы, строчные буквы, начальные 10 цифр и символы" Это важно! SQL Server не запустится иначе.
Проверьте, работает ли он
docker ps -a
Вы увидите столбец статуса, сообщающий, как давно он
Наконец, откройте Azure Data Studio, вставьте эти значения и нажмите "Подключиться":
- Сервер: localhost
- Имя пользователя: sa
- Пароль: пароль, который вы использовали в Шаге 2
- Тип аутентификации: выберите SQL Login
- Перейти к Advanced
- Порт: 1433
Надеюсь это поможет.
Для тех, кто задает этот вопрос, да, вы действительно можете войти в Azure Data Studio со встроенной аутентификацией с Mac. Если ваш Mac присоединен к домену, он будет работать без сбоев. если нет, следуйте ясному и лаконичному методу этого парня, чтобы заставить его работать. https://port1433.com/2019/04/04/using-ad-authentication-in-azure-data-studio-on-a-non-windows-non-domain-machine/
Вы не можете войти с Windows Authentication через Mac. Проверка подлинности Windows - это проверка подлинности Windows. Когда вы пытаетесь соединить SQL-сервер с аутентификацией Windows через Mac, Data Studio пытается использовать ваш журнал Mac в свойствах, и он не может совпадать с сервером Windows, к которому вы хотите подключиться. Если вы хотите войти в SQL-сервер через Mac с помощью Data Studio, вам нужно знать пользователя SQL-сервера и его пароль.
Даже я получал ту же ошибку с Azure Data Studio. Это происходит, потому что вам нужно, чтобы Docker работал вместе с Azure Data Studio. Согласно вашему сообщению, я не уверен, что вы установили докер или ваш докер работает в фоновом режиме, пока вы пытаетесь подключиться к серверу (если докер уже установлен).
Чтобы подключиться к серверу, вам необходимо перейти в настройки вашего Docker и увеличить выделение памяти со значения по умолчанию 2 ГБ до минимум 4 ГБ (поскольку серверу SQL требуется минимум 3,25 ГБ места). Сохраните и перезапустите докер.
После перезапуска все, что вам нужно сделать, это вытащить образ докера сервера sql и загрузить его. это можно сделать с помощью следующих команд на вашем терминале. К вашему сведению, я использую команды bash ниже:
Команда 1:
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
Будет извлечен и загружен последний образ докера версии. После этого вам необходимо настроить аутентификацию SQL на сервере для вашей базы данных. Следуйте нижеприведенным командам:
Команда 2:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<SetYourPasswordHere>' \
-p 1433:1433 --name sql1 \
-d mcr.microsoft.com/mssql/server:2017-latest
Это устанавливает ваш пароль и использует порт 1433 для SQL-сервера (который является портом по умолчанию). Чтобы убедиться, что образ был создан и SQL-сервер запущен в докере, выполните приведенную ниже команду, чтобы проверить журналы.
Команда 3:
docker ps
Чтобы проверить все экземпляры в вашей истории докеров (т.е. если у вас уже были установлены докеры до того, как вы попытаетесь выполнить это соединение / выполнение SQL), выполните следующую команду, и она предоставит вам все журналы всех созданных вами экземпляров.
Команда 4:
docker ps -a
или
docker ps -all
После того, как вы выполнили вышеуказанные шаги и увидели, что докер создал экземпляр SQL, вам нужно перейти в Azure Data Studio и установить указанные ниже учетные данные для доступа к серверу, который вы только что создали выше, с помощью Docker.
Server: localhost
Authentication Type: SQL Authentication
Username: sa
Password: <Check Command 2 to see what you entered in the password where it says SetYourPasswordHere>
Надеюсь, это поможет в ваших попытках запустить SQL-сервер на вашем MAC. Всего наилучшего!
На скриншоте кажется, что вы пытаетесь подключиться к локальной машине.
Убедитесь, что вы успешно установили SQL Server на свой локальный компьютер. Локальный порт 1433 должен прослушиваться процессом SQL Server.
Ошибка:
A network-related or instance-specific error occurred while establishing a connection to SQL Server
Означает, что вы не можете подключиться к целевой машине. Дело не в том, что вы подключаетесь с неправильным ключом или режимом аутентификации.
Конечно, вы не можете использовать встроенную проверку подлинности Windows в Mac. Попробуйте связаться с человеком, который подготовил ваш экземпляр SQL Server и получить его пароль.