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 をインストールするための完全な手順

推薦する

体験をデザインする: ボタンには何があるか

<br />最近、UCDChina は「インターフェース上のテキストに注意を払う」という...

VSCode+CMake+Clang+GCC 環境構築チュートリアル (Win10 の場合)

大学院入試に備えて、C/C++ を使って基本的なデータ構造とアルゴリズムを実装する予定です。アルゴリ...

フラットスタイルを使用してウェブサイトをデザインする方法

フラットなウェブサイト構造の本質はシンプルさです。コンテンツの重要なポイントを強調し、ページの装飾効...

jsはシングルクリックでテーブルを変更することを実装します

Pure jsは、参照用にワンクリックで編集可能なテーブル(トランスクリプトに似たもの)を実装してい...

Echarts 基本入門: 棒グラフと折れ線グラフの一般的な構成

1eChartsの基本手順4つのステップ1 DOMコンテナを見つける2 初期化3 設定オプション4 ...

Node.js で MySQL データベースにバッチデータを挿入する方法

プロジェクト(nodejs)では、一度に複数のデータをデータベースに挿入する必要があります。データベ...

MySQL スロークエリログの役割と公開

序文MySQL スロー クエリ ログは、MySQL が提供するログ レコードの一種です。これは、応答...

JavaScript スロットリングとアンチシェイクに関する簡単な説明

目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...

MySQLクエリは、フィールドが数値とカンマではないことを指定します。

コアSQL文数字を含まない MySQL クエリ ステートメント: SELECT * FROM tes...

HTML+CSS でハートビートの特殊効果を作成する

今日は、シンプルなハートビート効果を作成します。多くのコードは必要ありません。ボックスを追加し、CS...

JavaScript初心者がよく犯す間違い

目次序文undefined と null の混同紛らわしい数値の加算と文字列の連結戻り文の改行の問題...

Linux ファイルとユーザー管理の実践

1. /etc ディレクトリ内の、文字以外の文字で始まり、その後に文字と任意の長さのその他の文字が続...

CSS3アニメーションとHTML5の新機能の詳しい説明

1. CSS3アニメーション☺CSS3 アニメーションは、JavaScript を介して要素のスタイ...

VMware インストール エラー VMware Workstation が VMware 認証サービスを開始できませんでした

背景: SAP ECC サーバーをインストールし、XP をプレインストールしたいと考えています。XP...