2013-04-13 18 views
5

この質問には多くの質問がありますが、確定的な回答は見つかりません。MySQLエラー1045「ユーザー 'user' @ 'localhost'(パスワードは:YES)のアクセスが拒否されました」

私はMySQLを使用していくつかのWebアプリケーションテストを行っていますが、最初は'root'ユーザー(パスワードは空ではない)を使用しました。私のrootユーザーは、PHPとPythonのDjangoからテストされたアプリケーション、コマンドライン、およびPHPMyAdminからうまく機能しています。

私はrootユーザーを使用したくないので、別のユーザーを作成しました。ユーザーが必要とするデータベースにすべての権限を付与しました。 (この作業には、'root'としてログに記録されたPHPMyAdminを使用しました)。

新しいユーザーはMySQLにログインできません。 DjangoアプリもPHPMyAdminも、コマンドラインもありません。

私は2つの可能な疑いを持っている:

  1. ユーザーが欠けているグローバル権限があります。 (私が言ったように、私はすべてのデータベース権限を与えましたが、グローバル権限は与えていません)。

  2. ユーザが設定したホスト。 ('ルート'はホスト'localhost' の'私-PC-名''127.0.0.1'':: 1' のmysql.userテーブル内の4本のラインを、持っています;

)新しいユーザーがホストのための1つのラインを持っている「%」ながら、(私はダブルチェックパスワードを持っているので、私は、これはパスワードの問題ではありません確信しています)

+1

あなたはmysqlで新しいユーザーを作成する方法を示します –

+0

'%'ワイルドカードを使用する代わりに 'user @ localhost'に特権を与えようとしましたか? – Uby

+0

@Tamil:PHPMyAdminで新しいユーザーを作成しました。 –

答えて

5

%。そのことを意味する新しいユーザーはどのホストからでもデータベースにアクセスできます。

ただし、CREATE USERステートメントを指定した方がはるかに便利です。また

、ユーザーは@'localhost'@'%'の両方を持っている必要があり、なぜそれが説明以下のMySQLのマニュアル、チェック:

MySQLサーバ+再起動

MySQL Reference Manual - Adding Users

+0

' @ 'localhost'' helpedとしてユーザを追加してください。ありがとうございました。 –

+1

mysqlの独自の管理プログラム( "mysql workbench ce")では、モデリングモードでオプションを提供するのではなく、デフォルトで各自のローカルホストバージョンを持つことが重要です"@%"バリアントを作成します。 – Jules

0

"フラッシュ権限を;"コマンドは私のためにそれを解決しました

関連する問題