Change MySQL Timezone on Amazon RDS

31 / May / 2014 by Tejprakash Sharma 0 comments

Amazon RDS doesn’t allow you to change timezone, It keeps same UTC time zone across all regions. time_zone variable in the parameter group is read only.

You can change the time zone on each connection or session by making a procedure in default mysql database and call this function on each init connection.

1.    Create a procedure for IST

DELIMITER |
     CREATEPROCEDURE mysql.rds_store_time_zone ()
        IFNOT(POSITION('rdsadmin@'INCURRENT_USER())=1)THEN
           SET SESSION time_zone ='+5:30';
        ENDIF
|
DELIMITER ;

2.   Update parameter group

aws rds modify-db-parameter-group --db-parameter-group-name parameter_group_name --parameters "ParameterName=init_connect, ParameterValue=CALL mysql.rds_store_time_zone, ApplyMethod=immediate"

3.   Grant execute permission

GRANT EXECUTE ON PROCEDURE mysql.rds_store_time_zone TO 'user'@'%';
FOUND THIS USEFUL? SHARE IT

Tag -

MySql RDS

Leave a Reply

Your email address will not be published. Required fields are marked *