Переход с MariaDB 5.5 на MariaDB 10.0
Что нужно знать
В формате таблиц и индексов между MariaDB 5.5 и MariaDB 10.0 изменений нет, поэтому на большинстве серверов обновление должно пройти без проблем.
Как выполнить обновление
Для Windows, см. Обновление MariaDB в Windows вместо этого.
Для кластера MariaDB Galera, см. Переход с кластера MariaDB Galera 5.5 на MariaDB Galera 10.0 вместо этого.
Перед обновлением рекомендуется создать резервную копию базы данных. Это всегда хорошая идея перед обновлением. Мы рекомендуем использовать Percona XtraBackup.
Предлагаемая процедура обновления:
- Измените конфигурацию репозитория, чтобы менеджер пакетов системы устанавливал MariaDB 10.0. Например,
- В дистрибутивах Debian, Ubuntu и подобных Linux-системах, см. Обновление репозитория MariaDB APT до новой основной версии для получения дополнительной информации.
- В дистрибутивах RHEL, CentOS, Fedora и подобных Linux-системах, см. Обновление репозитория MariaDB YUM до новой основной версии для получения дополнительной информации.
- В дистрибутивах SLES, OpenSUSE и подобных Linux-системах, см. Обновление репозитория MariaDB ZYpp до новой основной версии для получения дополнительной информации.
- Установите
innodb_fast_shutdownв значение0. Это можно изменить динамически с помощьюSET GLOBAL. Например:
SET GLOBAL innodb_fast_shutdown=0; - Остановить MariaDB.
- Удалите старую версию MariaDB.
- В дистрибутивах Debian, Ubuntu и подобных Linux-системах выполните следующее:
sudo apt-get remove mariadb-server - В дистрибутивах RHEL, CentOS, Fedora и подобных Linux-системах выполните следующее:
sudo yum remove MariaDB-server - В дистрибутивах SLES, OpenSUSE и подобных Linux-системах выполните следующее:
sudo zypper remove MariaDB-server
- В дистрибутивах Debian, Ubuntu и подобных Linux-системах выполните следующее:
- Установите новую версию MariaDB.
- В дистрибутивах Debian, Ubuntu и подобных Linux-системах, см. Установка пакетов MariaDB с помощью APT для получения дополнительной информации.
- В дистрибутивах RHEL, CentOS, Fedora и подобных Linux-системах, см. Установка пакетов MariaDB с помощью YUM для получения дополнительной информации.
- В дистрибутивах SLES, OpenSUSE и подобных Linux-системах, см. Установка пакетов MariaDB с помощью ZYpp для получения дополнительной информации.
- Внесите необходимые изменения в параметры конфигурации в файлах параметров, такие как
my.cnf. Это включает удаление всех параметров, которые больше не поддерживаются. - Запустить MariaDB.
- Выполните
mysql_upgrade.-
mysql_upgradeвыполняет две задачи:- Обеспечивает полную совместимость системных таблиц в базе данных
mysqlс новой версией. - Производит очень быструю проверку всех таблиц и помечает их как совместимые с новой версией MariaDB.
- Обеспечивает полную совместимость системных таблиц в базе данных
-
Несовместимые изменения между 5.5 и 10.0
Как уже упоминалось, на большинстве серверов обновление с 5.5 должно пройти без проблем. Однако есть некоторые изменения, которые могут повлиять на обновление:
Параметры, изменившие значения по умолчанию
Большинство из следующих параметров немного увеличили значение, чтобы обеспечить лучшую производительность. Они не должны использовать значительного дополнительного объема памяти, но некоторые из них могут использовать немного больше места на диске.
| Параметр | Старое значение по умолчанию | Новое значение по умолчанию |
|---|---|---|
aria-sort-buffer-size |
128M |
256M |
back_log |
50 |
150 |
innodb-buffer-pool-instances |
1 |
8 (кроме 32-битной Windows) |
innodb-concurrency-tickets |
500 |
5000 |
innodb-log-file-size |
5M |
48M |
innodb-old-blocks-time |
0 |
1000 |
innodb-open-files |
300 |
400 [2]
|
innodb-purge-batch-size |
20 |
300 |
innodb-undo-logs |
ON |
20 |
max-connect-errors |
10 |
100 |
max-relay-log-size |
0 |
1024M |
myisam-sort-buffer-size |
8M |
128M |
optimizer-switch |
... | Добавлен extended_keys=on, exists_to_in=on
|
Параметры, удаленные или переименованные
Следующие параметры следует удалить или переименовать, если вы используете их в файлах конфигурации:
| Параметр | Причина |
|---|---|
engine-condition-pushdown |
Заменен на set optimizer_switch='engine_condition_pushdown=on'
|
innodb-adaptive-flushing-method |
Удален в XtraDB |
innodb-autoextend-increment |
Удален в XtraDB |
innodb-blocking-buffer-pool-restore |
Удален в XtraDB |
innodb-buffer-pool-pages |
Удален в XtraDB |
innodb-buffer-pool-pages-blob |
Удален в XtraDB |
innodb-buffer-pool-pages-index |
Удален в XtraDB |
innodb-buffer-pool-restore-at-startup |
Удален в XtraDB |
innodb-buffer-pool-shm-checksum |
Удален в XtraDB |
innodb-buffer-pool-shm-key |
Удален в XtraDB |
innodb-checkpoint-age-target |
Удален в XtraDB |
innodb-dict-size-limit |
Удален в XtraDB |
innodb-doublewrite-file |
Удален в XtraDB |
innodb-fast-checksum |
Переименован в innodb-checksum-algorithm |
innodb-flush-neighbor-pages |
Переименован в innodb-flush-neighbors |
innodb-ibuf-accel-rate |
Удален в XtraDB |
innodb-ibuf-active-contract |
Удален в XtraDB |
innodb-ibuf-max-size |
Удален в XtraDB |
innodb-import-table-from-xtrabackup |
Удален в XtraDB |
innodb-index-stats |
Удален в XtraDB |
innodb-lazy-drop-table |
Удален в XtraDB |
innodb-merge-sort-block-size |
Удален в XtraDB |
innodb-persistent-stats-root-page |
Удален в XtraDB |
innodb-read-ahead |
Удален в XtraDB |
innodb-recovery-stats |
Удален в XtraDB |
innodb-recovery-update-relay-log |
Удален в XtraDB |
innodb-stats-auto-update |
Переименован в innodb-stats-auto-recalc
|
innodb-stats-update-need-lock |
Удален в XtraDB |
innodb-sys-stats |
Удален в XtraDB |
innodb-table-stats |
Удален в XtraDB |
innodb-thread-concurrency-timer-based |
Удален в XtraDB |
innodb-use-sys-stats-table |
Удален в XtraDB |
xtradb-admin-command |
Удален в XtraDB |
Зарезервированные слова
Новое зарезервированное слово: RETURNING. Оно больше не может использоваться в качестве идентификатора без кавычек.
Другие изменения
Синтаксис SET OPTION устарел в MariaDB 10.0. Используйте SET вместо этого.
Новые основные возможности
Вы должны рассмотреть использование следующих новых основных возможностей в MariaDB 10.0:
Для конфигураций мастер/раб
- Глобальный идентификатор транзакции включён по умолчанию. Это облегчает переключение ведомого сервера на роль главного.
- MariaDB 10.0 поддерживает параллельное применение запросов на ведомых серверах. Вы можете включить это с помощью slave-parallel-threads=#. Обратите внимание, что это работает только если ваш главный сервер MariaDB 10.0 или более поздней версии.
- Репликация с нескольких источников
Galera
См. Обновление с MariaDB Galera Cluster 5.5 на MariaDB Galera Cluster 10.0 для получения более подробной информации об обновлениях Galera.
Переменные
Примечания
- ↑ Переменная
innodb-open-filesпо умолчанию принимает значениеtable-open-cache(400— по умолчанию), если она установлена на значение меньше10при условии, чтоinnodb-file-per-tableустановлено на1илиTRUE(по умолчанию). Еслиinnodb_file_per_tableустановлено на0илиFALSE, иinnodb-open-filesустановлено на значение меньше10, по умолчанию будет300
См. также
© 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-55-to-mariadb-100/