ローカルのMySQLデータベースに接続しようとすると、次の3つの方法で異なる結果が得られます。
プロンプトから次のように接続すると機能します。
mysql -u root -p
この方法でパスワードの入力を求められ、入力すると接続されます。
PHPに接続し、サーバー(localhost)、ユーザー名(root)、およびパスワードを指定すると機能します。
PHPに接続して次のようなコマンドを実行すると機能しません。
exec('mysql -P 3306 -u root-p'。$password。'databasename<'。$scriptfilename);
また、最初の行にパスワードを入力すると、プロンプトから機能させることができません。
mysql.userテーブルでユーザーrootを照会すると、次の3つのエントリがあります。
root @ :: root@127.0.0.1 root @ localhost
同じ行にパスワードを入力すると、次のエラーが発生します。
エラー1045(28000):ユーザー'root' @'localhost'のアクセスが拒否されました(パスワードを使用:YES)
誰かが何が起こっているのか知っていますか?