Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I had recently purchased a new server, and transferred all my accounts via WHM Transfer.

The problem is that when WHM takes a daily backup, it outputs are message such as

DBD::mysql::st execute failed: There is no such grant defined for user 'abc' on host 'myhostname'

The problem is solved when I remove skip-name-resolve from my my.cnf file. Tough I dont find any differences in the speed (when I dont add it), it is often mentioned in forums that adding skip-name-resolve optimizes Mysql Performance.

Does adding skip-name-resolve really help, if one has a Dedicated server?

share|improve this question

closed as off topic by mdpc, Ward, Michael Hampton, John Gardeniers, TheCleaner Dec 4 '12 at 21:29

Questions on Server Fault are expected to relate to professional server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer 1

It really depends on how many clients are connecting to the server and how often. If you only have one server connecting to MySQL (e.g. the local host) there is really no benefit by setting this option because MySQL does cache the result from the DNS lookup for some time, so you only really incur the performance penalty at the start.

If you have lots of hosts connecting to your MySQL server, and many connections, you can certainly see a benefit (I have seen benefits in environments where we have 25 web servers hitting a DB server that is handling 500 q/sec, with a new connection for each web request).

You do have to adjust all the grants to use IP addresses instead of host names if you go this route, e.g. to fix your above issue:

SHOW GRANTS FOR 'abc'@'myhostname';

Take the output of that and change the host name to IP address to create all the same grants based on the IP address. You can then revoke the host-based grants.

share|improve this answer
    
thanks for the info, just have a one, localhost for now –  Akash Dec 3 '12 at 16:55
    
In case, if we add grants for IP address, while connecting to the DB, do you need to specify the IP address instead of the 'DB name'/'DB user' –  Akash Dec 3 '12 at 16:56
    
Nope, since the grants by IP deal with the client's address it shouldn't affect the way the clients are connecting to the server (they can continue to specify localhost as before and should work). –  blackbox222 Dec 3 '12 at 18:02
    
If you connect specifying localhost in the host parameter then your MySQL user should have rights as localhost. –  mwasif Dec 4 '12 at 10:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.