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
ผลลัพธ์:

- PostgreSQL Instance ใหม่พร้อมใช้งาน.png (20.98 KiB) Viewed 2102 times
คำอธิบาย:
- `-D` ระบุที่อยู่ของ Data Directory สำหรับ Instance นี้
- คำสั่งนี้จะสร้างไฟล์ระบบฐานข้อมูลในโฟลเดอร์ที่กำหนด
หลังจากรันคำสั่งเสร็จแล้ว คุณจะมี
Data Directory ใหม่ที่พร้อมใช้งาน

- แก้ไข port ใน postgresql.conf.png (46.37 KiB) Viewed 2102 times
ขั้นตอนที่ 2: ตั้งค่าพอร์ตในไฟล์
postgresql.conf
PostgreSQL แต่ละ
Instance ต้องใช้พอร์ตที่ไม่ซ้ำกัน โดยเริ่มต้น
PostgreSQL ใช้พอร์ต
5432 เราสามารถเปลี่ยนพอร์ตของ
Instance ใหม่ได้โดยแก้ไขไฟล์
`postgresql.conf` ใน
Data Directory ที่สร้างขึ้น
เปิดไฟล์
`C:\PostgreSQL\data_instance_2\postgresql.conf` และแก้ไขบรรทัด:

- Data Directory.png (21.11 KiB) Viewed 2102 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 (11.7 KiB) Viewed 2102 times
คำอธิบาย:
- `-D` ระบุที่อยู่ของ Data Directory
- `-l` ระบุที่อยู่ของไฟล์ log ที่จะบันทึกการทำงานของ PostgreSQL
หลังจากรันคำสั่ง คุณจะมี
PostgreSQL Instance ใหม่พร้อมใช้งาน

- ผลลัพธ์หลังรัน initdb.png (64.06 KiB) Viewed 2102 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
[url=https://www.mindphp.com/%E0%B8%84%E0%B8%B9%E0%B9%88%E0%B8%A1%E0%B8%B7%E0%B8%AD/73-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3/3418-postgresql.html]PostgreSQL[/url] ได้รับความนิยมจากนักพัฒนาและผู้ดูแล[url=https://www.mindphp.com/%E0%B8%84%E0%B8%B9%E0%B9%88%E0%B8%A1%E0%B8%B7%E0%B8%AD/73-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3/2055-database-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A323.html]ระบบฐานข้อมูล[/url]ทั่วโลก ด้วยความสามารถในการรองรับการทำงานที่ซับซ้อนและการปรับแต่งที่ยืดหยุ่น หนึ่งในคุณสมบัติที่น่าสนใจคือการ สร้างหลาย [b]Instance[/b] ในเครื่องเดียว ซึ่งเหมาะสำหรับการพัฒนา [url=https://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1/31-%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1%E0%B8%A3%E0%B8%B9%E0%B9%89%E0%B8%97%E0%B8%B1%E0%B9%88%E0%B8%A7%E0%B9%84%E0%B8%9B/6825-software-testing.html]การทดสอบ[/url] หรือการจัดการแอปพลิเคชันหลายตัวในสภาพแวดล้อมเดียวกันในบทความนี้ คุณจะได้เรียนรู้ วิธีตั้งค่า [b]PostgreSQL[/b] หลาย [b]Instance[/b] บนเครื่องเดียว พร้อมใช้งานหลายพอร์ต โดยจะครอบคลุมขั้นตอนที่ง่ายต่อการทำตามและสามารถนำไปปรับใช้ได้ทันที!
[b]ขั้นตอนที่ 1:[/b] สร้าง [b]Data Directory[/b] สำหรับ [b]Instance[/b] ใหม่
ก่อนเริ่มต้น เราจำเป็นต้องสร้าง [b]Data Directory[/b] สำหรับเก็บข้อมูลของ Instance ใหม่ ซึ่งสามารถทำได้โดยใช้คำสั่ง [b]`pg_ctl`[/b] พร้อมคำสั่ง [b]`initdb`[/b]
[code]& "C:\Program Files\PostgreSQL\13\bin\pg_ctl" -D "C:\PostgreSQL\data_instance_2" initdb[/code]
[b]ผลลัพธ์:[/b]
[attachment=0]ผลลัพธ์หลังรัน initdb.png[/attachment]
[b]คำอธิบาย:[/b]
[list]
[*][b]`-D`[/b] ระบุที่อยู่ของ [b]Data Directory[/b] สำหรับ [b]Instance[/b] นี้
[*]คำสั่งนี้จะสร้างไฟล์ระบบฐานข้อมูลในโฟลเดอร์ที่กำหนด
[/list]
หลังจากรันคำสั่งเสร็จแล้ว คุณจะมี [b]Data Directory[/b] ใหม่ที่พร้อมใช้งาน
[attachment=1]Data Directory.png[/attachment]
[b]ขั้นตอนที่ 2:[/b] ตั้งค่าพอร์ตในไฟล์ [b]postgresql.conf[/b]
[b]PostgreSQL[/b] แต่ละ [b]Instance[/b] ต้องใช้พอร์ตที่ไม่ซ้ำกัน โดยเริ่มต้น [b]PostgreSQL[/b] ใช้พอร์ต [b]5432[/b] เราสามารถเปลี่ยนพอร์ตของ [b]Instance[/b] ใหม่ได้โดยแก้ไขไฟล์ [b]`postgresql.conf`[/b] ใน [b]Data Directory[/b] ที่สร้างขึ้น
เปิดไฟล์ [b]`C:\PostgreSQL\data_instance_2\postgresql.conf`[/b] และแก้ไขบรรทัด:
[attachment=2]แก้ไข port ใน postgresql.conf.png[/attachment]
ให้แน่ใจว่าพอร์ตที่เลือกไม่มีโปรแกรมอื่นใช้งานอยู่
[b]ขั้นตอนที่ 3:[/b] รัน [b]Instance[/b] ใหม่
เมื่อกำหนดพอร์ตเสร็จแล้ว เราสามารถเริ่มต้น Instance ใหม่ได้ด้วยคำสั่งต่อไปนี้:
[code]& "C:\Program Files\PostgreSQL\13\bin\pg_ctl" -D "C:\PostgreSQL\data_instance_2" -l "C:\PostgreSQL\postgresql.log" start[/code]
[b]ผลลัพธ์:[/b]
[attachment=4]ผลลัพธ์หลัง start instance ใหม่.png[/attachment]
[b]คำอธิบาย:[/b]
[list]
[*][b]`-D`[/b] ระบุที่อยู่ของ Data Directory
[*][b]`-l`[/b] ระบุที่อยู่ของไฟล์ log ที่จะบันทึกการทำงานของ PostgreSQL
[/list]
หลังจากรันคำสั่ง คุณจะมี [b]PostgreSQL Instance[/b] ใหม่พร้อมใช้งาน
[attachment=3]PostgreSQL Instance ใหม่พร้อมใช้งาน.png[/attachment]
[b]ข้อแนะนำเพิ่มเติม:[/b]
[list]
[*]ตรวจสอบสถานะของ [b]Instance[/b] ด้วยคำสั่ง [b]`pg_ctl status`[/b]
[*]หมั่นตรวจสอบไฟล์ [b]log[/b] หากเกิดปัญหา
[/list]
ด้วย 3 ขั้นตอนนี้ คุณสามารถตั้งค่า [b]PostgreSQL[/b] หลาย [b]Instance[/b] ในเครื่องเดียวได้อย่างง่ายดาย โดยกำหนดพอร์ตแยกกันสำหรับแต่ละ [b]Instance[/b] เพื่อรองรับการพัฒนาและทดสอบในสภาพแวดล้อมที่หลากหลาย หากเพื่อน ๆ สนใจอยากอ่านเพิ่มเติมสามารถอ่านได้ที่[url=https://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B9%80%E0%B8%A3%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B8%AD%E0%B8%AD%E0%B8%99%E0%B9%84%E0%B8%A5%E0%B8%99%E0%B9%8C/%E0%B8%AA%E0%B8%AD%E0%B8%99-pgadmin.html]บทเรียน PgAdmin[/url] หรือ[url=https://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B9%80%E0%B8%A3%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B8%AD%E0%B8%AD%E0%B8%99%E0%B9%84%E0%B8%A5%E0%B8%99%E0%B9%8C/%E0%B8%AA%E0%B8%AD%E0%B8%99-pgadmin/2550-%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%A3%E0%B8%B1%E0%B8%99%E0%B8%84%E0%B8%B3%E0%B8%AA%E0%B8%B1%E0%B9%88%E0%B8%87-sql-%E0%B8%9A%E0%B8%99%E0%B8%90%E0%B8%B2%E0%B8%99%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5-postgresql.html]ขั้นตอน วิธีการรันคำสั่ง SQL บนฐานข้อมูล PostgreSQL[/url] หวังว่าบทความนี้จะช่วยให้คุณจัดการ [b]PostgreSQL[/b] ได้อย่างยืดหยุ่นและมีประสิทธิภาพ!
[b]อ้างอิง[/b]
[url=https://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B9%80%E0%B8%A3%E0%B8%B5%E0%B8%A2%E0%B8%99%E0%B8%AD%E0%B8%AD%E0%B8%99%E0%B9%84%E0%B8%A5%E0%B8%99%E0%B9%8C/%E0%B8%AA%E0%B8%AD%E0%B8%99-pgadmin/2533-%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%80%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%A1%E0%B8%95%E0%B9%88%E0%B8%AD%E0%B8%90%E0%B8%B2%E0%B8%99%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5-connect-to-database.html]https://www.mindphp.com/บทเรียนออนไลน์/สอน-pgadmin/2533-การเชื่อมต่อฐานข้อมูล-connect-to-database.html[/url]
https://www.postgresql.org/docs/current/managing-databases.html
https://documentation.commvault.com/2024/essential/adding_postgresql_instance.html