Mysqltuner: temp tables & table cache hit rate?

Since I started RT, I’ve always gotten these three comments from mysqltuner
[!!] Temporary tables created on disk: 30% (354 on disk / 1K total)
[!!] Table cache hit rate: 18% (40 open / 222 opened)
General recommendations:
Reduce your SELECT DISTINCT queries without LIMIT clauses

Is there a way to help the above metrics and reduce the select disticnt queries thing? Are these code-level changes or just more/better usage by our staff? If it’s a usage thing, what things should we stop doing and what should we start doing?

If the answer is to have better/more index in MySQL (a recommendation I’ve seen many times on this list), could you please also include a recommendation on the index itself? I don’t know what indexes to create.

RT382, MySQL 5.077, Apache 2.2.11, mod-perl 2.04, mysqltuner 1.00, OpenBSD 4.4-STABLE, 2.5GB RAM, 3GB swap. Machine dedicated to RT.

Thank you,
PH

Paul Hirose : pthirose@ucdavis.edu : Sysadm Motto: rm -fr /MyLife

Since I started RT, I’ve always gotten these three comments from mysqltuner
[!!] Temporary tables created on disk: 30% (354 on disk / 1K total)
[!!] Table cache hit rate: 18% (40 open / 222 opened)
General recommendations:
Reduce your SELECT DISTINCT queries without LIMIT clauses

Is there a way to help the above metrics and reduce the select disticnt queries thing? Are these code-level changes or just more/better usage by our staff? If it’s a usage thing, what things should we stop doing and what should we start doing?

If the answer is to have better/more index in MySQL (a recommendation I’ve seen many times on this list), could you please also include a recommendation on the index itself? I don’t know what indexes to create.

RT382, MySQL 5.077, Apache 2.2.11, mod-perl 2.04, mysqltuner 1.00, OpenBSD 4.4-STABLE, 2.5GB RAM, 3GB swap. Machine dedicated to RT.

Thank you,
PH

Paul,

You are getting those results because RT runs many different queries
and uses DISTINCT a lot to prevent duplicate rows. There is nothing to
be done, these output of mysqltuner just gives you places to look for
obvious problems. This is not one for RT.

Cheers,
Ken