Microsoft SQL Server - это ведущая система управления реляционными базами данных (РСУБД), разработанная компанией Microsoft Inc. Известная своими сложными возможностями и надежной структурой, она в основном работает на структурированном языке запросов (SQL) для управления, манипулирования и получения данных в различных типах баз данных.
Преимущества Microsoft SQL Server
SQL Server обладает целым рядом преимуществ:
- Масштабируемость и производительность: Он обеспечивает замечательные возможности масштабирования и производительности для работы с большими базами данных, значительной пользовательской нагрузкой и сложными транзакциями без ущерба для эффективности.
- Безопасность: Эта система широко известна благодаря своим надежным функциям безопасности, включая прозрачное шифрование данных, расширенную защиту от угроз и возможности тонкого аудита.
- Бизнес-аналитика (BI) и анализ данных: Microsoft SQL Server является лидером в области инструментов BI, предоставляя такие службы, как Reporting Services (SSRS), Integration Services (SSIS) и Analysis Services (SSAS).
- Высокая доступность и аварийное восстановление: Благодаря таким функциям, как AlwaysOn Availability Groups и Failover Clustering, обеспечивается высокая доступность данных и плавное восстановление в случае любой катастрофы.
- Интеграция с экосистемой Microsoft: Будучи продуктом Microsoft, SQL Server легко интегрируется с другими приложениями Microsoft, такими как Azure, Power BI и Office, обеспечивая беспрецедентный уровень удобства и эффективности.
Хотя Microsoft SQL Server изначально был разработан для Windows, выпуск 2017 года ознаменовал значительное изменение в его истории, представив поддержку операционных систем Linux. Этот переход привел к повышению доступности и гибкости, позволив большему числу организаций использовать возможности SQL Server на выбранной ими платформе.
Существуют различные версии SQL Server, каждая из которых отвечает различным потребностям и бюджетам:
- Enterprise: Эта версия является многофункциональной и предлагает наиболее полный набор инструментов и возможностей для крупных организаций.
- Standard: Являясь более низкой версией по сравнению с Enterprise, она отвечает потребностям средних предприятий со стандартными требованиями к управлению базами данных.
Web: Это доступный вариант, предназначенный для веб-хостинга. - Developer: Бесплатная версия, предоставляющая полный набор функций редакции Enterprise, предназначенная только для разработки и тестирования.
- Express: Это бесплатная ограниченная версия, идеально подходящая для обучения и создания небольших приложений.
По мере продвижения в эпоху облаков компания Microsoft продолжает инвестировать в свои облачные предложения SQL Server, а именно Azure SQL Database и Azure SQL Managed Instance. Эти версии предоставляют все возможности SQL Server, используя гибкость, масштабируемость и отказоустойчивость платформы Azure.
Мы собираемся изучить процесс установки Microsoft SQL Server на 'Focal Fossa' Ubuntu 20.04 LTS Linux.
Обратите внимание, что это доступно только на Ubuntu 20.04 LTS Focal Fossa, более новый LTS-релиз Ubuntu 22.04 Jammy Jellyfish в настоящее время не поддерживается.
Установка Microsoft SQL Server в Ubuntu
Шаг 1: Обновление и модернизация системы Ubuntu
Для обеспечения совместимости и плавной установки Microsoft SQL Server рекомендуется обновлять и модернизировать систему Ubuntu. Этот процесс помогает получить последние исправления ошибок, исправления безопасности и обновления программного обеспечения для вашей системы. Для выполнения этой задачи используются команды apt update и apt upgrade:
1 2 | sudo apt update sudo apt upgrade |
Шаг 2: Установка необходимых пакетов
Прежде чем приступить к установке Microsoft SQL Server, необходимо установить некоторые необходимые пакеты. Эти пакеты необходимы для импорта APT-репозитория SQL Server, облегчения сетевых операций, управления сертификатами и т.д. Выполните следующую команду для установки этих пакетов:
1 | sudo apt install dirmngr ca-certificates ca-certificates software-properties-common apt-transport-https curl lsb-release -y |
Шаг 3: Включение репозитория SQL Server APT Repository
Репозиторий SQL Server APT содержит необходимые пакеты для установки SQL Server. Этот репозиторий необходимо импортировать перед установкой SQL Server. Этот процесс включает два шага: Во-первых, импорт ключа GPG, который необходим для обеспечения целостности и безопасности репозитория; во-вторых, добавление репозитория в вашу систему.
Для импорта ключа GPG выполните следующую команду:
1 | curl -s https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft-sql.gpg > /dev/null |
Далее добавьте репозиторий для Microsoft SQL Server, только импортируйте только 2022 или 2019! Затем репозиторий инструментов MSSQL:
MSSQL 2022:
1 | echo "deb [arch=amd64,armhf,arm64 signed-by=/usr/share/keyrings/microsoft-sql.gpg] https://packages.microsoft.com/ubuntu/20.04/mssql-server-2022 focal main" | sudo tee -a /etc/apt/sources.list.d/mssql.list |
MSSQL 2019:
1 | echo "deb [arch=amd64,armhf,arm64 signed-by=/usr/share/keyrings/microsoft-sql.gpg] https://packages.microsoft.com/ubuntu/20.04/mssql-server-2019 focal main" | sudo -a tee /etc/apt/sources.list.d/mssql.list |
Репозиторий инструментов MSSQL:
1 | echo "deb [arch=amd64,armhf,arm64 signed-by=/usr/share/keyrings/microsoft-sql.gpg] https://packages.microsoft.com/ubuntu/20.04/prod/ focal main" | sudo tee -a /etc/apt/sources.list.d/mssql.list |
Шаг 4: Обновление индекса пакетов APT
После включения репозитория необходимо обновить индекс пакетов APT. Эта операция поможет системе узнать о новых пакетах, доступных для установки из недавно добавленного репозитория SQL Server:
1 | sudo apt update |
Шаг 5: Установка MSSQL Server и инструментов
Теперь вы готовы к установке Microsoft SQL Server и связанных с ним инструментов. Эти инструменты включают sqlcmd и bcp, инструменты командной строки для SQL Server, которые позволяют запускать запросы и выполнять другие операции:
1 | sudo apt install mssql-server mssql-tools unixodbc-dev |
После установки папку MSSQL Tools необходимо добавить в системный путь. Этот шаг позволит получить доступ к этим инструментам из любого места в терминале, независимо от вашего текущего каталога. Чтобы добавить папку Tools в системный путь, выполните следующие команды:
1 2 | echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile source ~/.bashrc |
Шаг 6: Проверка установки
Проверка установки - это важный шаг, который гарантирует, что ваш SQL Server правильно установлен и готов к работе. Для этого можно проверить состояние службы SQL Server с помощью команды systemctl. Этот инструмент командной строки используется для изучения и контроля состояния системы "systemd" и менеджера служб.
Используйте следующую команду для проверки состояния службы SQL Server:
1 | systemctl status mssql-server |
После успешного выполнения этой команды вы должны увидеть сообщение о том, что служба mssql-server активна и запущена.
Тонкая настройка конфигурации Microsoft SQL Server
Шаг 1: Запуск сценария конфигурации
После успешной установки Microsoft SQL Server, неотъемлемым шагом является запуск сценария конфигурации, входящего в комплект поставки. Этот сценарий, расположенный по адресу /opt/mssql/bin/mssql-conf setup, выполняет несколько важных задач:
- Он представляет условия лицензии Microsoft SQL Server для вашего согласия.
- Он позволяет вам установить пароль для учетной записи 'SA' (Системный администратор). Эта учетная запись обладает самым высоким уровнем разрешений в экземпляре SQL Server.
- Он позволяет включить автоматический запуск SQL Server при загрузке системы.
Запустите этот сценарий, выполнив следующую команду в терминале:
1 | sudo /opt/mssql/bin/mssql-conf setup |
Во время этого процесса вы будете интерактивно направляться через эти задачи. Обязательно тщательно запишите установленный вами пароль SA, поскольку он будет необходим для входа в SQL Server в будущем.
Шаг 2: Применение изменений конфигурации
Изменения, внесенные сценарием конфигурации, являются глубокими и влияют на то, как SQL Server будет работать в вашей системе. Чтобы эти изменения вступили в силу, необходимо перезапустить службу SQL Server. Это действие гарантирует, что SQL Server работает с последней конфигурацией. Используйте следующую команду для перезапуска службы:
1 | sudo systemctl restart mssql-server |
Шаг 3: Проверка конфигурации
После перезапуска службы SQL Server мы можем убедиться, что процесс конфигурирования прошел успешно. Для этого нужно попытаться подключиться к SQL Server с помощью утилиты sqlcmd. Этот инструмент командной строки позволяет запускать сценарии и команды SQL, что делает его отличным ресурсом для тестирования подключения к базе данных.
Для подключения к серверу используется команда sqlcmd, за которой следует опция -S для указания сервера (в данном случае localhost), опция -U для указания имени пользователя (SA) и опция -P для ввода пароля, который вы установили для учетной записи SA ранее. Обязательно замените 'password' в приведенной ниже команде на реальный пароль, который вы установили:
1 | sqlcmd -S localhost -U SA -P 'password' |
Если подключение прошло успешно, вы увидите приглашение 1>, указывающее на то, что вы подключены к SQL Server и готовы к выполнению команд SQL.
Утилита sqlcmd - это мощный инструмент, который может напрямую взаимодействовать с SQL Server. Поэтому ее следует использовать с осторожностью и только тем пользователям, которые имеют четкое представление о работе SQL Server.
Создание базы данных и учетной записи пользователя в MSSQL Server
Как только ваш экземпляр MSSQL Server будет запущен, одной из первых задач, которую вам, скорее всего, придется выполнить, будет создание базы данных и учетной записи пользователя. Этот шаг очень важен для управления вашими данными и контроля доступа к ним.
Шаг 1: Запуск интерфейса командной строки SQL
Утилита sqlcmd, как уже упоминалось, представляет собой мощный интерфейс командной строки для SQL Server. Она позволяет пользователям напрямую запускать сценарии и команды SQL.
Чтобы подключиться к SQL Server с учетной записью системного администратора (SA), используйте приведенную ниже команду, заменив 'password' на пароль, который вы установили для учетной записи SA:
1 | sqlcmd -S localhost -U SA -P 'password' |
После выполнения команды вы увидите приглашение 1>, указывающее на то, что вы подключены к SQL Server и готовы выполнять команды SQL.
Шаг 2: Создание новой базы данных
Создание новой базы данных в SQL Server не представляет собой ничего сложного. Чтобы создать базу данных с именем myDB, например, выполните следующую команду в командной строке SQL:
1 | CREATE DATABASE myDB; |
Обязательно замените myDB на имя, которое вы хотите использовать для своей базы данных. Важно включить точку с запятой (;) в конце команды, которая означает конец оператора SQL.
После ввода команды нажмите Enter на клавиатуре, чтобы выполнить ее. Вы должны увидеть сообщение Command(s) completed successfully, если все прошло, как ожидалось.
Шаг 3: Создание нового пользователя
Теперь давайте создадим новую учетную запись пользователя, которая будет иметь права доступа к этой базе данных. Для этого сначала переключим наш контекст на новую базу данных с помощью команды USE:
1 | USE myDB; |
Затем мы создадим нового пользователя с именем myUser и паролем myPassword:
1 2 | CREATE LOGIN myUser WITH PASSWORD = 'myPassword'; CREATE USER myUser FOR LOGIN myUser; |
Снова замените myUser и myPassword на имя пользователя и пароль, которые вы хотите использовать.
Шаг 4: Предоставление прав пользователю
Когда пользователь создан, последним шагом будет предоставление ему соответствующих прав. Для этого примера предоставим нашему новому пользователю роли db_datareader и db_datawriter, которые позволят ему читать и записывать данные в нашей базе данных:
1 2 | ALTER ROLE db_datareader ADD MEMBER myUser; ALTER ROLE db_datawriter ADD MEMBER myUser; |
После выполнения этих шагов новый пользователь может подключиться к базе данных myDB и выполнять операции чтения/записи.
Помните, что управление доступом к данным является важнейшим аспектом администрирования базы данных. Всегда используйте принцип наименьших привилегий при предоставлении прав доступа, т.е. предоставляйте пользователям только те права, которые им необходимы, и ничего более.
Управление MSSQL в Ubuntu Linux
Обновление MSSQL в Ubuntu Linux
Учитывая, что вы установили Microsoft SQL Server с помощью менеджера пакетов APT, запустите стандартную команду update и upgrade, чтобы проверить и продолжить обновление. Помните, что в производстве необходимо тестировать обновления перед запуском:
1 2 | sudo apt update sudo apt upgrade |
Удаление MSSQL в Ubuntu Linux
Удалить Microsoft SQL Server довольно просто, сначала остановите службу следующей командой:
1 | sudo systemctl stop mssql-server |
Затем удалите службу и все связанные с ней пакеты с помощью следующей команды:
1 | sudo apt remove mssql-server mssql-tools unixodbc-dev |
Наконец, удалите репозиторий Microsoft и ключ GPG следующей командой, если вы планируете не переустанавливать SQL сервер снова:
1 2 | sudo rm /etc/apt/sources.list.d/mssql.list sudo rm /usr/share/keyrings/microsoft-sql.gpg |
Заключение
Мы начали всестороннее путешествие, исследуя различные аспекты развертывания и управления Microsoft SQL Server на дистрибутиве Ubuntu Linux. Мы рассмотрели начальную установку сервера, обсудили процесс настройки, углубились в создание имен пользователей и баз данных MSSQL, а также рассмотрели основные операции управления системой, такие как обновление и удаление. Будучи прочной и надежной платформой, Microsoft SQL Server на Ubuntu Linux представляет собой привлекательное решение для ваших потребностей в базах данных. Он легко объединяет функциональность MSSQL корпоративного уровня с гибкостью Ubuntu с открытым исходным кодом, обеспечивая мощную комбинацию для различных приложений.