web-dev-qa-db-ja.com

LAMPの使用中に、ユーザー 'root'のMySQLアクセスが拒否されました

mysqlをセットアップするときに、通常、ランプサーバー+ phpmyadminをインストールしたいだけです。このエラーが発生します。

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

これが何なのかわかりません。
Linuxとの最初の取引なので、ubuntuでphpコードを実行する方法がわかりません。

5
amr atef
  1. mysqlのパスワードを設定します。

    Sudo dpkg-reconfigure mysql-server-5.x
    
  2. ターミナルを開き、次のように入力します。

    mysql -uroot -p
    

パスワードを入力して押します Enter

3
Tachyons

ここに私のために働いたものがあります:

Mysqlコマンドの先頭に「Sudo」を追加するだけです。

Sudo mysql -uroot -p

そのコマンドの先頭にある「Sudo」に注意してください

2
pelican

この古い投稿で、MySQLが過去5年間でいくつかの点を変更したことに注意することが重要だと思います。 Digital Oceanは、 buntu 18.04にMySQLをインストールする方法 というチュートリアルで次のように述べています:

MySQL 5.7(およびそれ以降のバージョン)を実行しているUbuntuシステムでは、ルートMySQLユーザーは、パスワードではなくデフォルトでauth_socketプラグインを使用して認証するように設定されています。

したがって、以下を実行して適切かつ安全にインストールしてください。

Sudo apt update
Sudo apt install mysql-server
Sudo mysql_secure_installation

私は個人的にmysql_secure_installationからのすべてのプロンプトに対してyと答え、強力なパスワードを作成しました(VALIDATE PASSWORDプラグインをセットアップした場合はオプション2)。ただし、ここで選択するのはあなたの選択です。いずれにしても、これらのプロンプトのいずれかでパスワードを設定します。ただし、後で説明するように、必ずしもパスワードは必要ありません。

mysql_secure_installationのプロンプトが完了した後。ログインするために以下を入力するだけです:

Sudo mysql

これは、MySQL 5.7以降のネイティブ認証方法がauth_socketではなくmysql_native_passwordであり、セキュリティが向上しているためです。パスワードは必要ありません。インストールしたマシンからしかログインできないためです。

別のソースからログインするためにパスワードを使用する必要がある場合、または詳細を知りたい場合、 How to Install MySQL on Ubuntu 18.04 全体を読むことをお勧めします。

1
Brian