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 パッケージを実行する方法

推薦する

MySQL無料インストール版を解凍した後にパスワードが見つからない問題を解決する方法

1. mysql-8.0.21-winx64を解凍する2. 環境変数を設定し、アドレスをbinフォル...

DeepinでPyenvをインストールする手順

序文これまでは、/bin/ ディレクトリのソフトリンクを変更して Python のバージョンを切り替...

Dockerネットワーク作成に--subnetを追加した後の問題を解決する

Docker ネットワークの作成に –subnet を追加した後、docker network ls...

ブートストラップ学習体験のまとめ - CSS スタイル デザイン共有

プロジェクトのニーズにより、ブートストラップ フレームワークを慎重に学習する予定です。以前から少しは...

Web デザイン スキル: iframe の適応高さの問題

おそらく、この問題にまだ遭遇していない人もいるでしょうから、まずは適応高さとは何かを説明しましょう。...

MySQL 完全崩壊: クエリフィルタ条件の詳細な説明

概要実際のビジネス シナリオ アプリケーションでは、ビジネス条件に基づいて対象データを取得およびフィ...

vue-cropper コンポーネントは画像の切り取りとアップロードを実現します

この記事では、画像の切り取りとアップロードを実装するためのvue-cropperコンポーネントの具体...

ミニプログラムカスタムコンポーネントの非効率的なグローバルスタイルの解決策

目次長すぎて読めないコンポーネントスタイルの分離デモテスト優先度ページの分離構成参考文献ネイティブ ...

js 配列から重複を削除する 11 の方法

実際の業務や面接では、「配列の重複排除」の問題によく遭遇します。以下は、js を使用して実装された配...

Vueの監視プロパティの詳細

目次1.watchは一般的なデータ(数値、文字列、ブール値)の変更を監視します。 1. 数値2. 文...

html+cssレイアウトの3つの方法(ナチュラルレイアウト/フローレイアウト/ポジショニングレイアウト)

1. 自然なレイアウト<br />レイアウトは変更せずに自動的に左揃えになります。 2....

Vue.js での $emit の使用に関する詳細な説明

1. 親コンポーネントは props を使用して子コンポーネントにデータを渡すことができます。 2....

mysql5.7.17.msi インストール グラフィック チュートリアル

mysql-5.7.17.msiのインストール、スクリーンショットに従ってください、ステップバイステ...

Docker ベースの Redis マスタースレーブ クラスタの実装

目次1. Redisイメージを取得する2. 6つのRedisコンテナを作成する3. Redisコンテ...

ラベルタグの使用時に発生する問題の分析と解決策

最近何かをするときにラベル タグを使用しました。以前はラベル タグをほとんど使用していなかったため、...