残念ながら、RDS DBパラメータグループでdefault_timezoneを設定することはできないため、あなたの試みはすでに正しい方向でした。
$ rds-describe-db-parameters default | grep "time_zone"
DBPARAMETER default_time_zone engine-default string static false
SET GLOBALを使用してグローバル値を設定するには、RDSユーザーとして付与されていないSUPER特権が必要です。
time_zoneを設定する唯一の方法は、接続ごとに行うことです
mysql> SET time_zone = timezone;
私のマシンでは、US / Easternを正常に試しましたが、かなり古い世代を実行しています。
利用可能なタイムゾーンを確認するには、ボックスにログインします
mysql -h yourboxhost.rds.amazonaws.com -u <youruser> -p
と入力
mysql> SELECT * FROM mysql.time_zone_name;
インスタンスに設定できるインストール済みの有効なタイムゾーン名のリストを取得する必要があります
+----------------------------------------+--------------+
| 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...
データベースサーバーに接続するたびにtime_zoneを設定する必要があります
たとえば、php Mysqli拡張機能を使用する場合、これを行うことができます
$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');
それ以外の場合は、手動で(データベースコネクタに実行させるという観点から)SET time_zone = '<YOUR_DESIRED_TIMEZONE>'
を実行します。 データベースに接続した直後にクエリを実行する