Documentation Home
MySQL 8.0 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 36.1Mb
PDF (A4) - 36.2Mb


MySQL 8.0 リファレンスマニュアル  /  ...  /  IPv6 非ローカルホストアドレスを使用した接続

このページは機械翻訳したものです。

5.1.13.4 IPv6 非ローカルホストアドレスを使用した接続

次の手順では、リモートクライアントによる IPv6 接続を許可するために MySQL を構成する方法を示します。 これは前に示したローカルクライアントについての手順と似ていますが、サーバーとクライアントホストが別個であり、それぞれがローカル以外の独自の IPv6 アドレスを持ちます。 この例では次のアドレスが使用されます。

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

これらのアドレスは、文書化目的で IANA によって推奨されるルーティングできないアドレス範囲から選択され、ローカルネットワークでの試験向けには十分です。 ローカルネットワーク外部のクライアントから IPv6 接続を受け入れるには、サーバーホストが公開アドレスを持つ必要があります。 ネットワークプロバイダによって IPv6 アドレスが割り当てられている場合、それを使用できます。 そうでない場合、アドレスを取得するための別の方法は、IPv6 ブローカを使用する方法で、セクション5.1.13.5「ブローカからの IPv6 アドレスの入手」を参照してください。

  1. 適切な bind_address 設定を使用して MySQL サーバーを起動し、IPv6 接続の受入れを許可します。 たとえば、次の行をサーバーオプションファイルに入れて、サーバーを再起動します。

    [mysqld]
    bind_address = *

    bind_address の値として *(または::) を指定すると、すべてのサーバーホストの IPv4 および IPv6 インタフェースで IPv4 と IPv6 の両方の接続が許可されます。 サーバーを特定のアドレスリストにバインドする場合は、bind_address にカンマ区切りの値リストを指定することで、MySQL 8.0.13 の時点でこれを実行できます。 この例では、IPv4 アドレスと必要なサーバーホストの IPv6 アドレスを指定します:

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

    詳細は、セクション5.1.8「サーバーシステム変数」bind_address の説明を参照してください。

  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 クライアントを呼び出し、新しいアカウントを使用するサーバーに接続します。

    shell> 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 | ::             |
    +-----------------------------------+----------------+