I am having to tune a client's MySQL server on a Windows machine but I only have access to the MySQL cli and some MySQLAdmin cli functions. I can't see how I can mysql-bench either because it needs to run on the same server as MySQL.
Is there a way I can benchmark or tune MySQL without having access to the OS? The Sysadmin who manages the server has told me just to send him any config changes and he will apply them but that will take forever going back and forth and I don't even know where the changes need to be made as I can't see anything on the system.
Anybody else had an issue like this?
Thanks.
What sort of tuning are we talking about here?
Perhaps the best idea would be for both of you to read a book such as "High Performance MySQL" and TOGETHER plan the best strategy.
Doing it remotely is definitely not the most efficient way of doing things but its not totally impossible if you have decent cooperation on the other end.
I think the real key here is going to be for both of you to be on the "same team".
A "slow to respond" sysadmin is also not the most fun to work with. Perhaps you guys can schedule some phone time and go over a general battle plan... then fine tune it from there?
Sorry to sound vague and general but that's the best I can do with the details of your question.
Hope this helps.
What are you tuning for? There are so many factors and variables that you need to be very clear about this point. You could save a lot of time and frustration by setting up another installation of MySQL locally and do the bulk of your tuning on that before passing the new parameters to the server admin.
I'm not sure how far into this you've gone, so please forgive me if this answer is too general.
There are several tools out there like supersmack and mybench that should run remotely.
In the meantime, have you done the leg work of determining what's already present on the server? I'm always surprised how far I can get by:
Sounds entirely impossible; tell them to get a production-spec performance test machine and deploy the application in the same way on there. Get a load simulator hitting it with simulated production traffic while it's loaded with simulated production data (or a copy if feasible)
Don't do performance tuning on production boxes until you've tested it- you could easily make things worse, or even introuction functional bugs.