0

'spot'@'localhost'パスワードで識別されるユーザーを介してデータベースにアクセスしようとすると、このエラーが発生します。

PermissionsError: (1045, "Access denied for user 'spot'@'localhost' (using password: YES)", None)

次の 2 行を使用して、このユーザーを作成します。

create user 'spot'@'localhost' identified by 'fakepasswd';
grant all privileges on *.* to 'spot'@'localhost';

このコードをローカルで実行すると、正常に動作します。このコードを別のマシンで実行すると、前述のエラーが発生します。しかし、show grants for 'spot'@'localhost'両方のマシンで実行すると、どちらも同じ出力が得られます。

 GRANT ALL PRIVILEGES ON *.* TO 'spot'@'localhost' IDENTIFIED BY PASSWORD '*196BDEDE2AE4FRO4CA44C47D54D78478C7E2BD7B7'

このアクセスの問題をデバッグするにはどうすればよいですか?

4

1 に答える 1

0

localhost からだけでなく、次のクエリを実行して権限を付与する必要があります。

create user 'spot'@'%' identified by 'fakepasswd';
grant all privileges on *.* to 'spot'@'%';
flush privileges;

これにより、ユーザーは任意の IP から接続でき%ます。 をサーバーの IP に置き換えることができます。

于 2013-09-12T06:15:17.833 に答える