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

推薦する

適応レイアウトの処理について(フロートとマージンネガティブマージンを使用)

適応型レイアウトは、実際のアプリケーションでますます一般的になっています。今日は、主にフローティング...

Nginx でアンチホットリンクを設定するための手順を完了する

必要:通常、サイト側は、ウェブサイト上の動画や写真が盗まれるのを防ぎたいと考えています。結局のところ...

CCS におけるマージン: トップ崩壊問題を解決する

HTML 構造は次のとおりです。 CCS 構造は次のとおりです。 ページ効果図は次のとおりです。 こ...

Linux でユーザーを完全に削除する 2 つの方法

Linux 操作実験環境: Centos7 仮想マシンまず、共通ユーザーgubeiqingを作成しま...

Reactは二次的連鎖効果(階段効果)を実現する

この記事では、二次リンク効果を実現するためのReactの具体的なコードを参考までに共有します。具体的...

hrefパラメータ転送における中国語の文字化けについて

パラメータを渡すために href が必要で、パラメータが中国語の場合、文字化けした文字が表示されます...

Ubuntu 20.04 ファイアウォール設定の簡単なチュートリアル (初心者)

序文ますます便利になった今日のインターネット社会では、さまざまなインターネット ランサムウェア ウイ...

Ubuntu の MySQL のパラメータ ファイル my.cnf の詳細な分析

序文MySQL に関する私の理解に基づくと、パフォーマンスの最適化作業やマスター スレーブ レプリケ...

仮想マシンのディスクサイズを拡張する方法

Vmvare が仮想マシンのディスク サイズを設定した後、ディスク領域が不足していることがわかりまし...

MySQL コピーテーブルと許可分析の 3 つの実装方法

テーブルを素早くコピーする方法まず、テーブル db1.t を作成し、1000 行のデータを挿入します...

MySql 自動切り捨て例の詳細な説明

MySql 自動切り捨て例の詳細な説明友人が質問しました。プロジェクト内で挿入または更新ステートメン...

クラウドネイティブテクノロジー Kubernetes (K8S) の紹介

目次01 Kubernetes とは何ですか? 02 KubernetesとCompost+Swar...

VMware 仮想マシンのインストール win7 オペレーティング システム チュートリアル ダイアグラム

VMwareaのインストールプロセスは説明しませんが、主にwin7イメージをロードする方法を説明しま...

Linux での感嘆符コマンド (!) の使用の概要

序文最近、弊社では mbp の設定をしており、ssh を使うことが多くなりました。複雑なコマンドを書...

WeChatアプレットがチャットルーム機能を実現

この記事では、参考のために、WeChatアプレットのチャットルームを実装するための具体的なコードを例...