CentOS7 で MySQL データベースにリモート接続できない理由と解決策

CentOS7 で MySQL データベースにリモート接続できない理由と解決策

序文

最近、仕事で問題が発生しました。 Centos7 システムでは MySQL にリモート接続できないことがわかりました。 関連情報を検索してようやく解決しました。 以下の方法は、Mysql データベースにリモート接続できないという問題が発生した後に試したもので、ようやく問題を解決しました。そこで、同じ問題に遭遇した友人の参考と学習のために、要約して共有します。以下では多くは述べませんが、詳細な紹介を見てみましょう。

理由は2つあります

  • データベースは承認されていません
  • サーバーのファイアウォールがポート3306を開いていません

1. データベースが承認されていません

MySQL データベースには認証がないので、コマンドは 1 つだけで十分です。

mysql> GRANT OPTION を使用して、'123456' で識別される 'root'@'%' に *.* のすべての権限を付与します。


//データベースにリモート接続する場合は、ユーザー名とパスワードを入力する必要があります。ユーザー名: root
パスワード:123456
すべての IP を表すには、ip:% をポイントします。ここで IP を入力して IP を指定することもできます。

変更を有効にするには、次のステートメントも必要です。mysql>FLUSH PRIVILEGES;

2. サーバーのファイアウォールがポート3306を開いていない

CentOSには2つのファイアウォールがあります: FirewallDとiptablesファイアウォール

centos7 は FirewallD ファイアウォールを使用します。

FirewallD は、永続的なネットワーク トラフィック ルールを実装する iptables のフロントエンド コントローラーです。コマンドラインとグラフィカル インターフェイスの両方を提供し、ほとんどの Linux ディストリビューションのリポジトリで利用できます。 FirewallD を使用する場合と iptables を直接制御する場合とでは、主に 2 つの違いがあります。

1. FirewallD は連鎖ルールの代わりにゾーンとサービスを使用します。

2. ルール セットを動的に管理し、既存のセッションや接続を中断することなくルールを更新できます。

FirewallD は iptables のラッパーであり、iptables ルールをより簡単に管理できるようにします。iptables の代替ではありません。 FirewallD でも iptables コマンドを使用できますが、FirewallD を使用する場合は FirewallD コマンドのみを使用することをお勧めします。

1. FirewallDでポート3306を開く

 ファイアウォールコマンド --zone=public --add-port=3306/tcp --permanent

コマンドの意味:

--zone #scope --add-port=3306/tcp #ポートを追加、形式: ポート/通信プロトコル --permanent #永続的、このパラメータがないと再起動後に無効になります

ファイアウォールを再起動する

systemctl で、firewalld.service を再起動します。

2.iptables 開発ポート 3306

/sbin/iptables -I 入力 -p tcp -dport 3306 -j 受け入れ

/etc/rc.d/init.d/iptables 保存

要約する

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

以下もご興味があるかもしれません:
  • CentOS7.6にMYSQL8.0をインストールする詳細な手順
  • CentOS 6.2 に MySQL 5.7.28 をインストールするチュートリアル (mysql ノート)
  • CentOS7 での MySQL 8.0.16 のインストールと設定のチュートリアル
  • Centos7 に mysql 8.0.13 (rpm) をインストールする詳細なチュートリアル
  • CentOS7 は yum を使用して mysql 8.0.12 をインストールします
  • CentOS に MySQL 8.0 をインストールして設定するための詳細な手順
  • CentOS7 インストール GUI インターフェースとリモート接続の実装
  • CentOS7.2 に MySql5.7 をインストールし、リモート接続認証を有効にするチュートリアル
  • CentOS 8 に MySql をインストールしてリモート接続を許可する方法

<<:  CocosCreator システムイベントがどのように生成され、トリガーされるかについての詳細な説明

>>:  CentOS サーバーに FFmpeg をインストールするための完全な手順

推薦する

VueRouterルーティングの詳細な説明

目次vueルーター1. ルーティングの概念を理解する1.1 ルーティングとは何ですか? 1.2. バ...

UbuntuからMySQLを削除して再インストールする方法

まずmysqlを削除します: sudo apt-get remove mysql-*残ったデータをク...

Ubuntu 16.04 64 ビット版の VMware Tools のインストールと構成のグラフィック チュートリアル

この記事では、VMware Toolsのインストールと構成に関するグラフィックチュートリアルを参考と...

DockerにRedisをインストールし、パスワードを設定して接続する方法

Redis は分散キャッシュ サービスです。キャッシュは、大規模システムの開発やパフォーマンスの最適...

MySQLデータベースのマスタースレーブ同期の実際のプロセスの詳細な説明

目次インストール環境の説明MySQLデータベースサービスをインストールするメインライブラリを構成する...

カレンダー効果を実現するJavaScript

この記事では、カレンダー効果を実現するためのJavaScriptの具体的なコードを参考までに紹介しま...

MySQL で distinct メソッドを使用する詳細な例

明確な意味: distinctive は、一意のレコードの数を照会するために使用されます。つまり、d...

波効果を作成するための CSS のトリック

純粋な CSS を使用して波の効果を実現することは、常に非常に困難でした。 波形曲線を実現するにはベ...

Nodejs がイントラネット侵入サービスを実装

目次1. LAN内のプロキシ2. イントラネットの浸透イントラネット侵入とは何ですか?橋プロキシサー...

Angular Cookie の読み取りおよび書き込み操作コード

Angular Cookie の読み取りおよび書き込み操作のコードは次のようになります。 var a...

Linux でネットワーク パケット損失と遅延をシミュレートする方法

netem と tc: netem は、Linux カーネル バージョン 2.6 以降で提供されるネ...

Linux での mysql および mysql.sock のインストールに関する問題

最近、Linux に Aphace、mysql、php をインストールするときに多くの問題に遭遇しま...

Windows での Tomcat サーバーのインストールに関するチュートリアル

1 ダウンロードして準備するまず、公式ウェブサイトからTomcatをダウンロードする必要があります。...

Vue 開発プロジェクトで Font Awesome 5 を使用する方法

目次依存関係をインストールする構成使用1.アイコン検索ページに入る2. 使用したいアイコンの英語名を...

シンプルなカレンダー効果を実現する js

この記事では、シンプルなカレンダー効果を実現するためのjsの具体的なコードを参考までに共有します。具...