问题MySQLのエラー(2013):初期通信パケットを待っているのMySQLサーバへの接続が失われました

エラー説明:

SQLエラー(2013):失われた「初期通信パケットを待っている」でのMySQLサーバへの接続、システムエラー

分析:
MySQLのクライアント接続は、DNSホスト名検索を行いますので、MySQLは、リバースDNS解決機能をオープンしました。
mysqlクライアントは、処理プロセスを解析:
1)する場合でもオーバーのmysqlクライアント、サーバーはクライアントのドメインを確認するためのイニシアチブをとるだろう。
2)まず、/ etc / hostsファイル、ドメイン名とIP対応の検索を見つけます。
hostsファイルがない場合、タイムアウト接続が失敗するまで3)、DNS設定の外観は、逆引きDNSを実行します。
リバースDNSをのmysql:
1)mysqlは接続要求を受け、クライアントは)いくつかのホスト名が定義されている(より良い試合mysql.user権限レコードするために、IPを得ることです。
サーバはDNSのMySQLサーバーをセットアップして、クライアントが適切にホスト名をIP DNSいない場合は2)、その後、プロセスは、接続待ちにつながる、非常に遅いです。

解決法:
1)MySQLサーバのIP / etc / hostsファイルに記述されたクライアントのホストマッピングに名前を与えることはありません。
2)コンフィギュレーションファイルのmy.cnfの[mysqldを]領域はスキップ名前解決、即ち、DNS解決機能のMySQL逆接続をスキップ追加、これは十分性能MySQLを向上させることができます。この場合は、あなただけのサービスに接続するためにmysqlのIPでのMySQL権限テーブルを使用することができます。
第一の方法について明らかに実用的で、愚かではありません!第二の方法は、強く無効にDNS解決にスキップ-name-resolveオプションを追加することをお勧めします、このような場合は、あなただけのIPを使用することができ、MySQLで権限テーブルでホスト名を使用することはできません。

そして、mysqlのサービスmysqldがサービスを再起動し、再起動
------------------------------------------- -------------------------------------------------- -----------------
また:
あなたはmy.cnfファイルに結合バインド・アドレスアドレスアドレスを設定する場合(これだけの結合を介してリモートで別のマシンを説明コメントすることができる接続のmysqlへのマシンアドレス)、。
たとえば、次のように
説明したバインドアドレス= 127.0.0.1 // MySQLは唯一のマシンに接続することができ、かつ-h 127.0.0.1やlocalhostのことで、リモートのMySQLに接続することができません!
-------------------------------------------------- -------------------------------------------------- ----------

いくつかのパラメータのmy.cnfの設定:
スキップスキップ名-逆引きDNS解決プロセス(あなたは、唯一の接続、IP接続のホスト名のMySQLを使用することはできませんので)。
テーブルのスキップ・グラント承認テーブルをスキップ(ときmysqlのログインパスワードを忘れたとき溶液)
、スキップスキップネットワーキングTCP / IP接続を
無効にするホスト名キャッシュ・ホスト・キャッシュをスキップし、ホスト名のキャッシュをクリアするには、FLUSH HOSTSステートメントを実行するか、またはmysqladminのフラッシュ・ホストのコマンドを実行します

 

おすすめ

転載: www.cnblogs.com/liuyanan/p/12006622.html