MySQLリモート接続を有効にする方法

MySQLリモート接続を有効にする方法

セキュリティ上の理由から、MySql-Server はローカル マシン (localhost、127.0.0.1) のみに接続とアクセスを許可します。Web サーバーと MySql-Server が同じサーバー上にある Web サイト アーキテクチャでは、これは問題になりません。

ただし、Web サイトのトラフィックが増加すると、後続のサーバー アーキテクチャでは、パフォーマンスをさらに向上させるために、Web サーバーと MySql サーバーを別のサーバーに配置する場合があります。この時点で、Web サーバーがリモートで接続できるように MySql サーバーを変更する必要があります。

リモート接続を有効にすると、データベースのその後の管理やメンテナンスのために毎回サーバーにログインする必要がなくなります。リモート管理にはグラフィカル インターフェイス (phpMyAdmin など) を使用できます。

MySql-Server へのリモート接続を開くには、IP アドレスとサーバー ポートへのアクセスを許可する必要があります。

1. サーバー上の Mysql-Server にログインし、ローカルの mysql に接続します (デフォルトではローカル接続のみが許可され、phpMyAdmin へのリモート アクセスは実際にはローカル接続と同等です)。

[root@iZq2mvq6snkcniZ ~]# mysql -uroot -p123456

パスワードは 123456 です。データベースのパスワードを使用してください。ここでは例としてコマンド ライン ログインを使用しますが、グラフィカル インターフェイスを使用することもできます。

2. Mysql-Server ユーザー設定を変更します。

MySQL [(なし)]>use mysql;
# MySQL への接続が許可されている既存のユーザー、パスワード、ホストを表示します [mysql]> SELECT User, Password, Host FROM user;  
+------+--------------------------------------------------------+-----------+
| ユーザー | パスワード | ホスト |
+------+--------------------------------------------------------+-----------+
| ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | ローカルホスト |
| ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | 127.0.0.1 |
+------+--------------------------------------------------------+-----------+
セット内の 2 行 (0.00 秒)

#すべての IP からアクセスできるように設定するのは危険であり、推奨されません。
MySQL [mysql]> UPDATE user SET Host=@'%' where user='root' AND Host='localhost' LIMIT 1;  
MySQL [mysql]> 権限をフラッシュします。
# 再度接続が許可されている既存のユーザー、パスワード、ホストを表示します。MySQL [mysql]> SELECT User, Password, Host FROM user;  
+------+--------------------------------------------------------+-----------+
| ユーザー | パスワード | ホスト |
+------+--------------------------------------------------------+-----------+
| ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | |
| ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | 127.0.0.1 |
+------+--------------------------------------------------------+-----------+

3. 最後に、Linux サーバーではポート 3306 がデフォルトで閉じられており、リモート アクセスは許可されないことに注意してください。したがって、MySQL リモート接続用にポート 3306 を開く必要があります。ポートを開く方法は次のとおりです。

[root@iZq2mvq6snkcniZ ~]# iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
[root@iZq2mvq6snkcniZ ~]# サービスiptables保存

この時点で、実際にデータベースにリモートでアクセスできるようになります。リモート アクセスの例は次のとおりです。

その他のコマンドリファレンス:

次に、root ユーザーを設定します。パスワードは空で、192.168.1.100 からの接続のみが許可されます。

上記は、MySQL リモート接続を有効にする方法の詳細な内容です。MySQL リモート接続を有効にする方法の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • NavicatでMySQLにリモート接続する際のエラー10038の問題を解決する
  • Navicat の MySQL へのリモート接続が遅い理由の詳細な説明
  • CentOS 8 に MySql をインストールしてリモート接続を許可する方法
  • Docker で MySQL をインストールし、リモート接続を実装するチュートリアル
  • Navicat が MySql サーバーにリモート接続できない問題の解決策
  • Navicat が MySQL にリモート接続するときに発生する 10060 不明エラーを解決する方法
  • Docker はリモート接続のサンプルコードを実現するために MySQL をデプロイします
  • Navicat の MySQL へのリモート接続の実装手順の分析
  • CentOS7.2 に MySql5.7 をインストールし、リモート接続認証を有効にするチュートリアル
  • Linux の MySQL でリモート接続を承認する方法

<<:  Vue フロントエンド開発補助機能状態管理詳細例

>>:  複数の HTML ページで HTML コードをまとめて呼び出す方法

推薦する

CSS でフッターの「下部吸収」効果を実現

よく遭遇する問題: 下部の要素を「下部に貼り付ける」効果を CSS でどのように実現するか。この記事...

JavaScript フロー制御 (ループ)

目次1. forループ2. 二重の for ループ3. whileループ4. dowhileループ5...

Nginx レイヤー 4 負荷分散構成ガイド

1. レイヤー4負荷分散の概要レイヤー 4 ロード バランシングとは何ですか?いわゆる 4 層負荷分...

動的なテーブル効果を実現するJavaScript

この記事では、動的なテーブル効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

MySQL マスタースレーブ同期、トランザクションロールバックの実装原理

ビンログBinLog は、データベース テーブル構造の変更 (テーブルの作成、変更など) とテーブル...

Linux システムでの nginx サーバーのインストールと負荷分散構成の詳細な説明

nginx (エンジン x) は、高性能な HTTP およびリバース プロキシ サーバー、メール プ...

Dockerコンテナのログ分析

コンテナログを表示するまず、 docker run -it --rm -d -p 80:80 ngi...

Linux で PCIe のバージョンと速度を確認する方法

PCIE には 4 つの異なる仕様があります。下の図でそのうちの 2 つを見てみましょう。マザーボー...

MySQL テーブルがロックされているかどうかを照会する方法

具体的な方法: (推奨チュートリアル:MySQLデータベース学習チュートリアル)テーブルロックの状態...

CSS は、モバイル端末でクリックされたときに生成された要素の背景色を削除します (推奨)

クリック時に背景色を生成する要素の CSS スタイルに次のコードを追加します。 -webkit-ta...

MySQLがサブクエリと結合の使用を推奨しない理由

ページ分割されたクエリを実行するには: 1. MySQL の場合、サブクエリと結合の使用は推奨されま...

Baotaパネルを再起動すると、「-ModuleNotFoundError: No module named 'geventwebsocket'」というメッセージが表示されます。

背景:サーバーがFlaskプロジェクトをデプロイし、python3をインストールしたため、再起動時に...

MySQL トリガーの基本的な使い方(作成、表示、削除など)の詳細な説明

目次1. MySQLトリガーの作成: 1. MySQLトリガー作成構文: 2. MySQL作成構文の...

jsは配列の平坦化を実装します

目次配列をフラット化する方法1.flat() の使用2. 正規表現を使用する3.reduce()+c...