5.1.12.4 Подключение с использованием адресов IPv6 нелокального хоста
Следующая процедура демонстрирует, как настроить MySQL для разрешения подключений IPv6 удалёнными клиентами. Она аналогична предыдущей процедуре для локальных клиентов, но серверный и клиентский хосты являются разными и каждый имеет свой уникальный адрес IPv6. В примере используются следующие адреса:
Server host: 2001:db8:0:f101::1
Client host: 2001:db8:0:f101::2
Эти адреса выбраны из диапазона немаршрутизируемых адресов, рекомендованного IANA для целей документирования и подходят для тестирования в локальной сети. Для принятия подключений IPv6 от клиентов за пределами локальной сети серверный хост должен иметь публичный адрес. Если ваш провайдер предоставляет вам адрес IPv6, вы можете его использовать. В противном случае, другой способ получения адреса — использование брокера IPv6; см. Раздел 5.1.12.5 «Получение адреса IPv6 от брокера».
-
Запустите сервер MySQL с соответствующей настройкой
bind_address, чтобы разрешить ему принимать подключения IPv6. Например, вставьте следующие строки в файл опций сервера и перезапустите сервер:[mysqld] bind_address = *
В качестве альтернативы, вы можете привязать сервер к
2001:db8:0:f101::1, но это сделает сервер более ограниченным для подключений TCP/IP. Он будет принимать только подключения IPv6 для этого единственного адреса и отклонять подключения IPv4. Для получения дополнительной информации, см. описаниеbind_addressв разделе 5.1.7 «Системные переменные сервера». -
На серверном хосте (
2001:db8:0:f101::1) создайте учётную запись для пользователя, который подключается с клиентского хоста (2001:db8:0:f101::2):mysql>
CREATE USER 'remoteipv6user'@'2001:db8:0:f101::2' IDENTIFIED BY 'remoteipv6pass'; -
На клиентском хосте (
2001:db8:0:f101::2) вызовите клиент mysql, чтобы подключиться к серверу с использованием новой учётной записи:$>
mysql -h 2001:db8:0:f101::1 -u remoteipv6user -premoteipv6pass -
Попробуйте несколько простых операторов, которые покажут информацию о подключении:
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.