MySQLデータベースに他のIPアドレスからアクセスできない問題の解決策

MySQLデータベースに他のIPアドレスからアクセスできない問題の解決策

序文

先ほどのプロジェクトを参考にすると、環境は整いました。プロジェクトの準備と検証の段階で、問題が発見されました。上位アプリケーションからアプリケーションへの認証アクセスを入力すると、常に待機状態になりました。正しいユーザー名とパスワードを入力しても、アクセスできませんでした。データベース接続にアクセスする方法がないようです。

デプロイメント後の MySQL のポートは通常 3306 です。ポート 3306 に対して ping と telnet を試してください。IP は ping できますが、ポート 3306 に対しては telnet できず、エラー メッセージが表示されます。

エラー 1130: ホスト *.*.*.* は MySQL への接続が許可されていません

このエラーを見た後、オンラインで検索したところ、基本的に多くの解決策があることがわかりましたが、なぜそれについて具体的に書く必要があるのでしょうか?

答えは、MySQL 5.6 についてはインターネット上に多くの解決策があります。5.7 では、このエラーの解決策は次のとおりです。

1. MySQL に初めてログインした後、適時にルート パスワードを変更する必要があります。バージョン 5.6 と 5.7 には違いがあります。バージョン 5.6 のパスワード フィールドは password ですが、バージョン 5.7 ではこのフィールドは取り消され、authentication_string フィールドに置き換えられています。

正しい変更方法は次のとおりです。

ユーザーを更新します。set authentication_string=password("xxxx") where user = "root";
権限をフラッシュします。

2. 変更後、use mysql コマンドを使用して mysql ライブラリに切り替えます。この mysql ライブラリは実際に mysql 内に存在し、いくつかの db 関連情報を保存していることに注意してください。

コマンド: use mysql;

3. ユーザー テーブルを見つけて、次のコマンドを実行します。

'JLwg!2017' で識別される 'root'@'%' に、GRANT オプションを使用して *.* のすべての権限を付与します。

これを変更する方法はインターネット上にたくさんあり、全部で 4 つあるはずですが、私はそのうちの 1 つを使用しています。

このコマンドは、すべての IP アドレスがこのユーザーにアクセスできるように、ルート ユーザーのアクセス権を変更することを意味します。このようにして、アプリケーションは外部 IP アドレスからこの mysql にアクセスできます。そうしないと、localhost のみがアクセスでき、非常に不便です。

4. 最後に、 flush privileges;コマンドを実行して Mysql サービスを再起動すると、アプリケーションは正常にログインします。

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただき、ありがとうございます。

以下もご興味があるかもしれません:
  • mysql は指定された IP リモート アクセス接続インスタンスを設定します

<<:  Linuxでディスク使用量を確認する方法

>>:  CentOS7 のシステム サービスに Nginx を追加する方法

推薦する

MySQL からエクスポートされた scv ファイル内の文字化けやジャンプ行の問題をすばやく解決します

仕事上の理由により、完全なオンライン化(​​つまり、すべてのデータがオンラインで完了し、インポートや...

複数の Tomcat を展開して起動し、プロジェクトを移行する方法を 1 つの記事で学習します。

目次tomcatをデプロイする1.ダウンロードして解凍する2. 設定ファイルを変更する移植プロジェク...

MySQL 8.0 でのチェック制約の実装

みなさんこんにちは。私は技術の話ばかりして髪を切らない先生のトニーです。今回はMySQL 8.0で追...

React NativeとiOSの相互作用の詳細な説明

目次前提条件RNはiOSに価値を渡す方法1: ネイティブに値を通常通り渡す方法2: コールバック関数...

js シンプルで粗雑なパブリッシュとサブスクライブのサンプルコード

パブリッシュ/サブスクライブとは何ですか?例を挙げてみましょう。あなたは服を買うために店に行きます。...

Dockerは起動されていないコンテナの設定情報を変更します

私が初めてdockerを使用したときは、dockerfileやdocker-composeを使用して...

Vue で echarts を使用してコンポーネントを視覚化する方法

echarts コンポーネントの公式ウェブサイト アドレス: https://echarts.apa...

HTML のブロックレベル要素と行レベル要素、特殊文字、ネスト規則

基本的な HTML Web ページ タグのネスト ルールを紹介する場合、最初に説明する必要があるのは...

MySQL 8.0.19 では、間違ったパスワードを 3 回入力するとアカウントがロックされるようになりました (例)

MySQL 8.0.19 では、間違ったパスワードを 3 回入力するとアカウントがロックされるよう...

Navicat による MySQL パーティショニングの実践

MySQLのパーティショニングは、非常に大きなテーブルを管理するのに役立ちます。MySQLのパーティ...

jQuery で従業員管理登録ページを実装する

この記事では、従業員管理登録ページを実装するためのjQueryの具体的なコードを例として紹介します。...

ウェブページをデザインするには?ウェブページを作成するには?

Web デザインの理解に関しては、多くの人がまだ Web ページ制作のレベルにとどまっているようで...

CSSの省略記号とパディングを組み合わせた場合の問題の詳細な説明

CSS によるテキストの切り捨てテキストを自動的に切り捨てるスタイル コードを実装するには、次のコー...

MySQL レプリケーション メカニズムの原理の説明

背景レプリケーションはデータの完全なコピーです。レプリケーションが必要な理由として、まず思い浮かぶの...