I finished migration from 5.1 to 5.6, and (with the same queries as before) mysql complains right away about:
General error: 1651 Query cache is disabled; restart the server with query_cache_type=1 to enable it
I don't want the query cache enabled (that's an app with lots of writting), and my file my.ini looks like this:
# The MySQL server
[mysqld]
# ... other parameters...
query_cache_type = 0
query_cache_size = 0
Also, on connect, my php connection wrapper always executes
SET SESSION query_cache_type = OFF
What I don't understand is
- Why the parameters apparently do not work
- Why does mysql even have to complain about a parameter that is disabled when it is the user's choice to do so.
Enlightment needed - Thanks!
SET SESSION query_cache_type = OFF
is causing this. Have you read (in the Query Cache Configuration page) that: "If you set query_cache_type at server startup (rather than at runtime with a SET statement), only the numeric values are permitted."query_cache_type = 0
, I don't think there is any reason to use thatSET
.SET ... = 0
does not change anything, removing totally the setting does. I agree that it is overkill to double specify the parameter on server and client's sessions, but to me it should not behave like this anyway.