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インデックスが失敗するいくつかの状況の詳細な分析

1. 先頭のあいまいクエリではインデックスを使用できません (「%XX」や「%XX%」など)コード値...

丸い角や鋭い角の代わりに文字を使用することに関する研究経験の共有

1. フォントと文字表示の関係左側と右側の鋭角部分は Songti フォントで表示されます: &l...

Nodejs は JSON 文字列を JSON オブジェクトに変換するエラー解決法

JSON 文字列を JSON オブジェクトに変換するにはどうすればいいですか? JSON.parse...

太字の <b> と <strong> の違いの分析

私たちウェブマスターは皆、ウェブサイトを最適化する際に記事内のキーワードを太字にすることが最適化に非...

HTML およびプラグイン アプリケーションにおけるデータ カスタム属性の使用の概要

HTML にはデータ属性が含まれていることがよくあります。これらは HTML5 のカスタム属性です。...

Docker に Solr 8.6.2 をインストールし、中国語の単語セグメンターを構成する方法

1. 環境バージョンDocker バージョン 19.03.12セントロス7ソル8.6.2 2. Do...

JSは10進数を16進数に変換するサンプルコードを実装します

序文コードを書くと、時々基数変換の問題に遭遇します。一般的な変換には、2進数、8進数、10進数、16...

Ubuntu 19にTheanoをインストールする際の問題を解決する

解決: pythearn2 パッケージをダウンロードしたディレクトリで、setup.py ファイルを...

Vue3 における computed の新しい使用例のまとめ

vue3 での computed の使い方。vue3 は vue2 のオプション API と互換性が...

MySQLトリガーはPHPプロジェクトで情報のバックアップ、復元、クリアに使用されます。

例: PHP バックグラウンド コードを通じて、従業員情報を削除したり、削除した従業員情報を復元した...

JavaScript で円形のプログレスバー効果を実装する

この記事では、円形のプログレスバー効果を実現するためのJavaScriptの具体的なコードを参考まで...

HTML+CSS で div タグの右上隅に削除アイコンを追加するサンプルコード

1. 要件の説明Divタグの右上隅に削除アイコンを表示します2. 実装html、CSS 3. 参照コ...

MySQL でローカル ユーザーを作成し、データベース権限を付与する方法の例

序文MySQL をインストールすると、通常はスーパーユーザー root を作成します。多くの人がこの...

VMware インストール後に仮想ネットワーク カードが表示されない問題について

1 問題の説明: 1.1 Windows 10 に VMware を初めてインストールする場合、また...

VMware に Centos7 をインストールした後に外部ネットワークに ping できない問題を解決する

クラスターを構成する際に問題が発生しました。当初は 3 台の仮想マシンすべてが外部ネットワークに p...