はじめに
ほとんどのMySQLユーザーはエラー1698(28000):ユーザー「root」@「localhost」のアクセスが拒否されました 。このエラーメッセージは通常、MySQLの新規インストールで rootを使用してMySQLに接続しようとしたときに表示されます。 ユーザー。
このガイドでは、ユーザーroot onに対して拒否されたアクセスをすばやく解決する方法を説明します。 ローカルホスト 。概要の説明は、MySQLとMariaDBの両方に適用されます。テーブルを変更したり、複雑な構成を実行したりする必要はありません。
前提条件
- コマンドラインまたはターミナルウィンドウへのアクセス
- MySQLまたはMariaDBがインストールされています
- sudoのユーザー またはルート 特権
ルートを使用したMySQLへのアクセス
MySQLをインストールし、rootユーザーを使用してローカルマシンにアクセスしようとすると、使用するコマンドは次のとおりです。
mysql -u root -p
ほとんどの場合、ユーザー「root」@「localhost」のアクセスが拒否されましたというエラーメッセージが表示されます。 。
rootへのアクセスを有効にできます 1つのMySQLコマンドを使用します。
ユーザールートエラーのためにアクセスが拒否されました
rootとしてMySQLにログインできるようにするには、最初に sudo
を使用します rootユーザーを変更するには:
sudo mysql
プロンプトでパスワードを入力します。 MySQLシェルがロードされます。
ALTER USER
を使用します コマンドを実行し、認証方法を変更して、MySQLに rootとしてログインします。 :
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
このコマンドは、ユーザー rootのパスワードを変更します 認証方法をmysql_native_passwordに設定します 。これは従来の認証方法であり、 auth_pluginほど安全ではありません。 。上記の例では、パスワードとして「root」を設定していますが、より強力なパスワードを設定することをお勧めします。
ルートユーザーのMySQLアクセスをテストする
上記のコマンドを実行した後、 CTRL + Dを押してMySQLシェルを終了します。 キーボードで、または exit;
と入力します 入力を押します 。 mysqldを再起動する必要はありません ログインするサービス。
ここで、rootを使用してMySQLにアクセスしてみてください。ターミナルで、次のように入力します。
mysql -u root -p
ALTER USER
で使用したパスワードを入力します 指図。 MySQLにアクセスするためにシステムパスワードを入力しないでください。MySQLは機能しません。すべてが正常に機能した場合は、MySQLのウェルカムメッセージが表示されます。