MySQL ユーザーのホスト属性を素早く変更する方法

MySQL ユーザーのホスト属性を素早く変更する方法

MySQL にリモートでログインする場合、使用するアカウントには特別な要件があります。

アカウントのデフォルトのホスト属性は localhost です。つまり、このアカウントはローカルでのみ使用できます。アカウントを使用してリモートでログインする場合は、アカウントのホスト属性値を % に変更する必要があります。

実行された SQL ステートメントは次のとおりです。

ユーザーを更新します。ホストを '%' に設定し、ユーザーを 'root' に設定します。

補足: mysql ルートパスワードの変更 アカウントのログインホストの変更

1. ルートパスワードを忘れた

リモート サーバーは、Hive アカウントを使用して mysql サービスを開始しました。mysql -hlocalhost -uxxx -pxxx を使用してコマンド ラインからリモート サーバーにログインできますが、navicat クライアントを使用してログインすることはできず、navicat は依然として自分のマシンの IP アドレスを表示します。

最初の疑いは、MySQL のアカウント A のパスワードが正しく設定されていないことです。したがって、hive アカウントをリセットするには、root アカウントを使用する必要があります。

困ったことに、MySQL をインストールしていませんでした。また、テスト環境では、パスワードを誰に尋ねればよいかわかりません。次に、最終兵器であるルート パスワードを変更します。

2. mysql のルートパスワードをリセットします。

まず、MySQL のルート アカウントとサーバーのルート アカウントは同じ概念ではないため、混同しないように注意してください。

まず、mysql サービスを停止します。

sudo サービス mysql を停止

サーバーに root アカウントがある場合は、sudo は必要ありません。以降のすべての操作にも同じことが当てはまります。上記のコマンドはUbuntuとDebianで動作します。 CentOS、Fedora、RHEL では、mysql の代わりに mysqld を使用します。以降の操作についても同様です。

次に、mysql をセーフ モードで起動します。

sudo mysqld_safe --skip-grant-tables --skip-networking &

この方法では、パスワードなしで root として直接ログインできます。

mysql -u ルート

このようにして、root アカウントで mysql にログインしました。

その後、ルート パスワードをリセットできます。

mysql> mysql を使用します。 
mysql> ユーザーを更新し、パスワードを PASSWORD("mynewpassword") に設定します。ここで、User は 'root' です。 
mysql> 権限をフラッシュします。

リセットが完了したら、mysql を終了します。次に、mysql サービスを開始します。

sudo サービス mysql を再起動

次に、root アカウントでログインします。

mysql -u ルート -pmy新しいパスワード

3. アカウントAの関連する権限を変更する

ルートアカウントでmysqlにログインした後、アカウントAの関連情報を見てみましょう。

mysql> mysql を使用します。
データベースが変更されました
mysql> user から User、Host を選択します (User='hive' の場合)。
+------+--------------+
| ユーザー | ホスト |
+------+--------------+
| ハイブ | 127.0.0.1 |
+------+--------------+

今分かりました。ああ、Navicat クライアントにログインできないのも当然だ。 hive アカウントのホストは 127.0.0.1 のみなので、ローカルでのみログインできます。

mysql> ユーザーを更新し、Host='%' を設定し、User='hive' にします。

すべてのマシンからアクセスできるように hive アカウントを設定し、権限を更新します。

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

もう一度見てみましょう:

mysql> user から User、Host を選択します (User='hive' の場合)。
+------+------+
| ユーザー | ホスト |
+------+------+
| ハイブ | % |
+------+------+

ここまでで完了です!

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • 新しく作成された MySQL ユーザーの % には localhost が含まれていますか?
  • すべてのホストがmysqlにアクセスできるようにする方法
  • MySQLがlocalhost経由でデータベースに接続できない問題に対する完璧な解決策
  • MySQLがlocalhostを使用して接続できるがIPを使用して接続できない問題の解決策
  • Mysqlがデータベースに接続するときのホストとユーザーのマッチングルールについての簡単な説明

<<:  HTML テーブル マークアップ チュートリアル (28): セルの境界線の色属性 BORDERCOLOR

>>:  docker に openjdk をインストールして jar パッケージを実行する方法

推薦する

VUE ユニアプリテンプレート構文についての簡単な説明

1.v-bind(略称:)コンポーネント プロパティのデータで定義されたデータ変数を使用するか、コン...

ユーザーのニーズがマーケティング指向のデザインにつながる

<br />それぞれのトピックについて、チーム内でメールで議論します。議論が白熱するにつ...

Docker を使用した nGrinder パフォーマンス テスト プラットフォームの導入プロセスの分析

nGrinderとは何ですか? nGrinder は、スクリプトの作成、テストの実行、監視、結果レポ...

resizeを使用して画像切り替えプレビュー機能を実装する方法

要点CSS resize プロパティを使用すると、要素のサイズ変更可能性を制御できます。サイズ変更を...

MYSQL SERVER のログファイルを縮小する方法

トランザクション ログには、関連するデータベースに対する操作が記録され、データベースの回復に関連する...

WebデザイナーがRetinaディスプレイデバイス向けの画像を作成する方法

特記事項:この記事は、Chris Spooner の英語記事「Web デザイン用の Retina グ...

メタタグを簡単に説明すると

META タグは、一般的に タグと呼ばれ、HTML Web ページのソース コード内の重要な HTM...

MySQLデータベースのマスタースレーブレプリケーションの長い遅延に対する解決策

序文MySQL マスター スレーブ レプリケーションの遅延は、業界では長年の問題となっています。遅延...

CentOS6.9 での MySQL 5.7.17 のインストールと設定のチュートリアル

CentOS6.9はMysql5.7をインストールします。参考までに、詳細は次のとおりです。 1. ...

サーバーのDockerコンテナへのvscodeリモート接続を設定する方法

目次画像をプルするイメージを実行する(コンテナを生成する)コンテナを起動するコンテナに入るすべてのミ...

ES6 ループと反復可能オブジェクトの例

この記事では、ES6 の for ... of ループについて説明します。古い方法以前は、JavaS...

Nginx proxy_redirect の使用方法の詳細な説明

今日、Apache の nginx リバース プロキシを実行していたときに、ちょっとした問題に遭遇し...

インデックススキャンを使用したMySQLソート

目次sakilaをインストールするインデックススキャンソートテーブル構造インデックススキャンをソート...

Linux で g++ を使用してプログラムをコンパイルする際の -I (大文字の i)、-L (大文字の l)、-l (小文字の l) の機能の詳細な説明

初心者の Linux ユーザーとして、私は単純なgcc/g++操作を何度も使用してきましたが、少し複...

HTML ボディタグと HTML でよく使われる制御タグの詳細な説明

1. <body> タグ: Web ページの本体をマークするために使用されます。body...