Спустя десятилетие после выхода предыдущей версии, долгожданный сервер MariaDB Server 11.0 наконец-то появился на свет и может похвастаться множеством улучшений и новых возможностей. Среди наиболее заметных улучшений - внедрение новой модели стоимости оптимизатора, которая призвана повысить точность прогнозирования стоимости плана выполнения запросов. Эта функция является прямым ответом на сообщения сообщества MariaDB о проблемах с производительностью, возникающих из-за неоптимальных планов запросов.
Ключевые особенности и усовершенствования MariaDB 11.0
- Новая модель затрат оптимизатора: Флагманская функция MariaDB 11.0 направлена на более точное предсказание стоимости каждого плана выполнения запроса. Хотя это улучшение не гарантирует более высокую производительность во всех сценариях, оно служит важным сигналом о постоянных улучшениях в основных версиях MariaDB.
- Затраты на работу двигателя хранения данных: Базовая стоимость "операций двигателя хранилища" была изменена на одну миллисекунду, что приблизило стоимость к фактическому времени, затрачиваемому сервером на операции двигателя хранилища, join_cache и сортировки.
- Улучшенная точность затрат: Разбив затраты на движок на более мелкие компоненты и приняв скорость SSD диска по умолчанию 400/сек (изменяется с помощью переменной OPTIMIZER_DISK_READ_COST), MariaDB 11.0 обеспечивает более точную оценку затрат на чтение с диска.
- Удаление буфера изменений InnoDB: В MariaDB 11.0 удален буфер изменений InnoDB (MDEV-29694), что еще больше упрощает работу механизма хранения данных.
- Новые и обновленные переменные: MariaDB 11.0 содержит множество новых системных и статусных переменных, а также обновленные значения по умолчанию и устаревшие переменные. Полный список см. в документации MariaDB.
- Улучшенные затраты на сортировку: Благодаря более точной стоимости сортировки оптимизатор теперь может лучше выбирать между сканированием индексов и сортировкой файлов для запросов ORDER BY/GROUP BY.
- Оптимизированные планы запросов: Новые изменения оптимизатора особенно полезны для сценариев, включающих запросы к нескольким таблицам, индексы с большим количеством одинаковых значений, запросы к большим диапазонам, сложные запросы с неиндексированными столбцами, смешанные запросы к движкам хранения и т.д.
Решая проблемы, поднятые сообществом MariaDB, и внося существенные улучшения в оптимизатор, MariaDB 11.0 сделала большой шаг вперед в оптимизации производительности баз данных. В следующем руководстве будет показано, как установить MariaDB 11.0 на Ubuntu 22.04 Jammy Jellyfish и Ubuntu 20.04 Focal Fossa, используя зеркало официального репозитория MariaDB для последней безопасной версии этого релиза.
Шаг 1: Этапы предварительной установки
Обновление Ubuntu
Чтобы установка прошла гладко, необходимо обновить систему, чтобы все существующие пакеты были актуальными. Откройте терминал и выполните следующую команду:
1 | sudo apt update |
Когда все будет готово, обновите все устаревшие пакеты с помощью следующей команды:
1 | sudo apt upgrade |
Установка пакетов
Перед установкой MariaDB вам необходимо установить некоторые зависимости. Введите следующую команду в терминале:
1 | sudo apt install dirmngr ca-certificates ca-certificates software-properties-common apt-transport-https curl -y |
Шаг 2: Импортируйте репозиторий MariaDB.org
Чтобы обеспечить беспроблемную установку, мы должны сначала импортировать ключ GPG, который проверяет пакеты MariaDB. Для этого выполните приведенную ниже команду:
1 | curl -fsSL http://mirror.mariadb.org/PublicKey_v2 | sudo gpg --dearmor | sudo tee /usr/share/keyrings/mariadb.gpg > /dev/null |
С готовым ключом GPG приступайте к импорту репозитория MariaDB. Следующая команда совместима с релизами 22.04 и 20.04 LTS:
1 | echo "deb [arch=amd64,arm64,ppc64el signed-by=/usr/share/keyrings/mariadb.gpg] http://mirror.mariadb.org/repo/11.0/ubuntu/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/mariadb.list |
Наконец, выполните обновление APT для синхронизации вашей системы с новым импортированным репозиторием:
1 | sudo apt update |
Шаг 3: Установите MariaDB 11.0 в Ubuntu
Чтобы успешно установить MariaDB 11.0 в вашей системе, необходимо установить как клиентский, так и серверный пакеты. Для этого выполните следующую команду:
1 | sudo apt install mariadb-server mariadb-client |
После завершения установки вы можете проверить установку, проверив версию и сборку MariaDB с помощью этой команды:
1 | mariadb --version |
Если у вас установлена предыдущая версия MariaDB, процесс установки обычно обновляет базы данных. Однако могут возникнуть проблемы с системами управления контентом (CMS), такими как WordPress, когда обновление выполняется не полностью. Чтобы убедиться, что ваша база данных обновлена правильно, выполните следующую команду:
1 | sudo mysql_upgrade |
Используя команду sudo mysql_upgrade, система инициирует процесс обновления базы данных MariaDB. Эта команда проверяет все таблицы в указанных базах данных и выполняет ремонт, если это необходимо.
Заключение
В заключение следует отметить, что установка MariaDB 11.0 на Ubuntu требует тщательного планирования и выполнения, но преимущества мощной и надежной системы баз данных могут значительно перевесить затраченные усилия. Следуя лучшим практикам и используя доступные ресурсы, можно добиться профессиональной и оптимизированной установки MariaDB на Ubuntu.