Niestety nie jest możliwe ustawienie default_timezone w RDS DB ParameterGroups, więc Twoja próba była już we właściwym kierunku.
$ rds-describe-db-parameters default | grep "time_zone"
DBPARAMETER default_time_zone engine-default string static false
Aby ustawić wartość globalną przez SET GLOBAL, musisz mieć uprawnienie SUPER, które nie jest przyznane użytkownikowi RDS.
Jedynym sposobem ustawienia strefy czasowej jest ustawienie na podstawie połączenia
mysql> SET time_zone = timezone;
Na moich maszynach z powodzeniem wypróbowałem US/Eastern, ale mam dość starą generację.
Aby określić dostępne strefy czasowe, zaloguj się do swojego pudełka
mysql -h yourboxhost.rds.amazonaws.com -u <youruser> -p
i wpisz
mysql> SELECT * FROM mysql.time_zone_name;
Powinieneś otrzymać listę zainstalowanych i prawidłowych nazw stref czasowych, które możesz ustawić w swojej instancji
+----------------------------------------+--------------+
| Name | Time_zone_id |
+----------------------------------------+--------------+
| Africa/Abidjan | 1 |
| Africa/Accra | 2 |
| Africa/Addis_Ababa | 3 |
| Africa/Algiers | 4 |
| Africa/Asmara | 5 |
| Africa/Asmera | 6 |
| Africa/Bamako | 7 |
| Africa/Bangui | 8 |
| Africa/Banjul | 9 |
| Africa/Bissau | 10 |
| Africa/Blantyre | 11 |
| Africa/Brazzaville | 12 |
| Africa/Bujumbura | 13 |
| Africa/Cairo | 14 |
etc...
Musisz ustawić strefę czasową za każdym razem, gdy łączysz się z serwerem bazy danych
Na przykład, jeśli używasz rozszerzenia php Mysqli, możesz to zrobić
$mysqli = mysqli_init();
mysqli_options($mysqli,MYSQLI_INIT_COMMAND,"SET time_zone = 'Africa/Brazzaville'" );
mysqli_real_connect($mysqli,$host, $user, $pass,$dbName) or die ('Unable to connect');
W przeciwnym razie po prostu ręcznie (w sensie pozwolenia na to, aby zrobił to twój łącznik bazy danych) wykonaj SET time_zone = '<YOUR_DESIRED_TIMEZONE>'
Zapytanie zaraz po połączeniu się z bazą danych