การตั้งค่า Aurora Serverless Timezone

การตั้งค่า Aurora Serverless Timezone จะช่วยให้เราใช้งาน Aurora Serverless สะดวกในเรื่องของเขตเวลามากยิ่งขึ้น และในกรณีที่เราต้องทำการตั้งค่าเกี่ยวกับ Timezone นั้น เราสามารถจัดการการตั้งค่าโดยเลือกเป็น Timezone +07 ได้โดยไม่ต้องคำนวณจาก UTC มาเป็น +07 ให้ยุ่งยากอีกด้วย

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ครั้งนี้ผมจะมาอธิบายเกี่ยวกับ การตั้งค่า Aurora Serverless Timezone เพื่ออำนวยความสะดวกในการใช้งานเกี่ยวกับ Timezone ที่กำลังใช้งานอยู่ในปัจจุบันครับ

สิ่งที่ต้องมี

ก่อนที่จะเริ่มทำการตั้งค่า Aurora Serverless Timezone ต้องทำการ สร้าง Aurora Serverless และ เชื่อมต่อ Aurora Serverless จาก Query Editor ให้เรียบร้อยก่อน เพราะเราต้องใช้ Aurora Serverless ในการตั้งค่า Timezone นั่นเอง

บทความที่ต้องทำก่อนเริ่มการตั้งค่า Aurora Serverless Timezone นี้คือ

  • วิธีการเชื่อมต่อ Aurora Serverless จาก Query Editor
    เมื่อทำการเชื่อมต่อ Aurora Serverless และทดสอบการจัดการ Database โดยการส้ราง Database, Table และ Value เสร็จแล้ว ให้เริ่มทำการตั้งค่า Aurora Serverless Timezone ในหัวข้อถัดไปได้เลย

※ข้อควรระวัง
แนะนำให้อ่านบทความอย่างถี่ถ้วนก่อนเริ่มลงมือทำในทุกบทความ เช่น สิ่งที่ต้องมี เป็นต้น

การตรวจสอบ Aurora Serverless Timezone

ขั้นตอนนี้เป็นการตรวจสอบ Aurora Serverless Timezone เพื่อดูเขตเวลาปัจจุบัน เมื่อพร้อมแล้วเรามาเริ่มกันเลย

รันคำสั่งด้านล่างนี้เพื่อสร้าง table ที่ชื่อว่าtest_datetime

use tinnakorn;
create table test_datetime(id int, dt datetime);

setting_tz-1

เลื่อนลงมาด้านล่างที่หัวข้อ Output จะเห็นว่าสามารถสร้าง table ที่ชื่อว่าtest_datetimeได้แล้ว
setting_tz-2

คัดลอกคำสั่งนี้วางในช่อง Editor เพื่อเพิ่มข้อมูลลง table ตามด้วยคลิกRun

use tinnakorn;
insert into test_datetime(id, dt) value (1, NOW());

setting_tz-3

เลื่อนลงมาด้านล่างที่หัวข้อ Output จะเห็นว่าสามารถInsertข้อมูลลงในตาราง test_datetime ได้แล้ว
setting_tz-4

คัดลอกคำสั่งนี้วางในช่อง Editor เพื่อเรียกดูข้อมูลใน table ตามด้วยคลิกRun

use tinnakorn;
select * from test_datetime;

setting_tz-5

เลื่อนลงมาด้านล่างที่หัวข้อ Result จะเห็นว่าสามารถแสดงเนื้อหาของตารางtest_datetimeได้แล้ว

แต่ว่าเวลาที่แสดงนั้นจะเป็น Timezone UTC ซึ่งจุดประสงค์ที่เราจะทำในบทความนี้คือการเปลี่ยน Timezone UTC ให้เป็น +07 หรือเวลาของประเทศไทย เพื่อให้การใช้งานของ Aurora Serverless นั้นมีความสะดวกในเรื่องของเขตเวลาที่กำลังใช้งานอยู่นั่นเอง
setting_tz-6

การตั้งค่า Aurora Serverless Timezone

ขั้นตอนนี้เป็นการตั้งค่า Aurora Serverless Timezone จากUTCให้เป็น+07

กลับมาที่หน้า Databases ของเราตาม path ของRDS 〉 Databases 〉 tinnakorn-aurora (ชื่อ database ของคุณ)นี้ได้เลย
เมื่อเข้ามาแล้วเลื่อนลงมาด้านล่าง เลือกหัวข้อConfiguration
จากนั้นดูที่ DB cluster parameter group ในช่องสีเขียว ซึ่งเราจะทำการเปลี่ยนตรงนี้เพื่อให้ Timezone เป็น +07 แต่ตอนนี้เรายังไม่สามารถเปลี่ยนได้ เราต้องทำการสร้าง parameter group ขึ้นมาก่อน
setting_tz-7

การสร้าง Parameter groups

มาที่เมนูด้านซ้าย เลือกParameter groups
setting_tz-8

คลิกCreate parameter group
setting_tz-9

การตั้งค่า Parameter group details นี้คือ:
» Parameter group family:aurora-mysql5.7 ▼(เลือกให้ตรงกับชื่อเดิม เช่น default.aurora-mysql5.7)
» Type:DB Cluster Parameter Group ▼
» Group name และ Description: เช่นtinnakorn-parameter-group(ใส่ชื่ออะไรก็ได้)
» คลิกCreate
setting_tz-10

ค้นหาชื่อ Parameter group ของเรา แล้วคลิกเข้าไป
setting_tz-11

ตั้งค่า Parameter ตามนี้:
ค้นหา Parameter:?︎ time_zone
Checktime_zone
คลิกEdit parameters
setting_tz-12

เลือก time_zone:Asia/Bangkokแล้วกดSave changes
เพียงเท่านี้การสร้าง Parameter group timezone ที่เป็น+07ก็เสร็จเรียบร้อยแล้ว
setting_tz-13

การเปลี่ยน Parameter group ใน Database

ทีนี้กลับมาที่ Database ของเรา
setting_tz-14

คลิกModify
setting_tz-15

เลื่อนลงมาด้านล่างสุดที่หัวข้อ▼ Additional configuration
แล้วเปลี่ยน DB cluster parameter group โดยเลือก Parameter group ของเราที่สร้างไปเมื่อสักครู่ เช่นtinnakorn-parameter-groupจากนั้นคลิกContinue
setting_tz-16

เลือกApply immediatelyและคลิกModify cluster
setting_tz-17

เมื่อขึ้น Modifying แล้วรอจนกว่า Status จะขึ้นAvailableตามรูปภาพ
setting_tz-18

จากนั้นกลับมาที่หน้า Query Editor อีกครั้ง
คัดลอกคำสั่งนี้วางในช่อง Editor เพื่อเพิ่มข้อมูลลง table ตามด้วยคลิกRun

use tinnakorn;
insert into test_datetime(id, dt) value (2, NOW());

setting_tz-19

ตรวจสอบข้อมูลการ Insert
setting_tz-20

คัดลอกคำสั่งนี้วางในช่อง Editor เพื่อเรียกดูข้อมูลใน table ตามด้วยคลิกRun

use tinnakorn;
select * from test_datetime;

setting_tz-21

เลื่อนลงมาด้านล่างที่หัวข้อ Result จะเห็นว่าข้อมูล Timezone เป็น+07หรือเขตเวลาปัจจุบันของประเทศไทยเรียบร้อยแล้ว
setting_tz-22

สรุป

การตั้งค่า Aurora Serverless Timezone จะช่วยให้เราใช้งาน Aurora Serverless ได้อย่างมีประสิทธิภาพและสะดวกในเรื่องของเขตเวลามากยิ่งขึ้น ซึ่งจะส่งผลให้เราตั้งค่าฟังก์ชันต่างๆ ที่เกี่ยวกับเวลาได้ง่ายขึ้นโดยไม่ต้องมาเสียเวลาในการคำนวณ Timezone ให้ยุ่งยากนั่นเอง

บทความที่เกี่ยวข้อง