Spec-Zone .ru
спецификации, руководства, описания, API
|
Следующая процедура показывает, как сконфигурировать MySQL, чтобы разрешить соединения IPv6 удаленными клиентами. Это подобно предыдущей процедуре для локальных клиентов, но серверу, и хосты клиента отличны, и у каждого есть его собственный нелокальный адрес IPv6. Пример использует эти адреса:
Server host: 2001:db8:0:f101::1Client host: 2001:db8:0:f101::2
Эти адреса выбираются из nonroutable адресного пространства, рекомендуемого
Запустите сервер MySQL с соответствующего --bind-address
опция, чтобы разрешить этому принимать соединения IPv6.
Например, поместите следующие строки в свой файл параметра сервера и перезапустите сервер:
[mysqld]bind-address = * # before 5.6.6, use :: rather than *
Альтернативно, можно связать сервер с 2001:db8:0:f101::1
, но это делает
сервер более рестриктивным для соединений TCP/IP. Это принимает только соединения IPv6 для того
единственного адреса и отклоняет соединения IPv4. Для получения дополнительной информации см. Раздел 5.1.9.2,
"Конфигурируя Соединения IPv6 MySQL Server to Permit".
На узле сервера (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 клиент, чтобы соединиться с сервером, используя
новую учетную запись:
shell> 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 | :: |+-----------------------------------+----------------+