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 用のプロキシ サーバーを構築する方法

推薦する

MySQLは外部SQLスクリプトファイルのコマンドを実行します

目次1. SQLコマンドを含むSQLスクリプトファイルを作成する2. SQLスクリプトファイルを実行...

トップナビゲーションバー機能を実現するCSS+HTML

ナビゲーション バー、固定トップ ナビゲーション バー、およびセカンダリ メニューの実装効果図の実装...

MySQL での大規模トランザクションによって発生する挿入の遅延ケースの分析

【質問】 INSERT 文は最も一般的な SQL 文の 1 つです。最近、MySQL サーバーが同時...

Mysql マスタースレーブ同期構成の実践の詳細な説明

1. はじめに以前、「MySQL マスター スレーブ同期の原理」という記事を書きました。この記事を読...

Dockerデータストレージの概要

この記事を読む前に、ボリューム、バインドマウント、tmpfs マウントの基本を理解しておいてください...

MySql インデックスはクエリ速度を向上させる一般的な方法のコード例

インデックスを使用してクエリを高速化する1. はじめにWeb 開発には、ビジネス テンプレート、ビジ...

HTML テーブル マークアップ チュートリアル (39): ヘッダーの明るい境界線の色属性 BORDERCOLORLIGHT

テーブル ヘッダーでは、明るい境界線の色を個別に定義できます。基本的な構文<TH ボーダーカラ...

VMware仮想マシンを使用してUbuntu 20.04をインストールする完全なチュートリアル

Ubuntu は比較的人気のある Linux デスクトップ システムです。最近、Ubuntu 20....

MySQLデータベースで列を追加、削除、変更する方法

この記事では、例を使用して、MySQL データベースの列を追加、削除、および変更する方法について説明...

Centos7 での NFS サービス構築の紹介

目次1. サーバー2. クライアント3. テストサービス1. サーバー1. YUMソースを使用してN...

Vueの7つの値転送メソッドの詳細な説明

1. 父から息子へ子コンポーネントにpropsフィールドを定義し、その型は配列です (フィールド値の...

インライン要素スパンの最小高さの定義

span タグは HTML ウェブページを作成するときによく使用されますが、このタグの使い方がよくわ...

Linux でファイルの権限 (所有権) を変更する

Linux と Unix はマルチユーザー オペレーティング システムであるため、ファイルの権限と所...

Vueは単一ファイルコンポーネントの完全なプロセス記録を実装します

目次序文単一ファイルコンポーネント基本概念シンプルなローダーコンポーネントコンテンツの解析コンポーネ...

MySQL および Oracle のバッチ挿入 SQL の一般的な記述例

目次例えば:一般的な執筆:要約する例えば:次に、データベースのUSERテーブルにUserオブジェクト...