LoginSignup
1
2

More than 3 years have passed since last update.

【RDS for Oracle】タイムゾーンの変更

Last updated at Posted at 2019-07-03

ここを参照しながらやりました。

注意点

Oracle のタイムゾーンより

タイムゾーンオプションでは、ホストレベルでタイムゾーンが変更されます。タイムゾーンを変更すると、SYSDATE や SYSTIMESTAMP など、すべての日付列および値に影響を与えます。

Oracle のタイムゾーンより

タイムゾーンの前提条件
タイムゾーンオプションは、固定かつ永続オプションです。オプショングループに追加したオプションを削除することはできません。DB インスタンスに追加したオプショングループを削除することはできません。オプションのタイムゾーン設定を別のタイムゾーンへと変更することはできません。

タイムゾーンオプションを DB インスタンスに追加する前に、DB インスタンスの DB スナップショットを取得することを強くお勧めします。タイムゾーンオプションが正しく設定されていない場合は、スナップショットを使用して、DB インスタンスを復元できます。

RDS for Oracleにてタイムゾーンの変更がサポートされましたより

既にOption Groupsがインスタンスに紐付いている場合は再起動がかかります。

変更方法

オプショングループの作成

  • RDSのコンソールからオプショングループグループの作成
    1.png

  • エンジンメジャーエンジンのバージョンをオプショングループを紐付けるRDBのエディションとバージョンに合わせる

  • 今回はStandard Edition 212.1のOracleを使用するため以下に設定
    2.png

  • 作成されたオプショングループを選択しオプションの追加
    3.png

  • オプションをTimezone、タイムゾーンをAsia/Tokyo

  • 今回はすぐに適用したいのですぐに適用はい
    4.png

  • オプションの追加
    5.png

 作成したオプショングループをRDSに付与

  • RDSのコンソールで対象インスタンスを選択し変更
    6.png

  • データベースの設定オプショングループで作成したオプショングループを指定
    7.png

  • 今回はすぐに適用したいのですぐに適用を選択しDBインスタンスの変更をクリック

  • 変更が始まる
    8.png

  • 今回は別のオプショングループがインスタンスに紐付いていたのでRDSが再起動される。

  • CloudWatchでアラートを確認すると再起動されていることがわかる
    9.png

タイムゾーンの確認

  • RDS再起動後、インスタンスに接続
SQL> select to_char(sysdate, 'YYYY-MM-DD HH24:MI:SS') from dual;

TO_CHAR(SYSDATE,'YY
-------------------
2019-07-03 18:45:04 ★JSTの時刻になっている

 ※上記のSQLは2019/07/03 18:45に実行

補足

RDS for Oracle と S3 でファイルをやり取りするでインスタンスに紐づけたオプショングループ(orcl-s3)を今回は付け替えたため、S3 にファイルをアップロードしようとすると以下のエラーが発生した。

 ※ orcl-s3はRDSからS3にアクセスするためのオプショングループ

SQL> SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
        p_bucket_name => 'orcl-test',
        p_directory_name => 'DATA_PUMP_DIR',
        p_s3_prefix => 'orcl-test/',
        p_prefix => 'exp_scott.log')
     AS TASK_ID FROM DUAL; 
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
       *
ERROR at line 1:
ORA-00904: "RDSADMIN"."RDSADMIN_S3_TASKS"."UPLOAD_TO_S3": invalid identifier
  • オプショングループ(timezon-jst)オプショングループ(orcl-s3)に変更しようとしたらエラー
  • これに違反した模様

DB インスタンスに追加したオプショングループを削除することはできません。

10.png

  • オプショングループを選択しオプションの追加

11.png

  • オプションにS3_INTEGRATIONを追加してみる
    12.png

  • 追加された
    13.png

  • オプショングループを付与しているインスタンスが変更中となる
    14.png

  • 利用可能となれば追加したS3_INTEGRATIONが反映される

  • このときインスタンスの再起動は起こっていません
    15.png

  • ORCL1上のファイルをS3にアップロード

SQL> SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
        p_bucket_name => 'orcl-test',
        p_directory_name => 'DATA_PUMP_DIR',
        p_s3_prefix => 'orcl-test/',
        p_prefix => 'exp_scott.log')
      AS TASK_ID FROM DUAL;

TASK_ID
------------------------------------------------------------------------------------------
1562209514266-32

SQL> SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-1562209514266-32.log'));

TEXT
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2019-07-04 03:05:15.763 UTC [INFO ] File #1: Uploading the file /rdsdbdata/datapump/exp_scott.log to Amazon S3 with bucket name orcl-test and key orcl-test/exp_scott.log.
2019-07-04 03:05:15.851 UTC [INFO ] The file /rdsdbdata/datapump/exp_scott.log was uploaded to Amazon S3 with bucket name orcl-test and key orcl-test/exp_scott.log.
2019-07-04 03:05:15.851 UTC [INFO ] The task finished successfully.
  • S3を確認
  • 無事アップロードされてました。
  • オプショングループにオプションを複数追加できるみたいです 16.png
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2