リモートの MySQL データベースを長時間使用しています。
しかし今日、突然データベースに接続できないことに気付きました。エラーが発生しました。
「IP アドレスからホスト名を取得できません」。
MySQL の設定は何も変更していません。
どうしたの?
my.ini以下のまたはを追加するだけmy.cnfです。
[mysqld]
skip-name-resolve
Linux:
それ以外の場合は、次のフラグを使用して MySQL サーバーを起動します。
sudo service --skip-name-resolve
詳細情報: http://dev.mysql.com/doc/refman/5.0/en/host-cache.html
この質問がかなり前に出されたことは知っていますが、ほとんどの人は今では理解していますが、まだ理解していない人のために、これが私の解決策です。
接続文字列にサーバー名を含むポート番号を追加します
connectionstring = "server=server;Port=3306;User Id=UserNAme;password=password;Persist Security Info=True;database=DatabaseName;convert zero datetime=true";
Windows でも同じエラー メッセージが表示されます。私の問題は、ローカル サーバーのホスト ファイルにあることがわかりました。ファイル c:\windows\system32\drivers\etc\host で使用する localhost または任意のホスト名を確認します。
元のホスト ファイル: 127.0.0.1 localhost ::1 localhost
2 行目を削除して、1 行目のみを使用します: 127.0.0.1 localhost
次に、私の問題について、問題は解決しました。それが役に立てば幸い。
Windows 10 マシンに MySQL 8 をインストールするときに、この問題に遭遇しました。インターネットで見つかった解決策のほとんどは、skip-name-resolve私にとってはうまくいかなかった設定です。最後に、私のために働いたこれを見つけました:
netsh winsock reset
次に、コンピューターを再起動します。セットもお試し
127.0.0.1 localhost
必要に応じて%windir%\System32\drivers\etc\hosts。