การตั้งค่า PostgreSQL หลาย Instance ในเครื่องเดียว พร้อมใช้งานหลายพอร์ต

PostgreSQL แชร์ความรู้เกี่ยวกับ PostgreSQL การใช้งาน ฟังก์ชั่นต่างๆ การเขียน SQL แบบ PGSQL

Moderator: mindphp, ผู้ดูแลกระดาน

guitar66
PHP VIP Members
PHP VIP Members
โพสต์: 1543
ลงทะเบียนเมื่อ: 24/06/2024 10:14 am

การตั้งค่า PostgreSQL หลาย Instance ในเครื่องเดียว พร้อมใช้งานหลายพอร์ต

โพสต์ที่ยังไม่ได้อ่าน โดย guitar66 »

PostgreSQL ได้รับความนิยมจากนักพัฒนาและผู้ดูแลระบบฐานข้อมูลทั่วโลก ด้วยความสามารถในการรองรับการทำงานที่ซับซ้อนและการปรับแต่งที่ยืดหยุ่น หนึ่งในคุณสมบัติที่น่าสนใจคือการ สร้างหลาย Instance ในเครื่องเดียว ซึ่งเหมาะสำหรับการพัฒนา การทดสอบ หรือการจัดการแอปพลิเคชันหลายตัวในสภาพแวดล้อมเดียวกันในบทความนี้ คุณจะได้เรียนรู้ วิธีตั้งค่า PostgreSQL หลาย Instance บนเครื่องเดียว พร้อมใช้งานหลายพอร์ต โดยจะครอบคลุมขั้นตอนที่ง่ายต่อการทำตามและสามารถนำไปปรับใช้ได้ทันที!

ขั้นตอนที่ 1: สร้าง Data Directory สำหรับ Instance ใหม่
ก่อนเริ่มต้น เราจำเป็นต้องสร้าง Data Directory สำหรับเก็บข้อมูลของ Instance ใหม่ ซึ่งสามารถทำได้โดยใช้คำสั่ง `pg_ctl` พร้อมคำสั่ง `initdb`

โค้ด: เลือกทั้งหมด

& "C:\Program Files\PostgreSQL\13\bin\pg_ctl" -D "C:\PostgreSQL\data_instance_2" initdb
ผลลัพธ์:
ผลลัพธ์หลังรัน initdb.png
ผลลัพธ์หลังรัน initdb.png (64.06 KiB) Viewed 175 times
คำอธิบาย:
  • `-D` ระบุที่อยู่ของ Data Directory สำหรับ Instance นี้
  • คำสั่งนี้จะสร้างไฟล์ระบบฐานข้อมูลในโฟลเดอร์ที่กำหนด
หลังจากรันคำสั่งเสร็จแล้ว คุณจะมี Data Directory ใหม่ที่พร้อมใช้งาน
Data Directory.png
Data Directory.png (21.11 KiB) Viewed 175 times

ขั้นตอนที่ 2: ตั้งค่าพอร์ตในไฟล์ postgresql.conf
PostgreSQL แต่ละ Instance ต้องใช้พอร์ตที่ไม่ซ้ำกัน โดยเริ่มต้น PostgreSQL ใช้พอร์ต 5432 เราสามารถเปลี่ยนพอร์ตของ Instance ใหม่ได้โดยแก้ไขไฟล์ `postgresql.conf` ใน Data Directory ที่สร้างขึ้น

เปิดไฟล์ `C:\PostgreSQL\data_instance_2\postgresql.conf` และแก้ไขบรรทัด:
แก้ไข port ใน postgresql.conf.png
แก้ไข port ใน postgresql.conf.png (46.37 KiB) Viewed 175 times
ให้แน่ใจว่าพอร์ตที่เลือกไม่มีโปรแกรมอื่นใช้งานอยู่

ขั้นตอนที่ 3: รัน Instance ใหม่
เมื่อกำหนดพอร์ตเสร็จแล้ว เราสามารถเริ่มต้น Instance ใหม่ได้ด้วยคำสั่งต่อไปนี้:

โค้ด: เลือกทั้งหมด

& "C:\Program Files\PostgreSQL\13\bin\pg_ctl" -D "C:\PostgreSQL\data_instance_2" -l "C:\PostgreSQL\postgresql.log" start
ผลลัพธ์:
ผลลัพธ์หลัง start instance ใหม่.png
ผลลัพธ์หลัง start instance ใหม่.png (11.7 KiB) Viewed 175 times
คำอธิบาย:
  • `-D` ระบุที่อยู่ของ Data Directory
  • `-l` ระบุที่อยู่ของไฟล์ log ที่จะบันทึกการทำงานของ PostgreSQL
หลังจากรันคำสั่ง คุณจะมี PostgreSQL Instance ใหม่พร้อมใช้งาน
PostgreSQL Instance ใหม่พร้อมใช้งาน.png
PostgreSQL Instance ใหม่พร้อมใช้งาน.png (20.98 KiB) Viewed 175 times

ข้อแนะนำเพิ่มเติม:
  • ตรวจสอบสถานะของ Instance ด้วยคำสั่ง `pg_ctl status`
  • หมั่นตรวจสอบไฟล์ log หากเกิดปัญหา

ด้วย 3 ขั้นตอนนี้ คุณสามารถตั้งค่า PostgreSQL หลาย Instance ในเครื่องเดียวได้อย่างง่ายดาย โดยกำหนดพอร์ตแยกกันสำหรับแต่ละ Instance เพื่อรองรับการพัฒนาและทดสอบในสภาพแวดล้อมที่หลากหลาย หากเพื่อน ๆ สนใจอยากอ่านเพิ่มเติมสามารถอ่านได้ที่บทเรียน PgAdmin หรือขั้นตอน วิธีการรันคำสั่ง SQL บนฐานข้อมูล PostgreSQL หวังว่าบทความนี้จะช่วยให้คุณจัดการ PostgreSQL ได้อย่างยืดหยุ่นและมีประสิทธิภาพ!

อ้างอิง
https://www.mindphp.com/บทเรียนออนไลน์/สอน-pgadmin/2533-การเชื่อมต่อฐานข้อมูล-connect-to-database.html
https://www.postgresql.org/docs/current/managing-databases.html
https://documentation.commvault.com/2024/essential/adding_postgresql_instance.html
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 1