Linux 構成で MySQL データベースへのリモート接続が失敗する問題の解決方法

Linux 構成で MySQL データベースへのリモート接続が失敗する問題の解決方法

今日は、Linux でリモート アクセス用に MySQL データベースを構成する方法について質問があります。Baidu にはこれに関する多くの情報がありますが、方法は同じです。すべて試しましたが、解決できませんでした。ここに記録しておきます。

ステップ1: /etc/mysql/my.cnfでbind-address = 127.0.0.1を見つける

この行の前に「#」を追加してコメントアウトするか、次のように変更します: bind-address = 0.0.0.0

任意の IP アドレスからのアクセスを許可するか、リモートでアクセスする必要がある IP アドレスを指定します。

次に、mysqlを再起動します: sudo /etc/init.d/mysql restart

ステップ2:ユーザーにリモート接続を許可する

grant オプションを使用して、"password" で識別される root@"%" に *.* のすべての権限を付与します。
 権限をフラッシュします。

コマンドの最初の行は次のように説明されます: *.*: 最初の * はデータベース名を表し、2 番目の * はテーブル名を表します。これは、すべてのデータベース内のすべてのテーブルがユーザーに対して承認されていることを意味します。特定のデータベースまたはデータベースの下のテーブルのみを承認する場合は、* を必要なデータベース名とテーブルに置き換えます。 root: ルートアカウントを付与します。 「%」: 承認されたユーザーの IP を指定できることを示します。つまり、どの IP アドレスでも MySQL データベースにアクセスできます。 「パスワード」: 割り当てられたアカウントに対応するパスワード。パスワードをルート アカウントのパスワードに置き換えます。

2 番目のコマンド行は権限情報を更新し、設定した権限をすぐに有効にします。

しかし、結局、まだアクセスできません。現時点では、ファイアウォールと MySQL ポート 3306 に問題がある可能性があります。

netstar -aコマンドを使用してすべてのポートを照会しましたが、ポート 3306 は表示されませんでした。nerstat -an|grep 3306コマンドを使用しましたが、何も表示されませんでした。これは、ポート 3306 が存在しないことを意味します。

Alibaba Cloud コンソールにログインし、クラウド サービス セキュリティ グループに新しいルールを追加し、ルールを複製して、ポート番号を MySQL の 3306 に変更します。それでもリモート接続は失敗します。

この時点で、新しく追加されたルールを有効にするには、コンソールでシステムを再起動する必要があります。再起動後も、接続は失敗します。この時点で、ローカルの Navicat ソフトウェア接続は、以前の接続不可エラーではなく、アクセス拒否エラーを返します。

このとき、上記の 2 番目の手順を実行してユーザー コマンドを再度承認し、Apache MySQL を再起動すると、最終的に接続が成功します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux に JDK Tomcat MySQL をインストールするチュートリアル (Mac を使用したリモート アクセス)
  • Linux サーバーで MySQL リモート接続を有効にする方法
  • Linux で MySQL データベースにリモート接続する方法
  • Linux システムで MySQL データベースにリモート接続する方法のチュートリアル
  • Linux プラットフォームの MySQL でリモート ログインを有効にする
  • LinuxでMySQLのリモートアクセス権を有効にし、ファイアウォールでポート3306を開きます。
  • 仮想マシンのLinux側のMySQLデータベースにリモートアクセスできない問題の解決策
  • リモート接続を可能にする Linux mysql コマンドをインストールして設定する方法
  • Linux での MySQL 5.7 の導入とリモート アクセス構成

<<:  Javascript を使用して、スライドバー効果のあるスライドナビゲーション プラグインを開発します。

>>:  Squid を使用して http および https 用のプロキシ サーバーを構築する方法

推薦する

あなたが知らない Linux KDE アプリケーション 11 選

翻訳Kool Desktop Environment の略称。 Linux、Unix、FreeBSD...

バックエンドから返される 100,000 個のデータをフロントエンドでより適切に表示するにはどうすればよいですか?

目次予備作業バックエンド構築フロントエンドページダイレクトレンダリングsetTimeout ページン...

Vueは単純なランダムロールコールを実行します

目次レイアウト部分: <div id="アプリ"> <p>...

Jsonフォーマットの詳細な説明

目次JSON は次の 2 つの構造に基づいて構築されます。 2. JSON形式1. オブジェクト2....

JavaScript データ型の詳細な説明

目次1. リテラル1.1 数値リテラル1.2 浮動小数点リテラル1.3 特別な値1.4 文字列リテラ...

Linux カーネル デバイス ドライバー カーネル時間管理に関する注意事項

/****************** * Linux カーネルの時間管理 ***********...

MySQL のグループ分けの例

mysql のような php switch case ステートメント。 xxフィールドを選択、ケース...

MyBatis 動的 SQL の包括的な説明

目次序文動的SQL 1. まずモジュールのディレクトリ構造を見てみましょう2. 物理モデリングと論理...

JavaScriptを使用してページ効果を作成する

11. JavaScriptを使用してページ効果を作成する11.1 DOMプログラミングDOM プロ...

Vue で動的なスタイルを実現するためのさまざまな方法のまとめ

目次1. 三項演算子の判定2. 動的に設定されるクラス3. 方法判定4. 配列バインディング5. e...

JavaScript オブジェクト (詳細)

目次JavaScript オブジェクト1. 定義2. オブジェクトの分類3. オブジェクトを定義する...

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

目次マップ状態マップゲッターマップミューテーションマップアクション例まとめマップ状態コンポーネントが...

LINUX でプロセスを表示する 4 つの方法 (要約)

プロセスは CPU とメモリ内で実行されるプログラム コードであり、各プロセスは 1 つ以上のプロセ...

WeChatアプレットが計算機機能を実装

WeChatミニプログラムはますます人気が高まっています。多くの大学生が独学で学んでいるのも見てきま...

Vue は Tencent Map を統合して API を実装します (デモ付き)

目次執筆の背景プロジェクトの説明事前準備注記執筆の背景以前のプロジェクトではTencent Maps...