So today presented my with an interesting issue.  A simple INSERT statement being run by a functional account in my local mySQL install failed with the following message:

1227Access denied; you need the SUPER privilege for this operation

Mind you, this is working fine in production, and granting SUPER to a functional account defeats the entire purpose of database security.

After digging, it was brought to my attention that in my version of mySQL (5.0.67), the SUPER privilege is required to execute TRIGGERs, which this table did have.

Sure enough, dropping the TRIGGER allowed the query to be performed without issue.  The really interesting part is that after re-adding the TRIGGER, the query STILL worked.  I’m guessing there was something wrong with the time of the user creation vs. the TRIGGER creation in my local environment.

The bottom line is, if you are receiving an error about not having SUPER privileges for a simple query, try dropping any triggers and re-adding them.

Written on May 8th, 2013 , mySQL

Rehearsing Creation is proudly powered by WordPress and the Theme Adventure by Eric Schwarz
Entries (RSS) and Comments (RSS).

Rehearsing Creation

Musings on faith, technology, the arts, and life