問題:ルーチンを変更できません。mysqlのルーチンを変更できません
私はmysql 5.1.47を使用しています。私は「testuser」と呼ばれるユーザを作成し、dbは「abc1、abc2、abc3」と呼ばれています。
最初に私は
GRANT ALL ON *.* TO 'testuser'@'%';(also::> GRANT ALL PRIVILEGES ON *.* TO 'testuser'@'%';)
FLUSH権限を試みました。
が、これがまたGRANT ALL ON *.* TO 'testuser'@'%' IDENTIFIED BY 'passwd';
FLUSH PRIVILEGES;
これは正常に動作しようとしたユーザーtestuserとは、ルーチンを変更し、作成することができました。
私はすべての特権を取り消し、ユーザーtestuserを削除してtestuserも作成しました。その後、私が試した:
GRANT ALL ON abc1.* TO 'testuser'@'%';
は、上記の方法(特にDB)私はroutine.Iがローカルホスト、%、127.0.0.1のようなすべてのホストを試み変えることができないんを使用して、このさらに
GRANT ALL ON abc1.* TO 'testuser'@'%' IDENTIFIED BY 'passwd';
GRANT ALTER ROUTINE ON abc1.* TO 'testuser'@'%';
FLUSH PRIVILEGES;
を試し、ローカルIP。私は、ワークベンチを使用してルーチンを変更しようとしましたが、エラーなしで空白です。
しかし、testuserは、ルーチンを作成することができ、testuserによって作成されたルーチンを編集することができます。しかし、他のユーザによって作成された他のルーチンは、testuserによって編集できません(どちらのルーチンも同じdbにあります)。
しかし、私はすべてにアクセス権を与えるようなDB:
GRANT ALL ON *.* TO 'testuser'@'%';
FLUSH PRIVILEGES;
その後、testuserとは、すべてのルーチンを編集することができます。この問題を解決するのを手伝ってください。
ありがとうございました。 vijai
%localhostを除外しない - localhostと%を異なるユーザーとして表示する唯一の理由は、ローカルホストがより多くのアクセス許可を与えられることです。 – Woody
あなたの返信をありがとう、%、localhost、127.0.0.1.withまた、削除することができますルーチンを作成します。しかし、変更ルーチンが動作していません:( – vijai
私も特定のIPアドレスを追加しようとしました。 – vijai