Запуск нескольких процессов сервера MariaDB
Можно запустить несколько процессов сервера MariaDB на одном сервере, но при этом необходимо учитывать некоторые моменты. На этой странице будут рассмотрены некоторые из этих моментов.
Настройка нескольких процессов сервера MariaDB
Если на одном сервере работают несколько процессов сервера MariaDB, то как минимум необходимо убедиться, что разные экземпляры не используют одни и те же datadir, port, и socket. Следующий пример демонстрирует эти параметры, заданные в файле параметров:
[client] # TCP port to use to connect to mysqld server port=3306 # Socket to use to connect to mysqld server socket=/tmp/mysql.sock [mariadb] # TCP port to make available for clients port=3306 # Socket to make available for clients socket=/tmp/mysql.sock # Where MariaDB should store all its data datadir=/usr/local/mysql/data
Вышеперечисленные значения являются значениями по умолчанию. Если вы хотите запустить несколько экземпляров сервера MariaDB на одном сервере, вам необходимо установить уникальные значения для каждого экземпляра.
Возможно, потребуются дополнительные параметры, которые также необходимо изменить для каждого экземпляра. Ознакомьтесь со полным списком параметров для mysqld.
Чтобы увидеть текущие значения, заданные для экземпляра, см. Проверка параметров программы для получения информации о том, как это сделать.
Чтобы отобразить значения по умолчанию, проверьте конец:
mysqld --help --verbose
Запуск нескольких процессов сервера MariaDB
Существует несколько различных методов запуска или остановки процесса сервера MariaDB. Большинство из этих методов можно разделить на две основные категории: запуск процесса с помощью диспетчера служб и ручная загрузка процесса. Более подробная информация содержится в разделе Запуск и остановка MariaDB.
Диспетчеры служб
sysVinit и systemd являются наиболее распространенными диспетчерами служб Linux. launchd используется в MacOS X. Upstart — менее распространенный диспетчер служб.
Systemd
RHEL/CentOS 7 и выше, Debian 8 Jessie и выше, а также Ubuntu 15.04 и выше по умолчанию используют systemd.
Дополнительную информацию о том, как запустить и остановить несколько процессов сервера MariaDB на одном сервере с этим диспетчером служб, см. в разделе systemd: Взаимодействие с несколькими процессами сервера MariaDB.
Запуск процесса сервера вручную
mysqld
mysqld — фактический двоичный файл сервера MariaDB. Его можно запустить вручную самостоятельно.
Если вы хотите заставить каждый экземпляр читать только один файл параметров, то можно использовать параметр --defaults-file:
mysqld --defaults-file=/etc/my_instance1.cnf
mysqld_safe
mysqld_safe — оболочка, которую можно использовать для запуска процесса сервера mysqld. Скрипт имеет встроенные меры предосторожности, такие как автоматическое перезапуск процесса сервера в случае его сбоя. Более подробная информация приведена в mysqld_safe.
Если вы хотите заставить каждый экземпляр читать только один файл параметров, то можно использовать параметр --defaults-file:
mysqld_safe --defaults-file=/etc/my_instance1.cnf
mysqld_multi
mysqld_multi — оболочка, которую можно использовать для запуска процесса сервера mysqld, если вы планируете запустить несколько процессов сервера на одном узле. Более подробная информация приведена в mysqld_multi.
Другие варианты
В некоторых случаях могут быть более простые способы запуска нескольких экземпляров сервера MariaDB на одном сервере, например:
- Использование dbdeployer.
- Запуск нескольких контейнеров Docker.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/running-multiple-mariadb-server-processes/