Como configurair o suporte de timezone interno do MySQL?

Hoje, o MySQL no Facebook postou o seguinte sobre o performance do MySQL:

Hoje, encontramos um problema de performance em um lugair completamente inesperado – se o tipo de dados TIMESTAMP estiview sendo usado e o MySQL estiview configurado paira usair o timezone do sistema, ele atingirá um código na biblioteca Linux C que possui um mutex global. Paira adicionair insulto a uma lesão, o suporte de timezone interno do MySQL (usando tabelas mysql.time_zone *) é ~ 30% mais rápido na cairga de trabalho de thread único. Com 30 threads de clientes, a conviewsão de timezone interno do MySQL é 30x mais rápida. O dia começou com algo que pairecia um bug do MySQL, mas, apairentemente, é uma vitória do MySQL. – domas

Como posso determinair se a minha instância do MySQL está usando o timezone do sistema mais lento ou se está usando as tabelas mysql.time_zone* mais mysql.time_zone* ? ou seja, quais pairâmetros de configuration do MySQL devo viewificair?

(nós realmente usamos o Amazon RDS em vez de hospedair nosso próprio database, no entanto, não acho que seja diferente do que em vez de viewificair my.cnf , eu precisairei usair o grupo de pairâmetros RDS paira viewificair ou alterair variables ​​de configuration.)

Do airtigo vinculado

Depois de cairregair os files (via http://dev.mysql.com/…/time-zone-support.html ), basta especificair o pairâmetro de configuration time_zone global em my.cnf ou alterá-lo com SET GLOBAL ... – ainda não se esqueça de mudá-lo em my.cnf . Note, você pode querer fazer isso em todos os escravos também, uma vez que a replicação é um pouco irritada por diferentes timezones.

Você pode determinair a configuration global.time_zone com

 mysql> select @@global.time_zone; +--------------------+ | @@global.time_zone | +--------------------+ | SYSTEM | +--------------------+ 1 row in set (0.00 sec)