Amazon Web Services 資料一覧

AWSメモ(データベース)

2019/12/01更新

AWSで見られる分かりにくい挙動やエラーなどについてメモとして記す。

このメモではAWSのデータベースサービスを扱う。

マネジメントコンソールの表示は日本語/英語を併記する
記載内容は記事執筆時点の情報なのでタイミングやAWS CLI、AWS SDKなどのバージョンによっても変わっている可能性がある

Amazon Aurora

パラメータグループの変更

Aurora (MySQL)-5.6.10aにて、クラスタ起動後にdynamicタイプのパラメータグループの内容を変更すると本来はインスタンス再起動不要であるにも関わらず、パラメータグループのステータスが「同期中/in-sync」ではなく「再起動の保留中/pending-reboot」と表示されインスタンスの再起動を要求されることがある。

ただしこれは表示上だけの問題なので、実際の設定値が変わっていれば設定変更は完了しておりそのまま使い続けてよい。(AWSサポート回答より)

例) dynamicタイプのmax_connectionsを90から450に変更した場合

(変更前)
mysql> select @@max_connections;
+-------------------+
| @@max_connections |
+-------------------+
|                90 |
+-------------------+

(変更後)
mysql> select @@max_connections;
+-------------------+
| @@max_connections |
+-------------------+
|               450 |
+-------------------+
-> 実際に設定値が変わっていればよい

スロークエリログの記録タイミング

Aurora (MySQL)-5.6.10aにて、スロークエリログのタイムスタンプはSQL開始時刻ではなくSQL終了時刻となる。

例)

16:44:00にSQL開始

mysql> select now(); select sleep(10);
+---------------------+
| now()               |
+---------------------+
| 2017-08-15 07:44:00 |
+---------------------+

+-----------+
| sleep(10) |
+-----------+
|         0 |
+-----------+

スロークエリログの内容(タイムスタンプはSQL開始時刻ではなくSQL終了時刻)

# Time: 170815 7:44:10
# User@Host: awsuser[awsuser] @ [172.31.29.5] Id: 941
# Query_time: 10.000223 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
SET timestamp=1502783050;
select sleep(10);