MySQL のすべてのホストからの root アクセスを許可する
インターネット上のすべてのホストから root アクセスを許可しようとしたときに問題が発生しましたリモート Ubuntu マシン上の MySQL の場合。 mysql.user テーブルに「host = %」の行を追加しようとする最初の試みでは、個人の PC からの接続の問題は解決されていません。
これを解決するには、次の 2 つの重要な手順が必要です。
1.権限の付与
root ユーザーとして、「password」を現在の root パスワードに置き換えて次のコマンドを実行します。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';
2.すべてのアドレスへのバインド
MySQL をすべてのインターフェイスにバインドし、すべてのホストからの接続を許可するには、/etc/mysql/my.cnf (または /etc/mysql/mysql.cnf) 内の次の行をコメント アウトします。 conf.d/mysqld.cnf (Ubuntu 16 の場合):
#bind-address = 127.0.0.1
再起動MySQL の使用:
service mysql restart
デフォルトでは、MySQL は localhost にのみバインドしますが、この行をコメントアウトすると、使用可能なすべてのインターフェイスにバインドし、すべてのホストからの接続を受け入れるように指示されます。
バインディング、root として実行:
netstat -tupan | grep mysql
これにより、MySQL がリッスンしているアドレスとポートが表示されます。 MySQL がすべての IPv4 および IPv6 アドレスをリッスンしていることを示す「0.0.0.0:3306」または「[::]:3306」の行が含まれていることを確認します (コメントアウトされている場合は「*」)。
以上がリモート Ubuntu マシン上の MySQL ですべてのホストからの root アクセスを許可するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。