Як підключити контейнер Docker Microsoft SQL Server до Azure Data Studio

У цьому посібнику показано, як за допомогою Docker витягнути образ сервера MSSQL та запустити його. Azure Data Studio - це міжплатформенний інструмент бази даних, який буде використовуватися для підключення нашого контейнера Docker до MSSQL та виконання операторів SQL.

Наприкінці я покажу вам, як імпортувати базу даних у файлову систему Docker, щоб ви могли отримати до неї доступ через Azure Data Studio.

Ознайомтеся з іншими відповідними путівниками тут:

  • Як підключити AWS RDS Microsoft SQL Server за допомогою Azure Data Studio
  • Як імпортувати зразок бази даних до вашого AWS RDS Microsoft SQL Server за допомогою S3

Ми торкнемося технологій, показаних нижче:

  • База даних: Microsoft SQL Server
  • Контейнер для витягування mssql-server-demo: Docker
  • Інсталятор для mssql-cli: Node.js (середовище виконання) / Node Package Manager (NPM)
  • Інструмент бази даних та графічний інтерфейс: Azure Data Studio

Створення нашого середовища за допомогою Docker

Встановлення Docker

Повне керівництво для цієї частини тут:

  1. Завантажте Docker CE (Community Edition) для Mac тут.
  2. Щоб встановити, двічі клацніть файл .dmg, а потім перетягніть піктограму програми Docker у папку Програма.

Що таке Docker?

Docker - це платформа, яка дозволяє програмному забезпеченню працювати у власному ізольованому середовищі. SQL Server (з 2017 року) можна запускати на Docker у власному ізольованому контейнері.

Після встановлення Docker ви просто завантажуєте (або «витягуєте») образ SQL Server на Linux Docker на ваш Mac, а потім запускаєте його як контейнер Docker. Цей контейнер є ізольованим середовищем, яке містить усе необхідне для запуску SQL Server.

Запустіть Docker

Відкрийте програму Docker, вона повинна знаходитися в папці Applications.

Збільште пам’ять

За замовчуванням у Docker буде виділено 2 ГБ пам'яті. SQL Server потребує принаймні 3,25 ГБ. Щоб перестрахуватися, збільште його до 4 ГБ, якщо зможете. Оскільки це лише дитячий майданчик, 2 Гб має бути достатньо.

Необов’язково - якщо ви хочете збільшити обсяг пам’яті:

  1. Виберіть Налаштування на маленькій піктограмі Docker у верхньому меню
  2. Зсуньте повзунок пам'яті щонайменше до 2 ГБ
  3. Клацніть Застосувати та перезапустити

Завантажте SQL Server

Відкрийте вікно терміналу та запустіть наступну команду.

sudo docker pull mcr.microsoft.com/mssql/server:2019-latest

Це завантажує найновіший образ SQL Server 2019 для Linux Docker на ваш комп’ютер.

Ви також можете перевірити наявність останньої версії контейнера на веб-сайті Docker, якщо хочете.

Запустіть Docker Image

Виконайте таку команду, щоб запустити екземпляр щойно завантаженого образу Docker:

docker run -d --name sql_server_demo -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=really

Приклад виводу:

Перевірте контейнер Docker (необов’язково)

Ви можете ввести таку команду, щоб перевірити, чи запущений контейнер Docker.

docker ps

Якщо він працює і працює, він повинен повернути щось подібне:

Якщо ви випадково закрили програму Docker, відкрийте термінал і введіть

docker start sql_server_demo

Встановіть Node.js та NPM

Перевірте, чи є у вас Node.js та NPM. Виконайте наступні команди у своєму терміналі.

node -v npm -v

Якщо ви отримаєте вихідний номер із номером версії, пропустіть решту цього розділу.

Потім відвідайте веб-сайт Node.js, натиснувши таке посилання:

//nodejs.org/en/

Натисніть кнопку завантаження версії LTS (номер версії може бути різним), щоб завантажити пакет Node.js:

Потім натисніть і запустіть пакет після завантаження. MacOS та Windows матимуть різний процес встановлення. Будь ласка, дотримуйтесь інструкцій, щоб встановити Node.js.

Потім ще раз перевірте, чи були успішно встановлені Node.js та NPM, виконавши в терміналі такі команди:

node -v npm -v

Вихід повинен виглядати так:

Встановіть sql-cli

Виконайте наступну команду, щоб встановити інструмент командного рядка sql-cli. Цей інструмент дозволяє запускати запити та інші команди проти вашого екземпляра SQL Server.

npm install -g sql-cli

Якщо з’являється помилка дозволу, скористайтеся sudoкомандою:

sudo npm install -g sql-cli

Підключіться до сервера MSSQL

Підключіться до свого SQL Server за допомогою команди mssql, а потім параметрів імені користувача та пароля. Синтаксис: -u -p

mssql -u sa -p reallyStrongPwd123

Ваш результат повинен виглядати так, якщо ви успішно підключилися:

Запустіть швидкий тест

Запустіть швидкий тест, щоб перевірити, чи можете ви підключитися до свого SQL Server. Використовуйте наступний оператор SQL, щоб перевірити свою версію SQL Server:

SELECT @@VERSION;

Якщо він працює, ви повинні побачити щось подібне:

Завантажте графічний інтерфейс SQL Server - Azure Data Studio

Azure Data Studio (раніше SQL Operations Studio) - це безкоштовний інструмент управління графічним інтерфейсом, який ви можете використовувати для управління SQL Server на своєму комп'ютері. Ви можете використовувати його для створення та управління базами даних, написання запитів, резервного копіювання та відновлення баз даних тощо.

Azure Data Studio доступна для Windows, Mac і Linux.

Встановіть Azure Data Studio

Щоб встановити Azure Data Studio на ваш Mac:

  1. Відвідайте сторінку завантаження Azure Data Studio і натисніть .zip-файл для macOS
  2. Після завершення завантаження .zip-файлу двічі клацніть на ньому, щоб розширити його вміст
  3. Перетягніть файл .app у папку Applications (файл, ймовірно, буде називатися Azure Data Studio.app )

Підключіться до SQL Server

Тепер, коли встановлено Azure Data Studio, ви можете використовувати її для підключення до SQL Server.

  1. Запустіть Azure Data Studio. Він знаходиться у вашій папці Програми.
  2. Введіть облікові дані для входу та іншу інформацію для екземпляра SQL Server, до якого ви хочете підключитися:

Це повинно виглядати приблизно так:

Це повинно виглядати приблизно так:

  • Ім'я сервера : localhost, [номер порту]

    Приклад : localhost, 1433

  • Тип автентифікації : Вхід в SQL
  • Ім'я користувача : [ваше ім'я користувача SQL Server] або sa
  • Пароль : [ваш пароль на SQL Server] або reallyStrongPwd123
  • Назва бази даних :
  • Група серверів :

Якщо ви використовуєте порт, відмінний від типового 1433, натисніть Додатково та введіть його в поле Порт.

Крім того, ви можете додати його до імені свого сервера з комою між ними. Наприклад, якщо ви використовували порт 1400, введіть localhost, 1400.

Тепер ви можете створювати бази даних, запускати сценарії та виконувати інші завдання управління SQL Server.

  1. Клацніть Новий запит

2. Введіть SELECT @@ VERSION , а потім натисніть кнопку Запустити запит .

Ви повинні бачити: Microsoft SQL Server у результатах.

Імпорт зразка бази даних на ваш SQL Server за допомогою Azure Data Studio

Завантажте зразок файлу бази даних AdventureWorks

Щоб отримати OLTP-файли для завантаження AdventureWorks, перейдіть за цим посиланням і виберіть будь-який зразок бази даних. У своєму прикладі я вибираю AdventureWorks2017.bak. Ми завантажимо це в S3 Bucket.

Копіювання файлу у ваш докер

Введіть таку команду в терміналі, дотримуючись цього синтаксису:

docker cp  :/var/opt/mssql/data

Це повинно виглядати так:

Якщо ви забули ідентифікатор контейнера, скористайтеся docker psкомандою.

Імпорт зразка бази даних у Docker

Перейдіть до Azure Data Studio і клацніть localhost, 1443 , а потім виберіть Відновити .

Потім виберіть Файл резервної копії як вибір для Відновлення з . Далі натисніть синю кнопку праворуч від шляху резервного копіювання файлу.

Шукайте зразок файлу бази даних. Він повинен знаходитися в

/var/opt/mssql/data/AdventureWorks2017.bak

Виберіть Відновити .

Перевірте свій localhost, 1443. Він повинен створити базу даних з назвою AdventureWorks2017 і мати такий вміст, як Таблиці та Перегляди. Якщо ні, клацніть правою кнопкою миші на localhost, 1443 і виберіть Оновити. Ви також можете перезапустити програму Azure Data Studio.

Тестування зразка бази даних

  1. У спадному меню виберіть AdventureWorks2017 .
  2. Напишіть запит SQL:
SELECT * FROM HumanResources.Department;

3. Клацніть Виконати, щоб запустити запит.

Ви повинні мати такий вивід:

Вітаємо! ???

Ресурси:

  • Як встановити SQL Server на Mac

Зв’яжіться зі мною на LinkedIn тут