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命名規則

推薦する

MongoDB データベースの状態を監視する Zabbix3.4 メソッド

Mongodb には db.serverStatus() コマンドがあり、これを使用して Mongo...

MySQLの結合の基本原理についての簡単な説明

目次結合アルゴリズム駆動テーブルと非駆動テーブルの違い1. 単純なネストループ結合、単純なネスト、イ...

CentOS 6.5 インストール mysql5.7 チュートリアル

1. 新機能MySQL 5.7 はエキサイティングなマイルストーンです。デフォルトの InnoDB ...

Vue3 リストインターフェースデータ表示の詳細

目次1. リストインターフェースの表示例2. データを表示する2.1. コンポーネントがリストに表示...

IE8はマルチ互換モードを使用してWebページを正常に表示します

IE8には複数の互換モードがあります。 IE プラットフォームの設計者である Chris Wilso...

MySQL マルチマスターと 1 スレーブのデータバックアップ方法のチュートリアル

概要いずれかのデータベースに対する操作は他のデータベースに自動的に適用され、2 つのデータベースのデ...

JavaScript 配列重複排除ソリューション

目次方法1: set: データ型ではなくデータ構造であり、メンバーは一意である方法2: オブジェクト...

MySQL のストアド プロシージャを使用して 100 万件のレコードをすばやく生成する方法

序文テストを行う際、大量のデータによる負荷に耐えるプロジェクトの能力をテストするために、通常はテスト...

Vue の詳細な入門ノート

目次1. はじめに2. 初期ビュー(I) Vueの概念を理解する(II) MVVMアーキテクチャ(I...

CSS3 で画像ドロワー効果を実装するためのサンプル コード

いつものように、まずは画像効果を投稿しましょう: このエフェクトの原理は非常にシンプルです。CSS3...

ChromeはCookieの変更を監視し、値を割り当てます

次のコードは、Chrome による Cookie の変更の監視を導入しています。コードは次のとおりで...

Docker swarm を使用して Nebula Graph クラスターを迅速にデプロイする方法のチュートリアル

1. はじめにこの記事では、Docker Swarm を使用して Nebula Graph クラスタ...

CSS で子 div の高さを親コンテナの残りのスペースに合わせる方法

1. フローティング方式を使用する効果画像: コードは次のとおりです: (.content の高さは...

SSHを使用してDockerサーバーに接続する方法

初めて docker に触れたときは本当に戸惑いました。初心者向けのチュートリアルを長い間読みました...

Ansibleを使用してTomcatをバッチでデプロイする方法

1.1 ディレクトリ構造の構築この操作は、nginx+mysql+tomcat+dbのディレクトリ構...