MySQL — реляционная система управления базами данных. Она хранит структурированную информацию в таблицах и выполняет SQL-запросы приложения. На сайте Joomla в базе могут храниться материалы, категории, меню, пользователи и настройки расширений.
Таблицы, связи и индексы
Таблица состоит из строк и столбцов. Первичный ключ идентифицирует запись, а связанные идентификаторы позволяют сопоставлять данные, например материал и его категорию. Индексы ускоряют подходящие запросы, но требуют места и дополнительных затрат при записи.
Файлы изображений и шаблонов обычно находятся в файловой системе, а база содержит сведения о них. Поэтому полная резервная копия Joomla должна учитывать и базу, и файлы.
MySQL, MariaDB и SQL
SQL — язык запросов, а MySQL — сервер, который их выполняет. MariaDB — отдельная СУБД, исторически связанная с MySQL. Их совместимость нельзя считать полной: различаются версии, возможности и поведение отдельных запросов.
Версию сервера выбирают по требованиям установленной Joomla и расширений. Перед переносом между MySQL и MariaDB проверяют восстановление дампа и работу приложения в отдельной среде.
Кодировка и подключение
Для полноценной работы с Unicode используют utf8mb4. Кодировка и правила сравнения строк влияют на хранение, сортировку и поиск, поэтому менять их на рабочей базе без проверки нельзя.
Joomla подключается к серверу с адресом, именем базы и отдельной учётной записью. Ошибка подключения может быть связана с доступностью сервера, паролем, правами или драйвером PHP. Проверка должна учитывать фактическую среду сайта.
Итог
MySQL управляет данными Joomla, а SQL описывает операции над ними. Поддерживаемая версия, подходящие права, резервные копии и проверенные изменения структуры помогают сохранять работоспособность сайта.