mysql5.7 リモート アクセス設定

mysql5.7 リモート アクセス設定

mysql5.7 でリモート アクセスを設定することは、ユーザーを作成して権限を付与するだけでアクセスできるというインターネットで言われているようなことではありません。たとえば、以下はユーザーを作成して権限を付与するものです。以前のバージョンでは可能だったかもしれませんが、私の MySQL では機能しません。これは長い間私を悩ませてきました! ! !プロジェクトが遅れました! !

1. リモートアクセスを設定するためのオリジナルの方法

デフォルトではMysqlはリモートマシンからアクセスできません。リモートアクセスは次の設定で有効にできます。

MySQL サーバー側:

mysql コマンドを実行して、mysql コマンド モードに入ります。

SQLコード

mysql> use mysql; mysql> GRANT ALL ON *.* TO user@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;  

この文は、任意の IP アドレス (上記の % はこれを意味します) を持つ任意のコンピューターが、管理者アカウントとパスワード (admin) を使用してこの MySQL サーバーにアクセスできることを意味します。

リモートでログインするには、このようなアカウントを追加する必要があります。 root アカウントはリモートでログインできず、ローカルでのみログインできます。

リモート アクセス:

  • mysql -h172.21.5.29 -uuser -p123456
  • //172.21.5.29 は MySQL サーバーの IP アドレスで、user は 172.21.5.29 に設定したリモート アクセス アカウントです。

さらに、複数のターミナルを開いてマシン上でリモート アクセスをシミュレートし、リモート アクセスが可能かどうかをテストすることもできます。

問題が見つかりました。上記のコマンドを実行した場合、localhost で次のコマンドを実行します。

mysql -hlocalhost -uadmin -padmin  

結果は失敗でした。
上記の%にはlocalhostが含まれていないことが判明しました

したがって、次のコマンドも追加する必要があります。

mysql>GRANT ALL ON *.* TO admin@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;

2. mysql5.7でリモートアクセスを設定する

上記の方法で設定した後、mysql -hを使用してリモートでアクセスできないことがわかりました。/etc/my.cnf設定ファイルを次のように変更しました。

#skip-networking コメントアウト

bind-address=0.0.0.0 を追加

でも無駄だよ!

読んですぐにほぼ暗記してしまいました!

その後、私は彼の設定ファイルを直接見てみました:/etc/mysqlフォルダ内

画像の my.cnf をクリックします。次のような単語があります。

#
# * 重要: このファイルの設定を上書きできる追加の設定!

# 他の場所の設定により、このファイルの設定が上書きされる場合があります。# ファイルは '.cnf' で終わる必要があります。そうでない場合は無視されます。 
#

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

ファイル内の最後の 2 つのパスが気になったので、調べてみました: conf.d/:

設定ファイルがあります。開いてみると、[mysql] しかなく、他には何もありませんでした。

もう一つあります:

設定ファイルもあります。開いてみると驚きました。ここには次のような一文があります。

一瞬にして日の目を見たような気がしました! ! !コメントを見れば、ローカルでしか接続できないことがわかります。これが問題です。 !

bind-address をコメントアウトします: #bind-address=...

mysql サービスを再起動します。リモート リンク:

mysql -h172.17.0.1 -uuser -p

私のユーザー名は: user

やっと入れました、ハハハ! !

mysql5.7 のリモート アクセスの設定に関するこの記事はこれで終わりです。mysql5.7 のリモート アクセスの設定の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL データベースのリモート アクセス権を有効にする方法 (2 つの方法)
  • MySQL リモート アクセス設定の究極の方法
  • MySQLデータベースのリモートアクセス権限を設定する方法の概要
  • mysql は指定された IP リモート アクセス接続インスタンスを設定します
  • MySQLデータベースへのリモートアクセスを設定する方法
  • MySQLデータベースへのリモートアクセスを設定する複数の方法
  • MySQL がリモート アクセスを許可しない場合の解決策
  • MySQLデータベースへのリモートアクセス方法の概要

<<:  docker ポートを追加して dockerfile を取得する方法

>>:  収集する価値のあるCSS命名規則(ルール) よく使われるCSS命名規則

推薦する

JS 手ぶれ補正機能の実装と使用シナリオ

目次1. 手ぶれ補正機能とは何ですか? 1. なぜ手ぶれ補正機能が必要なのでしょうか? 2. 手ぶれ...

ドロップダウンボックス選択コンポーネントを実装するためのネイティブ js

この記事の例では、ドロップダウンボックス選択コンポーネントを実装するためのjsの具体的なコードを参考...

LinuxにRocketMQインスタンスをインストールする手順

1. JDKをインストールする1.1 現在の仮想マシン環境にJDKがあるかどうかを確認する rpm ...

Linux で MySQL のデフォルト エンコーディングを変更する方法

開発プロセス中に、MySQL データベースを復元した後にデータベース データに文字化けが発生した場合...

MySQLインデックスを最適化する方法

1. MySQL のインデックスの使用方法インデックスは、特定の列の値を持つ行をすばやく見つけるため...

MySql8.0以降のバージョンでROOTパスワードを正しく変更する方法

展開環境:インストールバージョン Red Hat Cent 7.0 MYSQL バージョン 8.0....

CSS が最初のサイクルで画像を読み込むために @keyframes を使用するときに発生するホワイトギャップの問題 (フラッシュ画面) をすばやく解決します。

問題の説明: CSS アニメーション プロパティを使用すると、ループが最初に読み込まれたときに白いギ...

HTML ウェブページにおけるさまざまなフォント形式の詳細

このセクションでは、テキストの変更の詳細から始めます。これにより、読者はさまざまな HTML フォン...

MySQL 8.0 のメモリ関連パラメータの概要

理論的には、MySQL によって使用されるメモリ = グローバル共有メモリ + max_connec...

Docker で Maven プロジェクトをより速くビルドする

目次I. 概要2. 従来の多段階イメージ構築3. Buildkitを使用してイメージをビルドする4....

CSS 垂直センタリングの代替実装コードの詳細な説明(非従来型)

序文ご存知のとおり、「CSS で要素を垂直方向に中央揃えするにはどうすればよいか」という質問は、すで...

MySQL Workbenchのダウンロードと使用方法のチュートリアルの詳細な説明

1. MySQL WorkbenchをダウンロードするWorkbench は、MySQL のグラフィ...

Ubuntu 20.04 は Wi-Fi に接続します (2 つの方法)

最近Ubuntu 20.04をインストールしましたが、Wi-Fiに接続できず、Wi-Fiアイコンも表...

ベンダー プレフィックス: ブラウザ エンジン プレフィックスが必要なのはなぜですか?

ベンダープレフィックスとは何ですか?ベンダー プレフィックス - ブラウザー エンジン プレフィック...