2

編集:MySQLを再インストールしたところ、これで修正されました。問題が何であったかわかりません。


コマンドラインから MySQL で次のコマンドを実行しました。

1. REVOKE ALL PRIVILEGES ON MyDB.* FROM user@'%';
2. DROP USER user@'%";
3. GRANT INSERT,SELECT,DELETE,UPDATE ON MyDB.* TO user@'%' IDENTIFIED BY 'somepassword';
4. FLUSH PRIVILEGES;

ユーザーの権限は次のとおりです。

使用許可をオンにします。'user'@'%' へ 'MyDB' で SELECT,INSERT,UPDATE,DELETE を許可するパスワードで識別.* 'user'@'%' へ

しかし、更新しようとすると、次のエラー メッセージが表示されます。

UPDATE command denied to user 'user'@'somehost' for table 'sometable'

関連情報:

SELECT、INSERT、および DELETE はすべて正常に機能します。

Connector/NET で C# を使用しています

「somehost」はサーバーと同じネットワーク上にあります (別のコンピューター)。

「sometable」はMyDBにあります。

ホスト マシンで「user」を使用してサーバーにログインすると、更新クエリは正常に機能します。

編集:

UPDATE、SELECT、INSERT、DELETE を user@'somehost.net' に付与すると、UPDATE クエリは問題なく機能します。

何か案は?

4

2 に答える 2

1

すべての許可を取り除いた後、最初にユーザーに使用特権を与える必要があります。

GRANT USAGE on MyDB.* to 'user'@'localhost'

使用権限は、このユーザーがMySQLの使用を許可されていることをサーバーに通知します

于 2011-09-21T15:15:11.667 に答える
1

再インストールすると問題が解決しました。何が問題だったのかわからない。

于 2011-10-28T02:52:00.897 に答える