5.7.2.2 Запуск нескольких экземпляров MySQL как служб Windows
В Windows сервер MySQL может работать как служба Windows. Процедуры установки, управления и удаления одной службы MySQL описаны в разделе 2.3.4.8 «Запуск MySQL как службы Windows».
Для настройки нескольких служб MySQL необходимо убедиться, что каждый экземпляр использует разное имя службы помимо других параметров, которые должны быть уникальными для каждого экземпляра.
Для следующих инструкций предположим, что вы хотите запустить сервер mysqld из двух разных версий MySQL, установленных соответственно в C:\mysql-5.7.9 и C:\mysql-5.7.44. (Это может потребоваться, если вы работаете с версией 5.7.9 в качестве сервера производства, но также хотите проводить тесты с помощью 5.7.44.)
Для установки MySQL в качестве службы Windows используйте параметр --install или --install-manual. Сведения об этих параметрах см. в разделе 2.3.4.8 «Запуск MySQL как службы Windows».
Основываясь на приведенной выше информации, у вас есть несколько способов настройки нескольких служб. Следующие инструкции описывают некоторые примеры. Перед выполнением любых из них остановите и удалите все существующие службы MySQL.
-
Подход 1: Укажите параметры для всех служб в одном из стандартных файлов параметров. Для этого используйте различное имя службы для каждого сервера. Предположим, что вы хотите запустить MySQL 5.7.9 mysqld с именем службы
mysqld1и MySQL 5.7.44 mysqld с именем службыmysqld2. В этом случае вы можете использовать группу[mysqld1]для 5.7.9 и группу[mysqld2]для 5.7.44. Например, вы можете настроитьC:\my.cnfследующим образом:# options for mysqld1 service [mysqld1] basedir = C:/mysql-5.7.9 port = 3307 enable-named-pipe socket = mypipe1 # options for mysqld2 service [mysqld2] basedir = C:/mysql-5.7.44 port = 3308 enable-named-pipe socket = mypipe2
Установите службы следующим образом, используя полные имена путей к серверу для обеспечения того, что Windows зарегистрирует правильную исполняемую программу для каждой службы:
C:\>
C:\mysql-5.7.9\bin\mysqld --install mysqld1C:\>C:\mysql-5.7.44\bin\mysqld --install mysqld2Для запуска служб используйте диспетчер служб или NET START или SC START с соответствующими именами служб:
C:\>
SC START mysqld1C:\>SC START mysqld2Для остановки служб используйте диспетчер служб или команду NET STOP или SC STOP с соответствующими именами служб:
C:\>
SC STOP mysqld1C:\>SC STOP mysqld2 -
Подход 2: Укажите параметры для каждого сервера в отдельных файлах и используйте
--defaults-fileпри установке служб, чтобы указать каждому серверу, какой файл использовать. В этом случае каждый файл должен перечислять параметры, используя группу[mysqld].С этим подходом для указания параметров для MySQL 5.7.9 mysqld создайте файл
C:\my-opts1.cnf, который выглядит следующим образом:[mysqld] basedir = C:/mysql-5.7.9 port = 3307 enable-named-pipe socket = mypipe1
Для MySQL 5.7.44 mysqld создайте файл
C:\my-opts2.cnf, который выглядит следующим образом:[mysqld] basedir = C:/mysql-5.7.44 port = 3308 enable-named-pipe socket = mypipe2
Установите службы следующим образом (введите каждую команду в отдельной строке):
C:\>
C:\mysql-5.7.9\bin\mysqld --install mysqld1--defaults-file=C:\my-opts1.cnfC:\>C:\mysql-5.7.44\bin\mysqld --install mysqld2--defaults-file=C:\my-opts2.cnfПри установке сервера MySQL как службы и использовании параметра
--defaults-file, имя службы должно предшествовать параметру.После установки служб запустите и остановите их так же, как в предыдущем примере.
Для удаления нескольких служб используйте SC DELETE mysqld_service_name для каждой. В качестве альтернативы используйте mysqld --remove для каждой, указав имя службы после параметра --remove. Если имя службы является стандартным (MySQL), вы можете опустить его при использовании mysqld --remove.
© 2025 Oracle
Licensed under the GPLv2 License.