-1

重複の可能性:
mysql: システム テーブルにトリガーを作成できませんか?

MySQLver 5.1.59onを使用していrhel 6.1 (64 bit)ます。データベースの削除を監視し、そのためにデータベースの db テーブルにトリガーを作成しようとしていmysqlます。triggerとしてログインしてを作成していroot userます。書かれたトリガーは次のとおりです。

区切り文字 |

CREATE
    /*[DEFINER = { user | CURRENT_USER }]*/
    TRIGGER `mysql`.`test` BEFORE DELETE
    ON `mysql`.`db`
    FOR EACH ROW BEGIN
    INSERT INTO cescnet.db_monitor (DB_name,user_name,dateandtime,operation_type) VALUES (mysql.db.Db,CURRENT_USER(),NOW(),'Delete');
    END;|

しかし、エラーが発生しています:

エラーコード: 1465

システム テーブルにはトリガーを作成できません

root ユーザーとして作業しているため、システムに対するすべての権限があると思います。ローカル ホストを含​​む任意のホストからの root ユーザーのグローバル権限には、SUPER 権限が含まれます。誰でも私たちを助けてもらえますか?

4

2 に答える 2

0

大げさな推測をして、このエラー メッセージが表示される理由は、システム テーブルにトリガーを作成できないためだと言います。

ああ、「権限に関係なく」追加できるかもしれません

于 2012-11-17T07:49:39.243 に答える
-1

要するに:あなたはできません。

私も次のようなことを試しました

mySql によって提供される (すべての) および (スーパー) 特権を参照してください

次のようなすべてのタイプの特権を試した後

grant super on *.* to root@localhost
grant all on *.* to root@localhost

最も単純なトリガーを試しましたが、同じエラーが発生しました

Triggers can not be created on system tables

システムテーブルにトリガーを作成できる場所を見つけた場合、それは単に間違っています

于 2012-11-17T11:07:30.390 に答える