• 締切
  • すぐに回答を!

ERROR 1045 (28000) (using password: YES)について

  • 質問No.5642978
  • 閲覧数30780
  • ありがとう数11
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 25% (1/4)

はじめまして。
MySQLで作ったユーザー「a」でログインするのに、

mysql -u a -p
password:12345

でログインしようとすると、

ERROR 1045 (28000): Access denied for user 'a'@'localhost' (using password: YES)

と表示されてしまいます。
パスワードは設定した通りなので間違いないのですが、ネットでも調べてもパス違いでしか載ってないので、他に原因がわかる方いましたらお教え頂ければと思います。

rootユーザーではログインできる。
バージョンは5.0.77

以上、よろしくお願いします。

みんなが選んだベストアンサー

  • 回答No.3
  • ベストアンサー

ベストアンサー率 0% (0/0)

解決した一例です

insert into user set user="hoge", password=password("hogepass"), host="localhost";

で、アカウントとパスワードを設定し、

select user, host, password from user;
確認して、すべて正しく設定されているのに、
それでもなお、using password: YES
とエラーがでてしまっていて困っていたところで、ここにたどりつきました。

[以下解決した例]
で、もう一度、rootでmysqlにログインし、
set password for hoge@localhost = password('hogepass');
と、パスワード設定をおこなったら、
掲題のエラーがでることなく、新ユーザで、mysqlが使えるようになりました。

なんでなのかは全く不明です。
とりあえず、解決できたので、次に踏んだ人用に、足跡残しておきます。

その他の回答 (全2件)

  • 回答No.1

ベストアンサー率 28% (2/7)

'a'@'%'にはパスワードが設定されていても、
'a'@'localhost' にはされていなくてlocalhostから接続する場合、
上記のエラーが出ると思います。

rootでログインし、mysqlデータベースに接続(use mysql)して、
select user, host, password from user;
で一覧を確認してみてください。
user=a、host=localhostの列はあるでしょうか?
お礼コメント
asdsaaa

お礼率 25% (1/4)

ご回答ありがとうございます。
参照した結果、user=a、host=localhostの列はありました。
またrootと同じパスワードに設定しているのですが、
それもrootと同じようになっておりまして、
rootではログイン可能です。
投稿日時:2010/02/02 11:57
  • 回答No.2

ベストアンサー率 28% (2/7)

あと考えられるのは権限が正しく付いていない、等でしょうか。
a以外に、別の名前のテストユーザを作成することは可能ですか?

mysql>GRANT ALL PRIVILEGES ON *.* TO user@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;

上記で作った新しいユーザがログインできるのなら、
一度aユーザをdropして、再作成してみるのも手かもしれません。
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ