MySQL 8.0 でリモートアクセス権限を設定する方法

MySQL 8.0 でリモートアクセス権限を設定する方法

前回の記事では、MySQL パスワードをリセットする方法を説明しました。一部の学生から、データベースに接続できないという報告がありました。これは、MySQL がインストール後にローカルホスト アクセスのみをサポートするためです。リモートでアクセスできるようにするには、設定する必要があります。また、MySQL 8.0 に接続するときにいくつかの問題が発生します。この記事では、それらの解決方法についても説明します。

1. MySQLにログインする

mysql -u ルート -p

パスワードを入力してください

2. MySQLデータベースを選択する

mysql を使用します。

mysql データベースのユーザー テーブルにユーザー情報が格納されているためです。

3. mysqlデータベースのユーザーテーブルで現在のルートユーザーの関連情報を表示します。

ユーザーからホスト、ユーザー、認証文字列、プラグインを選択します。 

上記のコマンドを実行すると、表が表示されます。

テーブル内の root ユーザーのホストを確認します。デフォルトでは、ローカル アクセスのみがサポートされ、リモート アクセスは許可されない localhost が表示されます。

4. ルートユーザーのすべての権限を承認し、リモートアクセスを設定します。

*.* のすべての権限を 'root'@'%' に付与します。

GRANT ALL ON はすべての権限を意味し、% はすべてのホストがワイルドカード化され、リモート アクセスが許可されることを意味します。

5. 権限を更新する

すべての操作が完了したら、

権限をフラッシュします。

6. ルートユーザーのホストを確認する

手順 2 を再度実行すると、root ユーザーのホストが % になっていることがわかります。これは、変更が成功し、リモートからアクセスできることを意味します。

7. データベースにアクセスする

Navicat、SQLyog、MySQL workbench など、データベースへのリモート アクセス用の視覚化ツールは多数あります。ここでは Navicat を使用します。

アクセス ホストとパスワードを入力すると、エラー 2059 が報告されます。これは、MySql 8.0 と 5.0 の暗号化ルールが異なり、現在の視覚化ツールは古い暗号化方式のみをサポートしているためです。

この問題を解決するには 2 つの方法があります。1 つは Navicat ドライバーを更新してこの問題を解決すること、もう 1 つは MySQL ユーザー ログインの暗号化ルールを mysql_native_password に変更することです。最初の方法を試しましたがうまくいかなかったので、ここでは 2 番目の方法を使用します。

8. 暗号化ルールを変更する

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' パスワードは期限切れにならない; 

パスワードは現在のパスワードです。

9. ルートユーザーのパスワードを更新する

ALTER USER 'root'@'%' を 'password' によって mysql_native_password で識別します。 

password は設定した新しいパスワードです。

10. 権限を更新する

権限のフラッシュ;

設定は完了です。Navicatを使用してデータベースに再度接続します。

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

以下もご興味があるかもしれません:
  • MySQLユーザー権限テーブルについての簡単な説明
  • MySQL ユーザー権限管理の実装
  • MySQLユーザー権限管理の詳細な説明
  • MySQL 権限制御の詳細分析
  • MySQL 権限制御の詳細な説明
  • MySQLでユーザーを作成し、ユーザーに権限を付与する方法の詳細なチュートリアル
  • MySQL ストアド プロシージャ関連の権限変更の問題
  • MySQL 権限とデータベース設計のケーススタディ

<<:  HTML タグ マーキーを使用してスクロール効果を実現する簡単な方法 (必読)

>>:  ROS で Turtlebot3 移動ロボットを制御するための基本的なチュートリアル

推薦する

ウェブサイトの画像にグレー効果を加える3つの方法

私はグレースケールの画像の方が芸術的に見えると思うので、いつもグレースケールの画像を好んで使っていま...

MySQL での IN データボリュームの使用の最適化された記録

MySQL のバージョン番号は 5.7.28 です。テーブル A には 390 万件のレコードがあり...

HTML のメタタグの簡単な比較

メタ タグは、ファイル情報を定義し、検索エンジンによる検索を容易にするために Web ページ ファイ...

ボタンをEnterキーに関連付けるjsコード

コードをコピーコードは次のとおりです。 <html> <ヘッド> <ス...

MySQL データベースの大文字と小文字の区別の問題

MySQL では、データベースはデータ ディレクトリ内のディレクトリに対応します。データベース内の各...

MySQLの基礎知識学習ノート

データベースを表示show databases;データベースを作成するDATABASE データベース...

CSSリストのスライドにより、下部に隠れるのを防ぎ、長い画面モデルの処理に適応します。

1. モバイル端末がリストスライドを処理するとき、WeChat には下部にページに戻るボタンが組み...

一定期間の日ごと、時間ごとの統計データを取得するMySQLの詳しい説明

毎日の統計情報を取得するプロジェクトを実行する際、プロジェクト ログを分析する必要があります。要件の...

JavaScript でオブジェクトをトラバースする 5 つの方法 サンプルコード

目次準備する5つの武器…のためにオブジェクト.キーオブジェクト.getOwnPropertyName...

スライダー間隔コンポーネントのネイティブ js 実装

この記事の例では、スライダー間隔コンポーネントを実装するためのjsの具体的なコードを参考までに共有し...

CSS3 はアニメーション属性を使用してクールな効果を実現します (推奨)

animation-name アニメーション名。複数のアニメーションがバインドされていることを示す...

HTMLのテーブルタグの基本学習チュートリアル

表ラベルの構成HTML 内の表は <table> タグで構成されており、ブラウザはタグを...

Dockerイメージ内のファイルを表示する方法

Dockerイメージ内のファイルを表示する方法1. すでに実行中の場合すでに実行中のイメージについて...

フォーム送信の更新ページはソースコード設計にジャンプしません

1. ソースコードの設計コードをコピーコードは次のとおりです。 <!DOCTYPE html ...

Ubuntu 19.04 インストール チュートリアル (画像とテキストの手順)

1. 準備1.1 VMware 15 をダウンロードしてインストールするダウンロード リンク: h...