7.8.2.2 Запуск нескольких экземпляров MySQL в качестве служб Windows
В Windows сервер MySQL может работать как служба Windows. Процедуры установки, управления и удаления одной службы MySQL описаны в разделе 2.3.3.8, «Запуск MySQL в качестве службы Windows».
Для настройки нескольких служб MySQL необходимо убедиться, что каждый экземпляр использует другое имя службы помимо других параметров, которые должны быть уникальны для каждого экземпляра.
Для следующих инструкций предположим, что вы хотите запустить сервер mysqld из двух разных версий MySQL, установленных соответственно в C:\mysql-5.7.9 и C:\mysql-8.4.4. (Это может быть необходимо, если вы используете 5.7.9 в качестве сервера производства, но также хотите проводить тесты с использованием 8.4.4.)
Для установки MySQL в качестве службы Windows используйте опцию --install или --install-manual. Сведения об этих опциях см. в разделе 2.3.3.8, «Запуск MySQL в качестве службы Windows».
Исходя из вышеизложенного, у вас есть несколько способов настройки нескольких служб. Следующие инструкции описывают некоторые примеры. Перед выполнением любой из них, остановите и удалите все существующие службы MySQL.
-
Способ 1: Укажите параметры для всех служб в одном из стандартных файлов параметров. Для этого используйте разные имена служб для каждого сервера. Предположим, что вы хотите запустить mysqld 5.7.9 с именем службы
mysqld1и mysqld 8.4.4 с именем службыmysqld2. В этом случае вы можете использовать группу[mysqld1]для 5.7.9 и группу[mysqld2]для 8.4.4. Например, вы можете настроить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-8.4.4 port = 3308 enable-named-pipe socket = mypipe2
Установите службы следующим образом, используя полные имена путей к серверу, чтобы гарантировать, что Windows зарегистрирует правильную исполняемую программу для каждой службы:
C:\>
C:\mysql-5.7.9\bin\mysqld --install mysqld1C:\>C:\mysql-8.4.4\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].С помощью этого способа, чтобы указать параметры для mysqld 5.7.9, создайте файл
C:\my-opts1.cnf, который выглядит так:[mysqld] basedir = C:/mysql-5.7.9 port = 3307 enable-named-pipe socket = mypipe1
Для mysqld 8.4.4 создайте файл
C:\my-opts2.cnf, который выглядит так:[mysqld] basedir = C:/mysql-8.4.4 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-8.4.4\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.