Spec-Zone.ru › MySQL 5.7

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 mysqld1
    C:\> C:\mysql-5.7.44\bin\mysqld --install mysqld2
    

    Для запуска служб используйте диспетчер служб или NET START или SC START с соответствующими именами служб:

    C:\> SC START mysqld1
    C:\> SC START mysqld2
    

    Для остановки служб используйте диспетчер служб или команду NET STOP или SC STOP с соответствующими именами служб:

    C:\> SC STOP mysqld1
    C:\> 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.cnf
    C:\> 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.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/multiple-windows-services.html

Spec-Zone.ru

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