MySQL initial statement in ODBC connector (under windows) not taking effect
I'm using MySQL ODBC 5.1 driver under Windows to connect to my database. In the "Initial Statement" field I configured it to run SET SESSION binlog_format = 'RO开发者_运维问答W'
when connection starts. It was working all fine, until yesterday, when I needed to restart mysql database server.
Not, all connections are not initiated with this binlog format, and use system default instead. Running show variables like '%binlog%'
from that server shows 'STATEMENT' instead of 'ROW'.
I tried enabling debug logging in the driver, but it does not show any useful info. Tried restarting mysql server - no luck. Looked in error logs in both Event Viewer, and on mysql server - no indication that anything is wrong.
Anyone has any idea on what might be not right here?
EDIT: checked privileges (as Charles suggested), and user has all privileges on the server.
The MySQL manual page on changing binlog_format
on the fly indicates that the running user must have the SUPER
priv as of 5.1.29. Can you check the permissions on the user you're connecting with? I'm willing to bet that your user isn't SUPER
any longer, though I would really expect MySQL to complain about this.
Seems to be resolved by re-installing the driver.
精彩评论