วิธีติดตั้ง Oracle Database บน Docker แบบรวดเร็วและพร้อมใช้งาน

🐳 วิธีติดตั้ง Oracle Database บน Docker แบบรวดเร็วและพร้อมใช้งาน

การติดตั้ง Oracle Database บนเครื่องส่วนตัว (Local Machine) สำหรับนักพัฒนามักขึ้นชื่อเรื่องความยุ่งยากและการกินทรัพยากรเครื่องมหาศาล แต่ปัญหาเหล่านั้นจะหมดไปด้วยการรันบน Docker Container ซึ่งเป็นวิธีการที่นักพัฒนายุคใหม่เลือกใช้เนื่องจากทั้งรวดเร็ว สะอาด และไม่ทำให้เครื่องจริงช้าลง

คู่มือนี้จะสรุปขั้นตอนการติดตั้งและตั้งค่าระบบตามมาตรฐานอย่างเป็นทางการของ Oracle (ตามแนวทางของ MFEC) เพื่อให้คุณมีฐานข้อมูลใช้งานภายใน 5 นาที!


📋 1. สิ่งที่ต้องเตรียมก่อนเริ่มงาน

ก่อนเริ่มดำเนินการ ให้ตรวจสอบและเตรียมความพร้อมดังนี้:

  1. ติดตั้ง Docker Desktop: ตรวจสอบว่าระบบ Docker ทำงานปกติบนเครื่องคอมพิวเตอร์ของคุณ
  2. ลงทะเบียน Oracle Account: สมัครบัญชีใช้งานที่ Oracle Official Website (ฟรี)
  3. ยอมรับเงื่อนไขการใช้งานของ Oracle Container Registry:
  • เปิดบราวเซอร์ไปที่ Oracle Container Registry
  • ล็อกอินด้วยบัญชี Oracle ของคุณ
  • ไปที่เมนู Database -> เลือกเวอร์ชันฐานข้อมูลที่ต้องการใช้งาน (เช่น Enterprise หรือ Free/Express Edition)
  • ในส่วนของข้อตกลงใบอนุญาต (License Agreement) ให้คลิกปุ่ม Accept เพื่อยอมรับเงื่อนไข
Oracle Container Registry Login
ภาพประกอบ: การลงทะเบียนและล็อกอินเข้าสู่ Oracle Container Registry เพื่อกดปุ่มยอมรับเงื่อนไขสิทธิ์การใช้บริการ

🚀 2. ขั้นตอนการดาวน์โหลดและติดตั้ง Container

หลังจากเตรียมสิทธิ์และบัญชีเรียบร้อยแล้ว ให้เปิด Terminal หรือ Command Prompt ในเครื่องของคุณเพื่อทำตามขั้นตอนดังต่อไปนี้:

ขั้นตอนที่ 1: ล็อกอินเข้าระบบ Docker Registry ของ Oracle

ใช้คำสั่งนี้เพื่อยืนยันตัวตนในการดึงอิมเมจฐานข้อมูล:

docker login container-registry.oracle.com

*ระบบจะขอให้กรอก Username (อีเมลของ Oracle) และ Password ที่สมัครไว้*

ขั้นตอนที่ 2: ทำการ Pull Image จาก Oracle Container Registry

ในบทความนี้เราจะใช้ Oracle Database Enterprise Edition (19.3.0.0) ซึ่งเป็นเวอร์ชันมาตรฐานองค์กรยอดนิยม:

docker pull container-registry.oracle.com/database/enterprise:19.3.0.0

*(กรณีที่ต้องการใช้เวอร์ชัน Free/23ai ให้ระบุตัวดึงเป็น container-registry.oracle.com/database/free:latest)*

ขั้นตอนที่ 3: สั่ง Run Container ฐานข้อมูล

รันคำสั่ง Docker เพื่อเริ่มการสร้างและตั้งค่าอินสแตนซ์ฐานข้อมูลทันที:

docker run --name oracle19c \
  -p 1521:1521 -p 5500:5500 \
  -e ORACLE_PWD=welcome1 \
  -v oracle-volume:/opt/oracle/oradata \
  -d container-registry.oracle.com/database/enterprise:19.3.0.0

#### 💡 อธิบายพารามิเตอร์สำคัญ:

  • --name oracle19c: กำหนดชื่อของ Container นี้เป็น oracle19c
  • -p 1521:1521: พอร์ตหลักสำหรับการเข้าถึง SQL Client
  • -p 5500:5500: พอร์ตสำหรับเชื่อมต่อ Oracle Enterprise Manager (EM) Express
  • -e ORACLE_PWD=welcome1: กำหนดรหัสผ่านเริ่มต้นสำหรับบัญชี SYS และ SYSTEM (ในตัวอย่างตั้งค่าเป็น welcome1)
  • -v oracle-volume:/opt/oracle/oradata: ตั้งค่า Volume Mapping เพื่อเก็บไฟล์ฐานข้อมูลไว้บนโฮสต์คอมพิวเตอร์ ช่วยให้ข้อมูลไม่หายแม้จะลบ Container ทิ้ง

🛠️ 3. การตรวจสอบความพร้อมและการเชื่อมต่อใช้งาน

หลังจากสั่งรัน Container แล้ว ตัว Oracle Database จะทำการสร้างโครงสร้างข้อมูลเบื้องต้น ซึ่งอาจใช้เวลาประมาณ 2-5 นาทีในการเริ่มระบบครั้งแรก

ตรวจสอบสถานะการเริ่มระบบ (Logs)

คุณสามารถดูความคืบหน้าของการสร้างฐานข้อมูลผ่าน logs ได้โดยการรันคำสั่ง:

docker logs -f oracle19c

*เมื่อมีข้อความแจ้งเตือนสรุปว่า DATABASE IS READY TO USE! และแสดงสถานะเป็น (healthy) แสดงว่าระบบพร้อมทำงานเต็มรูปแบบแล้ว*

Docker Desktop GUI
ภาพประกอบ: หน้าแสดงสถานะของคอนเทนเนอร์ Oracle Database บนโปรแกรม Docker Desktop ที่พร้อมทำงานสมบูรณ์แบบ

🔌 4. วิธีการเชื่อมต่อฐานข้อมูลจากเครื่องของคุณ

เมื่อระบบฐานข้อมูลพร้อมใช้งาน คุณสามารถติดตั้งโปรแกรมเชื่อมต่อ เช่น DBeaver หรือ SQL Developer เพื่อเข้าถึงข้อมูลดังนี้:

  • Connection Type / Driver: Oracle
  • Host: localhost (หรือ IP ของเครื่องเซิร์ฟเวอร์ที่รัน Docker)
  • Port: 1521
  • Database Type: เลือกเชื่อมต่อแบบ SID หรือ Service Name
  • Database SID: ORCLCDB (ฐานข้อมูลหลัก – Container Database)
  • Service Name: ORCLPDB1 (ฐานข้อมูลย่อยที่พร้อมใช้งาน – Pluggable Database)
  • Username: sys (ต้องเลือกบทบาทเป็น SYSDBA ในการเข้าสู่ระบบครั้งแรก) หรือ system
  • Password: welcome1 (รหัสผ่านที่ตั้งไว้ในตัวแปร ORACLE_PWD)
DBeaver Connection success
ภาพประกอบ: การยืนยันเชื่อมต่อสำเร็จจากโปรแกรม DBeaver ไปยังฐานข้อมูล Oracle ที่รันอยู่บน Docker Container

docker start oracle19c
docker stop oracle19c
💡 คำแนะนำเพิ่มเติมสำหรับการรันซ้ำ:

ในครั้งถัดไปที่คุณต้องการเปิดใช้งานฐานข้อมูล คุณไม่จำเป็นต้องพิมพ์คำสั่ง docker run ใหม่ทั้งหมด เพียงสั่งสตาร์ทคอนเทนเนอร์ตัวเดิมด้วยคำสั่ง:
และสั่งหยุดทำงานชั่วคราวเมื่อเสร็จงานด้วยคำสั่ง:

Leave a Comment