การหยุดอินสแตนซ์ postgresql


30

เพื่อจุดประสงค์ด้านการศึกษาฉันมี postgresql สองชุดที่เหมือนกันซึ่งทำงานบนเครื่องของฉัน

ฉันสามารถหยุดบริการอินสแตนซ์ที่ทำงานบนพอร์ต 5432 ได้อย่างง่ายดายเช่นนี้:

sudo service postgresql stop

สิ่งที่ฉันอยากรู้คือวิธีที่ฉันสามารถหยุดอินสแตนซ์อื่น (มันทำงานบนพอร์ต 5433)


stackoverflow.com/questions/20642892/postgresql-starting-failed ตรวจสอบว่ามันมีประโยชน์ ...
psyCHOder

คำตอบ:


13

pg_ctlเป็นวิธี postreSQL เพื่อหยุด postgreSQL (ใน Ubuntu และ Debian เราควรใช้pg_ctlclusterซึ่งเป็น wrapper สำหรับpg_ctl) ตัวอย่างในลิงค์นั้นใช้ตัวเลือก `-p 5433"

ตามที่แนะนำโดยนาโอโกะในความคิดเห็นด้านล่างใช้pg_lsclustersเพื่อแสดงรายการกลุ่ม

อีกวิธีคือให้killสัญญาณกับกระบวนการที่เรียกใช้ postgresqld หากต้องการหยุดทั้งสองอย่างทันทีkillall postgresqldอาจทำงานได้

ในที่สุดตามที่แนะนำในความคิดเห็นโดย psyCHOder, pgAdmin ยังสามารถหยุดเซิร์ฟเวอร์ได้ แต่แน่นอนว่าหมายถึงการติดตั้งแพคเกจนั้น


ฉันลองใช้pg_ctlมันบอกว่าคุณต้องติดตั้งpostgres-xcแพ็คเกจ
Beatles1692

และปัญหาในการติดตั้ง postgres-xc คืออะไร? อินสแตนซ์ที่สองนี้ถูกระบุไว้อย่างไร
ร็อคกี้

ฉันได้เริ่มต้นด้วยการวิ่ง/usr/lib/postgresql/9.4/bin/postgres -D /path/to/pgdata -c config_file=/path/to/config
Beatles1692

1
pg_lsclustersเพื่อแสดงรายการกลุ่ม
naoko

1
@naoko ขอบคุณ - เลื่อนขั้นหรือเพิ่มเพื่อตอบตอนนี้
หิน
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.