Введение
В веб-разработке и управлении данными необходима надёжная база данных. MariaDB — популярная реляционная система управления базами данных с открытым исходным кодом. Её создали первоначальные разработчики MySQL, поэтому она в значительной степени с ней совместима.
Термин реляционная база данных означает, что данные организованы в таблицы со строками и столбцами, а связанные фрагменты данных можно логически соединять. Эта модель стала основой веб-приложений, потому что она структурирована, поддерживает запросы и хорошо подходит для бизнес-данных, таких как пользователи, заказы и сведения о запасах.
Важно различать сервер базы данных и данные, которыми он управляет. Установка MariaDB ещё не создаёт таблицы приложения — она устанавливает службу, которая впоследствии будет хранить эти таблицы и выполнять запросы к ним.
В этой лабораторной работе вы с нуля настроите сервер базы данных MariaDB в системе Ubuntu Linux. Вы пройдёте весь процесс: установите программное обеспечение, запустите службу, защитите установку от несанкционированного доступа и подключитесь к базе данных, чтобы проверить её работу.
После завершения лабораторной работы у вас будет полностью работоспособный сервер базы данных, готовый к использованию в ваших проектах.
Установите сервер базы данных
На этом шаге вы установите пакет сервера MariaDB. Для управления установкой программного обеспечения Ubuntu использует apt (Advanced Package Tool).
Чтобы установить сервер MariaDB, выполните в терминале следующую команду. Мы используем sudo, потому что для установки программного обеспечения нужны права администратора.
На этом этапе вы устанавливаете серверное программное обеспечение, а не открываете оболочку базы данных. Это соответствует той же модели службы, которую вы уже могли видеть на примере веб-серверов и других демонов.
sudo apt install mariadb-server -y
Объяснение:
sudo: выполняет команду от имени администратора (суперпользователя).apt install: команда для установки пакета.mariadb-server: имя устанавливаемого пакета.-y: автоматически отвечает «yes» на все запросы подтверждения, упрощая установку.
Примечание: в некоторых средах LabEx MariaDB может быть уже установлена. В этом случае команда просто проверит установку и убедится, что у вас установлена последняя версия, — это нормально.
После завершения команды проверьте установку, запросив версию:
mariadb --version
Вы должны увидеть вывод, похожий на mariadb Ver 15.1 Distrib 10.6.x.... Это подтверждает, что программное обеспечение установлено в вашей системе.
Запустите службу базы данных
Установка программного обеспечения размещает файлы на диске, но не всегда запускает программу. Сервер базы данных обычно работает в фоновом режиме как «служба» (также называемая демоном) и принимает подключения.
Эта модель «клиент — сервер» лежит в основе работы баз данных SQL. Приложения и администраторы подключаются к серверу, отправляют запросы и получают результаты, вместо того чтобы напрямую читать необработанные файлы данных.
Запустите службу MariaDB следующей командой:
sudo service mysql start
Примечание: хотя мы установили MariaDB, имя службы часто остаётся mysql из соображений совместимости.
Чтобы убедиться, что служба активна и работает корректно, проверьте её состояние:
sudo service mysql status
В выводе должно быть указано, что служба находится в состоянии active (running). Если вы видите это состояние, сервер базы данных запущен и готов принимать подключения.
Защитите установку
По умолчанию новая установка MariaDB содержит настройки, удобные для тестирования, но небезопасные для рабочей среды. Например, она может разрешать анонимных пользователей или оставлять пароль root пустым.
В MariaDB есть скрипт безопасности, который устраняет эти проблемы. Запустите его следующей командой:
Цель скрипта — удалить небезопасные настройки по умолчанию и усилить контроль доступа. Это распространённый подход для инфраструктурного программного обеспечения: первоначальная установка ориентирована на удобство, а последующий шаг делает систему безопаснее для реального использования.
sudo mysql_secure_installation
Этот скрипт работает в интерактивном режиме и задаст вам несколько вопросов. Отвечайте на них следующим образом:
- Enter current password for root: нажмите Enter (пароля пока нет).
- Switch to unix_socket authentication: введите n и нажмите Enter.
- Change the root password?: введите n и нажмите Enter (в этой лабораторной работе мы оставим вход без пароля, чтобы упростить авторизацию).
- Remove anonymous users?: введите Y и нажмите Enter.
- Disallow root login remotely?: введите Y и нажмите Enter.
- Remove test database and access to it?: введите Y и нажмите Enter.
- Reload privilege tables now?: введите Y и нажмите Enter.
После завершения работы скрипт выведет сообщение «All done!». Теперь ваша база данных защищена от распространённых уязвимостей.
Подключитесь и проверьте работу
На этом последнем шаге вы проверите возможность подключения к серверу базы данных. Поскольку мы используем конфигурацию по умолчанию, пользователь root может подключиться с помощью sudo без пароля.
Выполните вход в монитор MariaDB — интерфейс командной строки базы данных:
sudo mariadb -u root
Если подключение прошло успешно, приглашение изменится и будет выглядеть так:
MariaDB [(none)]>
Это приглашение означает, что теперь вы вводите команды непосредственно серверу базы данных, а не операционной системе Linux.
С этого момента важно различать эти среды. Оболочка MariaDB понимает команды SQL, а не обычные команды оболочки Linux, поэтому теперь вы работаете в другой командной среде.
Чтобы отключиться и вернуться к обычному терминалу Linux, введите:
exit
Поздравляем! Вы успешно установили, защитили и проверили подключение к базе данных MariaDB.
Итоги
В этой лабораторной работе вы успешно настроили надёжную среду базы данных. Вы научились:
- Устанавливать сервер MariaDB с помощью менеджера пакетов.
- Запускать службу базы данных и проверять её состояние.
- Защищать установку, удаляя небезопасные настройки по умолчанию.
- Подключаться к базе данных с помощью клиента командной строки.
Это основные шаги подготовки сервера базы данных для любого приложения. Они позволяют убедиться, что сервер работает и защищён.



