Переход с MariaDB 10.4 на MariaDB 10.5
Как выполнить обновление
Для Windows см. Обновление MariaDB в Windows вместо этого.
Перед обновлением рекомендуется создать резервную копию базы данных. Это всегда хорошая практика перед обновлением. Рекомендуется использовать Mariabackup.
Предлагаемая процедура обновления:
- Измените конфигурацию репозитория, чтобы менеджер пакетов системы устанавливал MariaDB 10.5. Например,
- В дистрибутивах Linux, подобных Debian, Ubuntu и др., см. Обновление репозитория MariaDB APT до новой основной версии для получения дополнительной информации.
- В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., см. Обновление репозитория MariaDB YUM до новой основной версии для получения дополнительной информации.
- В дистрибутивах Linux, подобных SLES, OpenSUSE и др., см. Обновление репозитория MariaDB ZYpp до новой основной версии для получения дополнительной информации.
- Остановите MariaDB.
- Удалите старую версию MariaDB.
- В дистрибутивах Linux, подобных Debian, Ubuntu и др., выполните следующее:
sudo apt-get remove mariadb-server - В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., выполните следующее:
sudo yum remove MariaDB-server - В дистрибутивах Linux, подобных SLES, OpenSUSE и др., выполните следующее:
sudo zypper remove MariaDB-server
- В дистрибутивах Linux, подобных Debian, Ubuntu и др., выполните следующее:
- Установите новую версию MariaDB.
- В дистрибутивах Linux, подобных Debian, Ubuntu и др., см. Установка пакетов MariaDB с помощью APT для получения дополнительной информации.
- В дистрибутивах Linux, подобных RHEL, CentOS, Fedora и др., см. Установка пакетов MariaDB с помощью YUM для получения дополнительной информации.
- В дистрибутивах Linux, подобных SLES, OpenSUSE и др., см. Установка пакетов MariaDB с помощью ZYpp для получения дополнительной информации.
- Внесите необходимые изменения в параметры конфигурации в файлах файлах параметров, таких как
my.cnf. Это включает удаление любых больше не поддерживаемых параметров. - Запустите MariaDB.
- Запустите mysql_upgrade.
-
mysql_upgradeвыполняет две задачи:- Обеспечивает полную совместимость системных таблиц базы данных #mysql с новой версией.
- Проводит быструю проверку всех таблиц и отмечает их как совместимые с новой версией MariaDB.
-
Несовместимые изменения между 10.4 и 10.5
Для большинства серверов обновление с 10.4 должно быть без проблем. Однако есть некоторые изменения, которые могут повлиять на обновление:
Изменения имен бинарных файлов
Все бинарные файлы, начинавшиеся ранее с mysql, теперь начинаются с mariadb, со ссылками на соответствующие команды mysql.
Обычно это не должно привести к изменениям в поведении, но при запуске сервера MariaDB через systemd или скрипт mysqld_safe, процесс сервера теперь всегда запускается как mariadbd, а не как mysqld.
Поэтому всё, что ищет имя mysqld в списке системных процессов, например, решения для мониторинга, теперь должно искать mariadbd вместо mysqld, когда сервер/служба запускается не напрямую, а через mysqld_safe или как системная служба.
Изменения в GRANT PRIVILEGE
Несколько команд изменили требуемые привилегии. Раньше привилегии выбирались некорректно. В 10.5.2 эта проблема исправлена. Обратите внимание, что эти изменения несовместимы с предыдущими версиями. После обновления может потребоваться несколько команд GRANT.
-
SHOW BINLOG EVENTSтеперь требует привилегииBINLOG MONITOR(ранее требоваласьREPLICATION SLAVEдо 10.5.2). -
SHOW SLAVE HOSTSтеперь требует привилегииREPLICATION MASTER ADMIN(ранее требоваласьREPLICATION SLAVEдо 10.5.2). -
SHOW SLAVE STATUSтеперь требует привилегииREPLICATION SLAVE ADMINилиSUPER(ранее требоваласьREPLICATION CLIENTилиSUPERдо 10.5.2). -
SHOW RELAYLOG EVENTSтеперь требует привилегииREPLICATION SLAVE ADMIN(ранее требоваласьREPLICATION SLAVEдо 10.5.2).
Параметры, изменившие значения по умолчанию
| Параметр | Старое значение по умолчанию | Новое значение по умолчанию |
|---|---|---|
| innodb_adaptive_hash_index | Включено | Выключено |
| innodb_checksum_algorithm | crc32 | full_crc32 |
| innodb_log_optimize_ddl | Включено | Выключено |
| slave_parallel_mode | conservative | optimistic |
| performance_schema_max_cond_classes | 80 | 90 |
| performance_schema_max_file_classes | 50 | 80 |
| performance_schema_max_mutex_classes | 200 | 210 |
| performance_schema_max_rwlock_classes | 40 | 50 |
| performance_schema_setup_actors_size | 100 | -1 |
| performance_schema_setup_objects_size | 100 | -1 |
Параметры, которые были удалены или переименованы
Следующие параметры необходимо удалить или переименовать, если вы используете их в своих файлах параметров:
| Параметр | Причина |
|---|---|
| innodb_checksums | Устарело и функциональность заменена на innodb_checksum_algorithms в MariaDB 10.0. |
| idle_flush_pct | Не оказывает эффекта с момента слияния InnoDB 5.7 из mysql-5.7.9 (MariaDB 10.2.2). |
| innodb_locks_unsafe_for_binlog | Устарело в MariaDB 10.0. Используйте уровень изоляции транзакций READ COMMITTED вместо этого. |
| innodb_rollback_segments | Устарело и заменено на innodb_undo_logs в MariaDB 10.0. |
| innodb_stats_sample_pages | Устарело в MariaDB 10.0. Используйте innodb_stats_transient_sample_pages вместо этого. |
| max_long_data_size | Устарело и заменено на max_allowed_packet в MariaDB 5.5. |
| multi_range_count | Устарело и не оказывает эффекта с MariaDB 5.3. |
| thread_concurrency | Устарело и не оказывает эффекта с MariaDB 5.5. |
| timed_mutexes | Устарело и не оказывает эффекта с MariaDB 5.5. |
Устаревшие параметры
Следующие параметры устарели. Они пока не удалены, но будут удалены в будущих версиях, и их использование не рекомендуется.
| Опция | Причина |
|---|---|
| innodb_adaptive_max_sleep_delay | Больше не требуется регулировка потока обработки нитей. |
| innodb_background_scrub_data_check_interval | Удален проблемный код «фонового очистки данных». |
| innodb_background_scrub_data_interval | Удален проблемный код «фонового очистки данных». |
| innodb_background_scrub_data_compressed | Удален проблемный код «фонового очистки данных». |
| innodb_background_scrub_data_uncompressed | Удален проблемный код «фонового очистки данных». |
| innodb_buffer_pool_instances | Больше не требуется использование нескольких пулов буферов. |
| innodb_commit_concurrency | Больше не требуется регулировка потока обработки нитей. |
| innodb_concurrency_tickets | Больше не требуется регулировка потока обработки нитей. |
| innodb_log_files_in_group | Журнал редопераций был излишне разделён на несколько файлов. Ограничен до 1 с MariaDB 10.5. |
| innodb_log_optimize_ddl | Запрещены оптимизации. |
| innodb_page_cleaners | Больше не требуется использование нескольких задач очистки страниц. |
| innodb_replication_delay | Больше не требуется регулировка потока обработки нитей. |
| innodb_scrub_log | Функция никогда не работала как задумывалось, формат журнала редопераций переделан. |
| innodb_scrub_log_speed | Функция никогда не работала как задумывалось, формат журнала редопераций переделан. |
| innodb_thread_concurrency | Больше не требуется регулировка потока обработки нитей. |
| innodb_thread_sleep_delay | Больше не требуется регулировка потока обработки нитей. |
| innodb_undo_logs | Всегда целесообразно использовать максимальное количество сегментов отката. |
| large_page_size | Не используется с тех пор, как добавлена поддержка нескольких размеров страниц. |
Основные новые возможности для рассмотрения
Вы можете рассмотреть использование следующих основных новых функций в MariaDB 10.5:
- Двигатель хранилища S3 позволяет архивировать таблицы MariaDB в Amazon S3 или в любом стороннем общедоступном или закрытом облаке, реализующем API S3.
- Двигатель колоночного хранения ColumnStore.
- См. также Дополненные переменные системы в MariaDB 10.5.
См. также
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/upgrading-from-mariadb-104-to-mariadb-105/