MySqlは、外部ネットワーク接続クライアントの低速問題を解決するためにskip-name-resolveを使用します。

MySqlは、外部ネットワーク接続クライアントの低速問題を解決するためにskip-name-resolveを使用します。

Tencent Cloud上に構築されたMySQLは、開発用コンピュータでNavicatを使用してアクセスすると常に非常に遅くなります。Mysqlは要求されたアドレスに対してドメイン名解決を実行することが判明しました。開発用コンピュータにはドメイン名がないため、非常に遅くなります。次の方法で解決します。

[mysqld]
名前解決をスキップ
スキップ許可テーブル

公式説明

MySQLの仕組み
新しいスレッドがmysqldに接続すると、mysqldは
リクエストを処理するために新しいスレッドを生成します。このスレッドはまず
ホスト名がホスト名キャッシュにある場合。ない場合はスレッドは
gethostbyaddr_r()とgethostbyname_r()を使用してホスト名を解決します。
オペレーティングシステムは上記のスレッドセーフな呼び出しをサポートしていません。
スレッドはミューテックスをロックし、gethostbyaddr()とgethostbyname()を呼び出します。
この場合、他のスレッドは他のスレッドを解決できないことに注意してください。
最初のスレッドが実行されるまでホスト名キャッシュに存在しないホスト名
準備完了。DNSホストルックアップを無効にするには、mysqldを次のように起動します。
–skip-name-resolve。ただし、この場合、IP名のみを使用できます。
MySQLの権限テーブル。非常に遅いDNSと多くの
ホストの場合、DNSルックアップを無効にするか、
–skip-name-resolveを使用するか、HOST_CACHE_SIZE定義を増やすことで
(デフォルト:128)mysqldを再コンパイルします。ホスト名を無効にすることができます
–skip-host-cacheでキャッシュします。ホスト名のキャッシュをクリアするには、
FLUSH HOSTSまたはmysqladmin flush-hostsを実行します。
TCP/IP経由の接続の場合は、mysqldを次のように起動します。
--ネットワークをスキップします。

ドキュメントによると、mysql ホストの DNS クエリが非常に遅い場合、またはクライアント ホストの数が多い場合は、接続が非常に遅くなります。開発マシンは外部ネットワークに接続できないため、DNS 解決を完了できず、接続が非常に遅くなる理由が説明できます。同時に、この構成パラメータを追加した後、ドメイン名の解決が禁止されるため、MySQL 認証テーブルのホスト フィールドではドメイン名を使用できず、IP アドレスのみを使用できるようになることに注意してください。

要約する

上記は、MySql で skip-name-resolve を使用して、外部ネットワーク接続クライアントの速度が遅い問題を解決する方法について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • IDEA で MySQL にリンクするとエラー 08001 が発生し、接続に成功した後にテーブルが表示されない問題と解決策
  • MySQLにNavicatをインストールした後、2059が表示され、認証プラグインとローカルリンク仮想マシンdocker、リモートリンクサーバー
  • Python pymysql リンク データベース クエリ結果を Dataframe インスタンスに変換
  • MySQL マルチテーブルクエリ例の詳しい解説 [リンククエリ、サブクエリなど]
  • 操作例 MySQL ショートリンク
  • MySql 8.0.11 のインストール プロセスと Navicat とのリンク時に発生する問題の概要
  • MySQLグループリンクの使用に関する詳細な説明
  • SSHトンネルを使用してMySQLサーバーに接続する方法
  • MySQL リンクを表示し、異常なリンクを削除する方法

<<:  Docker コンテナのログを表示およびクリーンアップする方法 (テスト済みで効果的)

>>:  Expressを使用してプロジェクトを自動的にビルドするNode.jsのプロセス全体

推薦する

Nginx ポート競合を解決するトラブルシューティング方法の例

問題の説明データ転送に Nginx を使用し、フロントエンドとバックエンドが分離された Spring...

Docker クリーンアップ環境操作

丁寧に掃除を始めましょう!未使用ボリュームの一覧docker ボリューム ls -qf dangli...

JavaScript をスリープまたは待機させる方法

目次概要setTimeout() の確認スリープ関数の書き方シンプルな選択ループで実行されますか?要...

Firefox または IE でスパン幅が決定されない場合の解決策

コードをコピーコードは次のとおりです。 <html xmlns="http://ww...

Vueのリストレンダリングの詳細な説明

目次1. v-for: 配列の内容を走査する(よく使われる) 2. v-for: オブジェクトのプロ...

CocosCreator 入門チュートリアル: TS で初めてのゲームを作る

目次前提TypeScript と JavaScriptコードエディタの選択TypeScriptを学ぶ...

LinuxにNginxをインストールする詳細な手順

1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...

docker windows10共有ディレクトリのマウント失敗の解決策

原因docker スクリプトを実行すると、コンテナを作成できないというエラーが発生します。以下のよう...

Mysqlの同時パラメータ調整の詳細な説明

目次クエリキャッシュの最適化概要クエリプロセスクエリキャッシュ構成クエリキャッシュの無効化メモリ管理...

JavaScript のマクロタスクとマイクロタスクの詳細

目次1. マイクロタスクとは何ですか? 2. マクロタスクとは何ですか? 3. 事例3.1 結論4....

Webpack4プラグインの実装原理についての簡単な説明

目次序文知る練習すれば完璧になる序文wabpack では、ローダーの他にプラグインがコア機能です。プ...

優れたウェブサイトのコピーライティングと優れたユーザーエクスペリエンス

ウェブサイトを見るというのは、実は美しい女性を評価するようなものです。見た目を見るとき、私たちは見た...

IDEA2020.1.2 Webプロジェクトの作成とTomcatの設定に関する詳細なチュートリアル

この記事は、IDEA で Web プロジェクトを作成し、Tomcat を構成する方法についての統合記...

iframe を通じて DOM 要素のサイズ変更を監視する

開発プロセス中によく発生する問題は、div のサイズ変更をどのように監視するかということです。たとえ...

Vue で PC アドレスをモバイル アドレスにリダイレクトする方法

要件:PC側とモバイル側は2つの独立したプロジェクトです。2つのプロジェクトの内容は基本的に同じで、...