คำถามติดแท็ก postgresql

PostgreSQL เป็นระบบฐานข้อมูลเชิงสัมพันธ์เชิงวัตถุแบบโอเพนซอร์สที่ทรงพลัง มีการพัฒนาอย่างต่อเนื่องมากกว่า 15 ปีและสถาปัตยกรรมที่ได้รับการพิสูจน์แล้วซึ่งได้รับชื่อเสียงในด้านความน่าเชื่อถือความสมบูรณ์ของข้อมูลและความถูกต้อง มันทำงานบนระบบปฏิบัติการหลักทั้งหมดรวมถึง Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) และ Windows


7
ระบบไฟล์ที่ดีที่สุดสำหรับการแทรกประสิทธิภาพบน PostgreSQL คืออะไร?
ฉันอยากรู้ว่ามีใครทำการทดลองหรือเปรียบเทียบระหว่างระบบไฟล์กับประสิทธิภาพของฐานข้อมูลหรือไม่ บน Linux ฉันสงสัยว่าระบบไฟล์ที่ดีที่สุดสำหรับฐานข้อมูล postgres คืออะไร นอกจากนี้การตั้งค่าใด (inode และอื่น ๆ ) เหมาะสำหรับมัน? นี่เป็นสิ่งที่อาจแตกต่างกันอย่างมากตามข้อมูลในฐานข้อมูลหรือไม่ หากคุณกำลังมองหาคำถามเกี่ยวกับประสิทธิภาพของระบบไฟล์ / ฐานข้อมูลโพสต์นี้มีข้อมูลที่ดี อย่างไรก็ตามฉันต้องการรับคำแนะนำเกี่ยวกับประสิทธิภาพการแทรกที่ต่างจากการอ่านมากที่สุด ขอบคุณสำหรับคำตอบที่ยอดเยี่ยม!

4
เซิร์ฟเวอร์ฐานข้อมูลใดที่ปรับขนาดได้ดีกว่า: PostgreSQL หรือ MySQL
ฉันทำงานบนเว็บไซต์ที่ในที่สุดอาจมีฐานข้อมูลขนาดใหญ่มาก เว็บไซต์จะเป็นชุมชนศิลปะไม่ได้จนกว่า deviantART ฉันจะเรียกใช้แบบสอบถามจำนวนมากเพื่อวิเคราะห์วิธีการใช้เว็บไซต์ ฉันคาดว่าบางคำสั่งจะฆ่าฐานข้อมูลเพราะฉันไม่รู้วิธีเพิ่มประสิทธิภาพการสืบค้น SQL (ยัง) ฉันเริ่มด้วย VPS ลินุกซ์ขนาดเล็กและจะย้ายไปยังเซิร์ฟเวอร์จริงในอนาคต ฐานข้อมูลใดที่จะปรับให้ดีที่สุดในสถานการณ์นี้

1
psql: fe_sendauth: ไม่ได้ระบุรหัสผ่าน
ฉันมีฐานข้อมูล PostgreSQL ขึ้นและทำงาน ตอนนี้ฉันต้องการดำเนินการบางอย่างในฐานข้อมูลของฉันโดยอัตโนมัติ แต่ฉันมีปัญหากับรหัสผ่าน ฉันใช้สคริปต์ทุบตีต่อไปนี้: #!/bin/bash export PGPASSWORD="postgres" sudo -u postgres psql -d pg_ldap -w --no-password -h localhost -p 5432 -t -c "SELECT id FROM radusers WHERE id=1" เมื่อฉันเรียกใช้สคริปต์ทุบตีฉันได้รับข้อผิดพลาดต่อไปนี้: psql: fe_sendauth: no password supplied ฉันได้ลองกำหนดค่าไฟล์ .pgpass ในโฮมไดเร็กตอรี่ของฉันแล้ว แต่ไม่มีประโยชน์: *:*:*:postgres:postgres ฉันได้รันคำสั่งต่อไปนี้: sudo chmod 0600 .pgpass อย่างไรก็ตามดูเหมือนว่าจะไม่มีวิธีการใดที่ใช้งานได้ ไม่มีใครมีความคิดใด ๆ ฉันลืมที่จะทำอะไรบางอย่าง?

3
PostgreSQL ข้อผิดพลาด: ไม่อนุญาตการเชื่อมต่ออีกต่อไป
คุณจะเพิ่มการเชื่อมต่อ PostgreSQL ที่แอปพลิเคชันไคลเอนต์ปิดอย่างไม่ถูกต้องได้อย่างไร ฉันมีแอพ data mining ที่หมุนกระบวนการหลายกระบวนการเชื่อมต่อกับฐานข้อมูลท้องถิ่น PostgreSQL 9.1 ทั้งหมดเพื่อดึงข้อมูล มันทำงานได้ดีสำหรับสองสามชั่วโมง แต่แล้วตายด้วยข้อผิดพลาด: FATAL: remaining connection slots are reserved for non-replication superuser connections จากการวิจัยพบว่าสิ่งนี้น่าจะเกิดจากแอปไม่ได้ปิดการเชื่อมต่ออย่างถูกต้อง อย่างไรก็ตามแม้จะมีแอพที่ถูกฆ่า แต่การเชื่อมต่อเหล่านี้ก็ยังไม่เป็นอิสระ ไม่มีการหมดเวลาบางประเภทที่ PostgreSQL จะปิดการเชื่อมต่อโดยอัตโนมัติหรือไม่ ฉันยังพยายามเพิ่ม max_connections ของ Postgres จาก 100 เป็น 200 แต่การรีสตาร์ททำให้ฉันมีข้อผิดพลาด: 2014-02-23 10:51:15 EST FATAL: could not create shared memory segment: Invalid argument 2014-02-23 …
19 postgresql 

1
PostgreSQL 9: การดูดตารางบนการจำลองแบบหลักบนมิเรอร์หรือไม่
เรียกใช้ PostgreSQL 9.0.1 พร้อมการจำลองแบบการสตรีมที่ทำให้อินสแตนซ์มิเรอร์อ่านอย่างเดียวหนึ่งตัวเป็นปัจจุบัน การฉีดวัคซีนอัตโนมัติเปิดอยู่บนอุปกรณ์หลักยกเว้นบางตารางที่ไม่ได้ถูกดูดโดย daemon สูญญากาศอัตโนมัติเพื่อพยายามลด IO ชั่วโมงธุรกิจ ตารางเหล่านี้คือ "มุมมองที่ปรากฏขึ้น" ทุกคืนเวลาเที่ยงคืนเราเรียกใช้สุญญากาศทั่วฐานข้อมูลเพื่อล้างตารางเหล่านั้นที่ไม่รวมอยู่ในการปรับระดับอัตโนมัติ ฉันสงสัยว่ากระบวนการนั้นทำซ้ำไปที่กระจกหรือไม่หรือถ้าฉันต้องติดตั้งเครื่องดูดฝุ่นบนกระจกด้วย?

2
เขตเวลา PostgreSQL ไม่ตรงกับเขตเวลาของระบบ
ฉันมีการติดตั้ง PostgreSQL 9.2 หลายตัวซึ่งเขตเวลาที่ใช้โดย PostgreSQL คือ GMT แม้ว่าระบบทั้งหมดจะเป็น "ยุโรป / เวียนนา" ก็ตาม ผมสองตรวจสอบว่าpostgresql.confไม่ได้มีtimezoneการตั้งค่าเพื่อให้เป็นไปตามเอกสารที่มันควร fallback เขตเวลาของระบบ อย่างไรก็ตาม # su -s /bin/bash postgres -c "psql mydb" mydb=# show timezone; TimeZone ---------- GMT (1 row) mydb=# select now(); now ------------------------------- 2013-11-12 08:14:21.697622+00 (1 row) มีคำใบ้ใดบ้างที่เขตเวลา GMT มาจากไหน ผู้ใช้ระบบไม่ได้TZตั้งค่าและ/etc/timezoneและ/etc/timeinfoดูเหมือนว่าจะกำหนดค่าอย่างถูกต้อง # cat /etc/timezone Europe/Vienna # …

2
วิธีคำนวณ max_connections สำหรับ PostgreSQL และ default_pool_size สำหรับ pgbouncer
มีกฎหรือสิ่งที่ฉันสามารถใช้ในการคำนวณตัวเลขที่ดีสำหรับmax_connections, default_pool_sizeและmax_client_conn? ค่าเริ่มต้นเป็นเลขคี่ PostgreSQL มีค่าเริ่มต้นเป็น max_connections = 100 ในขณะที่ pgbouncer มีค่าเริ่มต้นเป็น default_pool_size = 20 ไม่ควร default_pool_size สูงกว่า max_connections เสมอหรือ มิฉะนั้นประเด็นคืออะไร? ฉันคิดว่า pgbouncer ตั้งใจให้เราจัดการการเชื่อมต่อได้มากขึ้นโดยลดค่าใช้จ่ายลง (โดยใช้การเชื่อมต่อของ PostgreSQL อีกครั้ง) ฉันสับสน ฉันกำลังมองหาคำแนะนำคล้ายกับที่พบในวิกิของ PostgreSQLเช่น "พารามิเตอร์นี้ควรเป็น ~ 50% ของหน่วยความจำของคุณ" ฉันจำได้ว่ามีสเปรดชีตสำหรับ MySQL ที่จะให้คุณคำนวณพารามิเตอร์ประเภทนี้ มันยอดเยี่ยมมากที่มีบางอย่างเช่น PostgreSQL / pgbouncer


4
การติดตั้ง postgresql: ไดเรกทอรีข้อมูล initdb ไม่ว่างเปล่า?
ฉันพยายามสร้างฐานข้อมูล postgresql เมื่อฉันติดตั้ง PostgreSQL ฉันได้รับคำสั่งนี้: sudo yum install postgresql postgresql-server และต่อมาฉันแก้ไขไฟล์ปรับแต่ง: sudo vim /var/lib/pgsql/data/pg_hba.conf และแก้ไขเป็น local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust host all all 0.0.0.0/0 md5 ขณะที่ฉันพยายามเริ่มบริการ postgresql: sudo service postgresql initdb > Data directory is not empty! [FAILED] sudo chkconfig postgresql …

1
Django: CONN_MAX_AGE ยังคงมีการเชื่อมต่อ แต่จะไม่นำมาใช้ซ้ำกับ PostgreSQL
ฉันได้ติดตั้ง django กำลังใช้ Django 1.6.7 และ Postgres 9.3 บน Ubuntu 14.04 LTS ไซต์จะได้รับการเชื่อมต่อไปยังฐานข้อมูล PostgreSQL พร้อมกันประมาณ ~ 250 ซึ่งเป็น Quad Core Xeon E5-2670 ที่ 2.5GHz และ RAM ขนาด 16GB ค่าเฉลี่ยการโหลดของเครื่องนั้นตลอดทั้งวันอยู่ที่ประมาณ 20 ถึง 30 ในบางครั้งฉันจะได้รับอีเมลเกี่ยวกับการเชื่อมต่อหมดเวลาไปยังฐานข้อมูลและฉันคิดว่าการเปิดใช้งานการรวมการเชื่อมต่อบางประเภทจะช่วยบรรเทาปัญหานี้รวมถึงลดภาระของฐานข้อมูลลงเล็กน้อย เนื่องจากเราใช้ Django 1.6 เราจึงมีการรวมกำไรในตัวสำหรับเรา อย่างไรก็ตามเมื่อฉันตั้งค่า CONN_MAX_AGE เป็น 10 วินาทีหรือ 60 วินาทีเกือบจะทันทีจำนวนการเชื่อมต่อพร้อมกันก็ข้ามไปที่การตั้งค่าสูงสุดที่อนุญาต ดังนั้นจึงปรากฏเหตุผลสำหรับสิ่งที่เคยเชื่อมต่อกำลัง persisting แต่พวกเขาไม่ได้มีการถูกนำมาใช้ใหม่ อะไรคือสาเหตุของสิ่งนี้ PS นอกจากนี้เรายังใช้ …

3
รีเซ็ต PostgreSQL โดยสมบูรณ์เป็นค่าเริ่มต้นหรือไม่
คำถาม มีวิธีการรีเซ็ตการติดตั้ง PostgreSQL บน Linux อย่างสมบูรณ์ดังนั้นจึงอยู่ในสถานะเดียวกับเมื่อฉันติดตั้งหรือไม่ ความคิด ฉันได้พิจารณาแล้ว rm -rf /var/lib/pgsql/* rm -rf /var/lib/pgsql/backups/* rm -rf /var/lib/pgsql/data/* แต่นั่นอาจไม่ใช่วิธีที่แนะนำ วัตถุประสงค์ สิ่งนี้จะเป็นประโยชน์ในการกำจัดส่วนที่เหลือจากโปรแกรมก่อนหน้านี้ที่ใช้งานไป

2
initdb อยู่ที่ไหนใน Ubuntu
ฉันต้องการรีเซ็ตฐานข้อมูล postgresql ของฉันกลับสู่สภาพเริ่มต้นหลังจากติดตั้ง เด่นชัด initdb เป็นวิธีการทำเช่นนี้ แต่ถึงแม้ว่าคำสั่งจะมี man page แต่ดูเหมือนว่ามันจะไม่ปรากฏที่ใดก็ได้ในระบบ Ubuntu 10.10 ของฉัน ไม่มีใครรู้ว่าสิ่งนี้ควรทำบน Ubuntu หรือไม่?

7
การจำลองแบบหลายต้นแบบที่ใช้งานได้สำหรับ Postgres?
ฉันลอง Postgres-XC และยังไม่ได้ใช้ SQL แบบเต็ม (เช่น SERIAL) Postgres-R ดูน่าสนใจ แต่มัน "ไม่พร้อมสำหรับการผลิต" ตามนักพัฒนา ดังนั้นฉันจึงใช้ pgpool-II 3.0.1 ใช่มันใช้งานได้ดี แต่เท่าที่ฉันเห็นมันเป็นเพียง 2 โหน PG มีอะไรที่จริงแล้วพร้อมใช้งานและสามารถทำงานกับหลาย ๆ โหนด PG ได้หรือไม่?


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