Ubuntu 18.0.4 は mysql をインストールし、エラー 1698 (28000): ユーザー ''root''@''localhost'' のアクセスが拒否されましたを解決します

Ubuntu 18.0.4 は mysql をインストールし、エラー 1698 (28000): ユーザー ''root''@''localhost'' のアクセスが拒否されましたを解決します

序文

最近 Linux を学び、その後 Win から Ubuntu に変更しました。以前インストールした mysql は使用できなくなりました。ここで、ubuntu18.0.4 に mysql をインストールし、発生した問題を次のように記録します。

mysqlをダウンロードしてインストールする

sudo apt-get install mysql-serverという文を実行します。

ここに画像の説明を挿入

すでにここにインストールしてあるので、こうなります。インストールされているバージョンは、mysql --version で確認できます。

mysqlにログイン

mysql -u root -pという文を実行します。

-u はユーザー、-p はポートです。ログイン時に、ERROR 1698 (28000): ユーザー 'root'@'localhost' へのアクセスが拒否されました が発生します。これは、パスワードを忘れたか、以前にインストールしたときに初期化パスワードを覚えていないことが原因であると考えられます。

ここに画像の説明を挿入

この問題を解決する方法は次のとおりです。

1. sudo vim /etc/mysql/debian.cnfコマンドを入力すると、次の情報が表示されます。

ここに画像の説明を挿入

debian-sys-maint アカウントは、MySQL のインストール時にシステムによって自動的に生成される MySQL ユーザーであり、対応するパスワードはこのユーザーのパスワードです。

2. アカウント debian-sys-maint にログインします。

mysql -u debian-sys-maint -p mysql にログインできます:

ここに画像の説明を挿入

3. ルートアカウントのパスワードを変更します。

use mysql; コマンドを入力します。

次に、次のコマンドを入力します。

UPDATE user SET authentication_string=PASSWORD('設定するパスワード') where USER='root'; これは、root アカウントのパスワードを設定するためのものです。

次に、quit コマンドを入力して mysql を終了し、sudo service mysql restart という mysql の再起動コマンドを実行します。

その後、mysqlにログインし、mysql -u root -pを実行すると、次のエラーが発生します: ERROR 1524 (HY000): Plugin 'msyql_native_password' is not loaded

ここに画像の説明を挿入

この時点で、パスワードは実際に正常に変更されています。プラグイン ルートのフィールドは auth_socket であり、これを変更する必要があります。

4. プラグインを変更する:

debian-sys-maintアカウントを使用してログインを続行します。

次のコマンドを実行します:

use mysql

次のコマンドを実行します:

select user,plugin from user;

次に、次のコマンドを実行します。

ユーザーを更新します。authentication_string =password('設定するパスワード'),plugin='mysql_native_password'、user='root' を設定します。

最後に、mysql を終了して再起動します。

ここに画像の説明を挿入

要約する

上記は、Ubuntu 18.0.4 に MySQL をインストールし、ERROR 1698 (28000): Access denied for user 'root'@'localhost' を解決する方法について紹介したものです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • MySQL は information_schema オブジェクトの付与をバイパスし、ERROR 1044 (4200) エラーを報告します
  • mysql データベースmysql: [エラー] 不明なオプション ''--skip-grant-tables''
  • Navicat が MySQL にリモート接続するときに発生する 10060 不明エラーを解決する方法
  • エラー 2002 (HY000): ソケット ''/tmp/mysql.sock'' を介してローカル MySQL サーバーに接続できません
  • MySQL サーバー ログイン エラー ERROR 1820 (HY000) の解決方法
  • MySQL 起動エラーを解決する: エラー 2003 (HY000): ''localhost'' の MySQL サーバーに接続できません (10061)

<<:  Node はあいまい検索用の検索ボックスを実装します

>>:  MySQLがファントムリードを解決する方法の詳細な説明

推薦する

Telnet は Alpine イメージの busybox-extras に移動されました

Alpine イメージの telnet はバージョン 3.7 以降、busybox-extras パ...

React+Ant Design開発環境をセットアップするための実装手順

基礎1. スキャフォールディングを使用してプロジェクトを作成し、開始する1.1 足場を設置する: n...

Linux で nohup ログ出力が大きすぎる問題の解決方法の詳細な説明

最近、hadoop テスト クラスターで spark ストリーミング プログラムを実行し、その後、n...

SQL重複排除方法の概要

SQL を使用してデータを抽出する場合、テーブル内で重複した値に遭遇することがよくあります。たとえ...

Docker で Spring-boot プロジェクトをデプロイするためのサンプル コード

1. 基本的な Spring-boot クイックスタート1.1 クイックスタート pom.xml は...

jQuery を使用してカルーセル効果を実装する

この記事では、jQueryでカルーセルチャートを実装するための具体的なコードを参考までに共有します。...

CSSを使用してTDのINPUTの幅を設定する

最近、C# を使用して Web プログラムを作成していたときに、次のような問題が発生しました。 Te...

MySQLトリガーの使用例の詳細

MySQL トリガー構文の詳細: トリガーは、特定のテーブル内のデータが挿入、削除、または更新される...

CSS グリッドレイアウトを使用してレスポンシブな縦棒グラフを作成する方法

私はしばらくの間チャートをいじっていましたが、好奇心から、CSS を使用してチャートを作成するより良...

HTMLタグの説明

HTMLタグの説明1. HTMLタグタグ: !DOCTYPE説明: HTML ドキュメントが準拠する...

HTML テーブルタグチュートリアル (45): テーブル本体タグ

<tbody> タグは、テーブル本体のスタイルを定義するために使用されます。基本構文 &...

ページリファクタリングスキル - コンテンツ

雑談はここまでにして、インターネット上で見つかる高性能な Yahoo ウェブサイトを構築するための数...

基本構造、ドキュメント タイプ、ヘッダー、本文などの一般的な HTML 要素の概要。

1. 基本構造:コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBL...

Apache SkyWalking アラーム設定ガイドの詳細な説明

アパッチ スカイウォーキングApache SkyWalking は、マイクロサービス、クラウド ネイ...

Dockerを使用してRedisクラスターを構築する方法

目次1. Redis Dockerベースイメージを作成する2. Redisノードイメージを作成する3...