Spec-Zone.ru › MariaDB

Переключение между различными установленными версиями MariaDB

Эта статья посвящена управлению множеством различных установленных версий MariaDB и запуску их по одной за раз. Это полезно при проведении бенчмаркинга, тестировании или при разработке различных версий MariaDB.

Это наиболее просто делается с использованием файлов tar с сайта mariadb.org/download/.

Остановка предварительно установленного MySQL/MariaDB для предотвращения вмешательства в ваши тесты

Если MySQL/MariaDB уже установлен и запущен, у вас есть два варианта:

  1. Используйте тестовые серверы MariaDB с другим портом и сокетом.
    • В этом случае вам, вероятно, лучше всего создать специальный раздел для MariaDB в вашем файле ~/.my.cnf.
  2. Остановите mysqld с помощью /etc/rc.d/mysql stop или mariadb-admin shutdown.

Обратите внимание, что вам не нужно удалять MySQL!

Как создать бинарный дистрибутив (файл tar)

Вот краткое описание того, как создать файл tar из исходного дистрибутива. Если вы скачали бинарный файл tar, вы можете пропустить этот раздел.

Шаги по созданию бинарного файла tar:

  • Определите, куда поместить исходный код. Хорошим местом является /usr/local/src/mariadb-5.#.
  • Получите исходный код
  • Скомпилируйте исходный код
  • Создайте бинарный архив tar.

В результате у вас будет файл tar с именем, например: mariadb-11.0.1-MariaDB-linux-x86_64.tar.gz

Создание структуры каталогов для различных установок

Установите бинарные файлы tar в /usr/local/ с указанными ниже именами каталогов (по одному для каждой версии MariaDB, которую вы хотите использовать), например:

  • mariadb-10.5
  • mariadb-10.6
  • mariadb-10.11
  • mariadb-11.0
  • mariadb-11.1

Выше предполагается, что вы просто тестируете основные версии MariaDB. Если вы тестируете конкретные версии, используйте имена каталогов, например, mariadb-11.0.1

После создания каталогов создайте символическую ссылку с именем mariadb, которая указывает на каталог mariadb-XXX, который вы в данный момент тестируете. При переключении на тестирование другой версии просто обновите символическую ссылку.

Пример:

cd /usr/local
tar xfz /tmp/mariadb-11.0.1-linux-systemd-x86_64.tar.gz
mv -vi mariadb-11.0.1-MariaDB-systemd-linux-x86_64 mariadb-11.0
ln -vs mariadb-11.0 mariadb

Настройка каталога данных

При настройке каталога данных у вас есть возможность использовать общий каталог базы данных или создавать уникальный каталог базы данных для каждой версии сервера. Для тестирования, вероятно, проще использовать общий каталог. Обратите внимание, что вы можете запустить только один mysqld сервер для одного каталога данных.

Настройка общего каталога данных

Шаги:

  1. Создайте системного пользователя mysql, если он у вас еще не создан! (В Linux это делается с помощью команды useradd).
  2. Создайте каталог (мы называем его mariadb-data в примере ниже) или добавьте символическую ссылку на каталог, расположенный в другом месте.
  3. Создайте таблицы разрешений mysql с помощью mariadb-install-db
cd /usr/local/
mkdir mariadb-data
cd mariadb
./bin/mariadb-install-db --no-defaults --datadir=/usr/local/mariadb-data
chown -R mysql mariadb-data mariadb-data/*

Причина использования --no-defaults заключается в том, чтобы гарантировать, что мы не унаследуем неправильные параметры от старого my.cnf.

Настройка различных каталогов данных

Для создания различных каталогов data для каждой установки:

cd mariadb
./scripts/mariadb-install-db --no-defaults
chown -R mysql mariadb-data mariadb-data/*

Это создаст каталог data внутри текущего каталога.

Если вы хотите использовать другой диск, выполните следующие действия:

cd mariadb
ln -s path-to-empty-directory-for-data data
./scripts/mariadb-install-db --no-defaults --datadir=./data
chown -R mysql mariadb-data mariadb-data/*

Запуск сервера MariaDB

Обычные шаги:

rm mariadb
ln -s mariadb-# mariadb
cd mariadb
./bin/mysqld_safe --no-defaults --datadir=/usr/local/mariadb-data &

Настройка файла .my.cnf для запуска нескольких основных версий MariaDB

Если вы собираетесь многократно запускать/останавливать MariaDB, вам следует создать файл ~/.my.cnf для общих параметров, которые вы используете.

Следующий пример показывает, как использовать нестандартный TCP-порт и сокет (чтобы не конфликтовать с основным сервером MySQL/MariaDB) и как настроить разные параметры для каждого основного сервера:

[client-server]
socket=/tmp/mysql.sock
port=3306
[mysqld]
datadir=/usr/local/mariadb-data

[mariadb-11.0]
# Options for MariaDB 11.0
[mariadb-11.1]
# Options for MariaDB 11.1

Если вы создали файл ~/.my.cnf, вы должны запустить mysqld с --defaults-file=~/.my.cnf вместо --no-defaults в примерах выше.

Контент, воспроизведенный на этом сайте, является собственностью соответствующих владельцев, и этот контент не предварительно проверяется компанией MariaDB. Мнения, информация и мнения, выраженные в этом контенте, не обязательно отражают позицию MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/switching-between-different-installed-mariadb-versions/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API