Spec-Zone.ru › MySQL 8.4

7.1.13.4 Подключение с использованием адресов IPv6 нелокальных хостов

Следующая процедура показывает, как настроить MySQL для разрешения подключений IPv6 удаленными клиентами. Она похожа на предыдущую процедуру для локальных клиентов, но сервер и клиентские хосты являются отдельными и каждый из них имеет свой собственный нелокальный адрес IPv6. В примере используются следующие адреса:

Server host: 2001:db8:0:f101::1
Client host: 2001:db8:0:f101::2

Эти адреса выбраны из диапазона немаршрутизируемых адресов, рекомендуемого IANA для целей документации и подходят для тестирования в локальной сети. Для приема подключений IPv6 от клиентов за пределами локальной сети хост сервера должен иметь публичный адрес. Если ваш поставщик сети назначает вам адрес IPv6, вы можете его использовать. В противном случае другой способ получения адреса — использование прокси-сервера IPv6; см. раздел 7.1.13.5 «Получение адреса IPv6 от прокси-сервера».

  1. Запустите сервер MySQL с соответствующим значением bind_address, чтобы разрешить ему принимать подключения IPv6. Например, поместите следующие строки в файл опций сервера и перезапустите сервер:

    [mysqld]
    bind_address = *
    

    Указание * (или ::) в качестве значения для bind_address разрешает подключения IPv4 и IPv6 на всех интерфейсах IPv4 и IPv6 хоста сервера. Если вы хотите привязать сервер к определенному списку адресов, вы можете сделать это, указав список значений через запятую для bind_address. В этом примере указан IPv4-адрес и необходимый адрес IPv6 хоста сервера:

    [mysqld]
    bind_address = 198.51.100.20,2001:db8:0:f101::1
    

    Дополнительную информацию см. в описании bind_address в разделе 7.1.8 «Системные переменные сервера».

  2. На хосте сервера (2001:db8:0:f101::1) создайте учетную запись для пользователя, который может подключаться с хоста клиента (2001:db8:0:f101::2):

    mysql> CREATE USER 'remoteipv6user'@'2001:db8:0:f101::2' IDENTIFIED BY 'remoteipv6pass';
    
  3. На хосте клиента (2001:db8:0:f101::2) вызовите клиент mysql для подключения к серверу с помощью новой учетной записи:

    $> mysql -h 2001:db8:0:f101::1 -u remoteipv6user -premoteipv6pass
    
  4. Попробуйте несколько простых операторов, которые показывают информацию о подключении:

    mysql> STATUS
    ...
    Connection:   2001:db8:0:f101::1 via TCP/IP
    ...
    
    mysql> SELECT CURRENT_USER(), @@bind_address;
    +-----------------------------------+----------------+
    | CURRENT_USER()                    | @@bind_address |
    +-----------------------------------+----------------+
    | remoteipv6user@2001:db8:0:f101::2 | ::             |
    +-----------------------------------+----------------+
    

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/ipv6-remote-connections.html

Spec-Zone.ru

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