MySQL ERROR 1045 の理由とその解決方法
コマンド ラインで mysql -u root –p を入力するか、パスワードを入力するか、ツールを使用してデータベースに接続すると、次のエラー メッセージが表示されることがよくあります。多くの人がこのエラー メッセージを目にすると思いますが、私は MySQL を使用しているときにこのエラー メッセージに遭遇しました。
エラー 1045 (28000): ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードを使用: YES)
通常はオンラインで解決策を見つけることができます
1. サービスを停止します
MySQL サービスを停止します;
# windows net stop mysql # linux service mysqld stop
2. 検証をスキップします
MySQL インストール ディレクトリ内の my.ini 設定ファイルを次のように変更します。ログイン時の権限チェックをスキップします。
#到mysql根目录找到mysql配置文件 vim my.ini #在my.ini,[mysqld]下添加一行,使其登录时跳过权限检查 skip_grant_tables
3. パスワードの変更
MySQL サービスを開始し、MySQL にログインします。パスワードの入力を求められます。任意のパスワードを入力して Enter キーを押します。 MySQL に入ります。
#登录mysql mysql -u root -p
次に、SQL ステートメントを使用して root ユーザーのパスワードを変更します;
#将数据库切换至mysql库 mysql> USE mysql; #修改密码 mysql> UPDATE user SET password=PASSWORD(‘newpasswd')WHERE user='root'; #刷新MySQL权限相关的表 mysql> flush privileges; mysql> exit;
4. サービスを再起動します
my.ini に追加されたスキップ許可ステートメントを削除または追加します。ファイル番号 注。
サービスを再起動し、変更したパスワードでログインします。
原因分析
root ユーザーで MySQL にログインし、次のようにユーザー テーブルのユーザー情報を確認すると、ホスト フィールドがそれぞれ % と localhost になっていることがわかります。
mysql>select host,user,password from user;
MySQL では、「%」は任意のホスト上の MySQL データベースにログインできることを意味します。なぜログイン ホストが次のようなユーザーを明示的に作成する必要があるのでしょうか。ローカルホスト?
これには、MySQL のインストール時の初期化ユーザー、匿名ユーザー、および接続検証戦略が含まれます。
以下で詳細な分析を行ってみましょう。
MySQL をインストールすると、root ユーザーや、ホスト フィールドが localhost でユーザー フィールドが空のユーザーなど、一部のユーザーがデフォルトで初期化されます。
User フィールドが空のユーザーは匿名ユーザーであり、ユーザーのパスワードも空です。誰でも匿名ユーザーを使用して MySQL データベースにログインできますが、できることは限られています。コマンドラインなどで mysql を直接入力してログインすると、匿名ユーザーがどのデータベースに権限を持っているかを確認できます:
mysql>select current_user;
mysql>show databases;
上の図から、匿名ユーザーには information_schema と test データベースに対する権限のみがあることがわかります。
匿名ユーザーは他のユーザーのログインにどのような影響を及ぼし、28000 エラーを引き起こすのでしょうか?
MySQL データベースに接続しようとすると、データベースは、提供された ID とパスワードに基づいて接続要求を受け入れるかどうかを決定します。ID は、ユーザー名とクライアント ホストの 2 つの部分で構成されます (つまり、mysql コマンドが入力されたホスト)。
ホスト フィールドの % は任意のホストに一致するか、ホスト フィールドにワイルドカードが含まれているため、一致する行が複数表示される可能性があり、サーバーはどの行に一致するかを決定する必要があります。サーバーはユーザー テーブルのデータをメモリに読み取ります。 、ホストフィールドとユーザーフィールドに従って行を並べ替えます。
mysql>select host,user,password from user order by host desc,user desc;
クライアントが接続しようとすると、サーバーは並べ替えられた行を検索し、クライアントのホストとユーザー名に一致する最初の行を使用します。一致する行が見つかった後、パスワードが一致しているかどうかを確認し、一致していればログインは成功です。
ユーザーフィールドが空の場合は、任意のユーザーと一致できることを意味します。
ここでの注意:
user は空です。つまり、任意のユーザーです。パスワードなしで localhost にログインする場合、匿名ユーザーには information_schema とに対するアクセス許可のみが与えられます。テスト データベース。他のデータベースを使用すると失敗します。
ユーザーが root の場合、パスワードが空として表示されるか、ホスト フィールドが「%」以外として表示される場合は、デフォルトの一致順序に従います。または、パスワード エラーまたはプロンプトが表示されます。エラー 1045 です。
下の図は変更されており、参考用です。たとえば、最初のシーケンスで、ホストが localhost または 127 ループバック アドレスの場合、1045 エラーが発生します。
SO ソリューション
mysql> select host,user,password from user order by host desc,user desc; ## 将排序序列中最前面的用户修改host为'%' mysql> update user set host = '%' where host = 'oracle' and user = 'root'; mysql> flush privileges;
以上がMySQL ERROR 1045 の理由とその解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

700万のレコードを効率的に処理し、地理空間技術を使用したインタラクティブマップを作成します。この記事では、LaravelとMySQLを使用して700万を超えるレコードを効率的に処理し、それらをインタラクティブなマップの視覚化に変換する方法について説明します。最初の課題プロジェクトの要件:MySQLデータベースに700万のレコードを使用して貴重な洞察を抽出します。多くの人は最初に言語をプログラミングすることを検討しますが、データベース自体を無視します。ニーズを満たすことができますか?データ移行または構造調整は必要ですか? MySQLはこのような大きなデータ負荷に耐えることができますか?予備分析:キーフィルターとプロパティを特定する必要があります。分析後、ソリューションに関連している属性はわずかであることがわかりました。フィルターの実現可能性を確認し、検索を最適化するためにいくつかの制限を設定しました。都市に基づくマップ検索

MySQLのインストール障害は、通常、依存関係の欠如によって引き起こされます。解決策:1。システムパッケージマネージャー(Linux APT、YUM、DNF、Windows VisualC Redistributableなど)を使用して、sudoaptinStalllibmysqlclient-devなどの欠落している依存関係ライブラリをインストールします。 2.エラー情報を慎重に確認し、複雑な依存関係を1つずつ解決します。 3.パッケージマネージャーのソースが正しく構成され、ネットワークにアクセスできることを確認します。 4. Windowsの場合は、必要なランタイムライブラリをダウンロードしてインストールします。公式文書を読んで検索エンジンを適切に使用する習慣を開発することは、問題を効果的に解決することができます。

MySQLは開始を拒否しましたか?パニックにならないでください、チェックしてみましょう!多くの友人は、MySQLのインストール後にサービスを開始できないことを発見し、彼らはとても不安でした!心配しないでください、この記事はあなたがそれを落ち着いて対処し、その背後にある首謀者を見つけるためにあなたを連れて行きます!それを読んだ後、あなたはこの問題を解決するだけでなく、MySQLサービスの理解と問題のトラブルシューティングのためのあなたのアイデアを改善し、より強力なデータベース管理者になることができます! MySQLサービスは開始に失敗し、単純な構成エラーから複雑なシステムの問題に至るまで、多くの理由があります。最も一般的な側面から始めましょう。基本知識:サービススタートアッププロセスMYSQLサービススタートアップの簡単な説明。簡単に言えば、オペレーティングシステムはMySQL関連のファイルをロードし、MySQLデーモンを起動します。これには構成が含まれます

MySQLパフォーマンスの最適化は、インストール構成、インデックス作成、クエリの最適化、監視、チューニングの3つの側面から開始する必要があります。 1。インストール後、INNODB_BUFFER_POOL_SIZEパラメーターやclose query_cache_sizeなど、サーバーの構成に従ってmy.cnfファイルを調整する必要があります。 2。過度のインデックスを回避するための適切なインデックスを作成し、説明コマンドを使用して実行計画を分析するなど、クエリステートメントを最適化します。 3. MySQL独自の監視ツール(ShowProcessList、ShowStatus)を使用して、データベースの健康を監視し、定期的にデータベースをバックアップして整理します。これらの手順を継続的に最適化することによってのみ、MySQLデータベースのパフォーマンスを改善できます。

この記事では、MySQLデータベースの操作を紹介します。まず、MySQLWorkBenchやコマンドラインクライアントなど、MySQLクライアントをインストールする必要があります。 1. mysql-uroot-pコマンドを使用してサーバーに接続し、ルートアカウントパスワードでログインします。 2。CreatedAtaBaseを使用してデータベースを作成し、データベースを選択します。 3. createTableを使用してテーブルを作成し、フィールドとデータ型を定義します。 4. INSERTINTOを使用してデータを挿入し、データをクエリし、更新することでデータを更新し、削除してデータを削除します。これらの手順を習得することによってのみ、一般的な問題に対処することを学び、データベースのパフォーマンスを最適化することでMySQLを効率的に使用できます。

MySQLのインストールエラーのソリューションは次のとおりです。1。システム環境を慎重に確認して、MySQL依存関係ライブラリの要件が満たされていることを確認します。異なるオペレーティングシステムとバージョンの要件は異なります。 2.エラーメッセージを慎重に読み取り、依存関係のインストールやSUDOコマンドの使用など、プロンプト(ライブラリファイルの欠落やアクセス許可など)に従って対応する測定値を取得します。 3.必要に応じて、ソースコードをインストールし、コンパイルログを慎重に確認してみてください。これには、一定量のLinuxの知識と経験が必要です。最終的に問題を解決する鍵は、システム環境とエラー情報を慎重に確認し、公式の文書を参照することです。

DEVOPSエンジニアは、特に従来の方法がダウンタイムのリスクが発生しやすい高負荷状況で、RDSデータベースの最適化と更新の課題に直面することがよくあります。この記事では、RDSデータベースのゼロダウンタイムアップデートを実現するために、AWSブルー/グリーン展開戦略を紹介します。データベースの更新ダウンタイムの悪夢に別れを告げましょう!この記事では、ブルー/グリーンの展開戦略を詳細に説明し、AWS環境で運用手順を提供して、サービスの可用性に影響を与えることなくRDSデータベースインスタンスを更新するのに役立ちます。最初に準備して、開発チームを調整し、更新のために最も低いワークロードトラフィックの期間を選択します。優れたDevOpsは、チームに事前に通知するためのアドバイスを練習します。この例は、Blue/Green Deploymentを使用してダウンタイムがゼロでデータベースインスタンスストレージスペースを削減する方法を示しています。 AWSRDSコンソールを使用できます

MySQLのインストールの一般的な理由とソリューションの失敗:1。誤ったユーザー名またはパスワード、またはMySQLサービスが開始されない場合、ユーザー名とパスワードを確認してサービスを開始する必要があります。 2。ポートの競合では、MySQLリスニングポートを変更するか、ポート3306を占めるプログラムを閉じる必要があります。 3.依存関係ライブラリがありません。システムパッケージマネージャーを使用して、必要な依存関係ライブラリをインストールする必要があります。 4.許可が不十分な場合、インストーラーを実行するには、sudoまたは管理者の権利を使用する必要があります。 5.誤った構成ファイルでは、構成が正しいことを確認するには、my.cnf構成ファイルを確認する必要があります。着実に慎重に作業することによってのみ、MySQLをスムーズにインストールできます。
