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

PostgreSQL เป็นระบบจัดการฐานข้อมูลเชิงวัตถุแบบโอเพ่นซอร์ส (ORDBMS) ที่พร้อมใช้งานสำหรับแพลตฟอร์มหลักทั้งหมดรวมถึง Linux, UNIX, Windows และ OS X โปรดพูดถึง Postgres รุ่นที่แน่นอนของคุณเมื่อถามคำถาม คำถามเกี่ยวกับการดูแลระบบหรือคุณสมบัติขั้นสูงจะส่งตรงไปที่ dba.stackexchange.com

6
การอัพเดตแถวของตารางใน postgres โดยใช้แบบสอบถามย่อย
ใช้ postgres 8.4 เป้าหมายของฉันคือการปรับปรุงตารางที่มีอยู่: CREATE TABLE public.dummy ( address_id SERIAL, addr1 character(40), addr2 character(40), city character(25), state character(2), zip character(5), customer boolean, supplier boolean, partner boolean ) WITH ( OIDS=FALSE ); เริ่มแรกฉันทดสอบคิวรีของฉันโดยใช้คำสั่งแทรก: insert into address customer,supplier,partner SELECT case when cust.addr1 is not null then TRUE else FALSE end customer, case …

14
จะส่งรหัสผ่านไปยัง pg_dump ได้อย่างไร
ฉันกำลังพยายามสร้าง cronjob เพื่อสำรองฐานข้อมูลของฉันทุกคืนก่อนที่จะเกิดภัยพิบัติขึ้น ดูเหมือนว่าคำสั่งนี้จะตอบสนองความต้องการของฉัน: 0 3 * * * pg_dump dbname | gzip > ~/backup/db/$(date +%Y-%m-%d).psql.gz ยกเว้นหลังจากทำงานนั้นฉันคาดว่าจะพิมพ์รหัสผ่าน ฉันไม่สามารถทำได้ถ้าฉันเรียกใช้จาก cron ฉันจะส่งผ่านโดยอัตโนมัติได้อย่างไร

21
กู้คืนไฟล์สำรองข้อมูล postgres โดยใช้บรรทัดคำสั่งหรือไม่
ฉันใหม่สำหรับ postgresql และในพื้นที่ฉันใช้ pgadmin3 บนเซิร์ฟเวอร์ระยะไกลอย่างไรก็ตามฉันไม่มีความหรูหราเช่นนั้น ฉันได้สร้างการสำรองข้อมูลของฐานข้อมูลและคัดลอกไปแล้ว แต่มีวิธีกู้คืนการสำรองข้อมูลจากบรรทัดคำสั่งหรือไม่ ฉันเห็นสิ่งต่าง ๆ ที่เกี่ยวข้องกับ GUI หรือเพื่อ pg_dumps เท่านั้นดังนั้นหากใครบางคนบอกฉันได้ว่าจะทำยังไงดีนั่นยอดเยี่ยมมาก!

18
จะติดตั้ง pg gem ของ PostgreSQL บน Ubuntu ได้อย่างไร
ฉันพยายามติดตั้ง pg gem ของ PostgreSQL สำหรับ Ruby ฉันออกคำสั่งต่อไปนี้: gem install pg ฉันติดตั้ง Ruby 1.9.2 โดยใช้ RVM คำสั่งดังกล่าวแสดงให้ฉันเห็นข้อผิดพลาดดังต่อไปนี้ ข้อผิดพลาดคือ: Building native extensions. This could take a while... ERROR: Error installing pg: ERROR: Failed to build gem native extension. /home/User/.rvm/rubies/ruby-1.9.2-preview3/bin/ruby extconf.rb checking for pg_config... yes checking for libpq-fe.h... yes checking for libpq/libpq-fs.h... …
292 ruby  postgresql  pg 

8
แนวทางปฏิบัติที่ดีที่สุดสำหรับความยาวคอลัมน์ SQL varchar [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 เดือนที่ผ่านมา ปรับปรุงคำถามนี้ ทุกครั้งที่มีการตั้งค่าตาราง SQL ใหม่หรือเพิ่มใหม่varcharคอลัมน์ตารางที่มีอยู่ผมสงสัยว่าสิ่งหนึ่งที่: lengthสิ่งที่เป็นค่าที่ดีที่สุดสำหรับ ดังนั้นให้บอกว่าคุณมีคอลัมน์ที่เรียกว่าประเภทname varcharดังนั้นคุณต้องเลือกความยาว ฉันไม่สามารถนึกชื่อได้> 20 ตัวอักษร แต่คุณจะไม่มีทางรู้ แต่แทนที่จะใช้ 20 ฉันจะปัดเศษขึ้นเป็นเลข 2 ^ n ถัดไปเสมอ ในกรณีนี้ฉันจะเลือก 32 เป็นความยาว ฉันทำอย่างนั้นเพราะจากมุมมองของนักวิทยาศาสตร์คอมพิวเตอร์ตัวเลข 2 ^ n ดูเหมือนevenฉันมากกว่าตัวเลขอื่นและฉันแค่สมมติว่าสถาปัตยกรรมด้านล่างสามารถจัดการตัวเลขเหล่านั้นได้ดีกว่าคนอื่นเล็กน้อย ในทางกลับกันเซิร์ฟเวอร์ MSSQL ตัวอย่างเช่นตั้งค่าความยาวเริ่มต้นเป็น 50 เมื่อคุณเลือกที่จะสร้างคอลัมน์ varchar นั่นทำให้ฉันคิดถึงมัน ทำไมต้อง 50 มันเป็นเพียงตัวเลขสุ่มหรือตามความยาวคอลัมน์เฉลี่ยหรืออะไร นอกจากนี้ยังอาจเป็น - หรืออาจเป็น - ที่การใช้งานเซิร์ฟเวอร์ SQL ที่แตกต่างกัน …

10
psql - บันทึกผลลัพธ์ของคำสั่งลงในไฟล์
ฉันใช้ของ psql \dtเพื่อแสดงรายการตารางทั้งหมดในฐานข้อมูลและฉันต้องการบันทึกผลลัพธ์ ไวยากรณ์ในการส่งออกผลลัพธ์ของคำสั่ง psql ไปยังไฟล์คืออะไร
283 postgresql  psql 


24
ฉันจะวางฐานข้อมูลภายใต้ git (การควบคุมเวอร์ชัน) ได้อย่างไร?
ฉันกำลังทำเว็บแอปและฉันต้องการสร้างสาขาสำหรับการเปลี่ยนแปลงที่สำคัญบางอย่างสิ่งนี้คือการเปลี่ยนแปลงเหล่านี้ต้องการการเปลี่ยนแปลงสกีมาฐานข้อมูลดังนั้นฉันจึงต้องการให้ฐานข้อมูลทั้งหมดอยู่ภายใต้ระบบคอมไพล์เช่นกัน ฉันจะทำอย่างไร มีโฟลเดอร์เฉพาะที่ฉันสามารถเก็บภายใต้พื้นที่เก็บข้อมูล git หรือไม่ ฉันจะรู้ได้อย่างไรว่าอันไหน ฉันจะแน่ใจได้อย่างไรว่าฉันวางโฟลเดอร์ที่ถูกต้อง? ฉันต้องแน่ใจเพราะการเปลี่ยนแปลงเหล่านี้ไม่สามารถใช้งานร่วมกับระบบย้อนหลังได้ ฉันไม่สามารถจะพลาด ฐานข้อมูลในกรณีของฉันคือ PostgreSQL แก้ไข: มีคนแนะนำให้ทำการสำรองข้อมูลและวางไฟล์สำรองข้อมูลไว้ภายใต้การควบคุมเวอร์ชันแทนฐานข้อมูล พูดตามตรงฉันพบว่ากลืนยากจริงๆ จะต้องมีวิธีที่ดีกว่า ปรับปรุง: ตกลงดังนั้นจึงไม่มีวิธีที่ดีกว่านี้ แต่ฉันก็ยังไม่ค่อยมั่นใจดังนั้นฉันจะเปลี่ยนคำถามเล็กน้อย: ฉันต้องการวางฐานข้อมูลทั้งหมดภายใต้การควบคุมเวอร์ชันฉันสามารถใช้เอ็นจินฐานข้อมูลใดได้บ้างเพื่อให้ฉันสามารถวางฐานข้อมูลจริงภายใต้การควบคุมเวอร์ชันแทนการดัมพ์ sqlite จะเป็น git-friendly หรือไม่? เนื่องจากนี่เป็นเพียงสภาพแวดล้อมการพัฒนาฉันสามารถเลือกฐานข้อมูลใดก็ได้ที่ฉันต้องการ Edit2: สิ่งที่ฉันต้องการจริงๆไม่ใช่เพื่อติดตามประวัติการพัฒนาของฉัน แต่เพื่อให้สามารถเปลี่ยนจาก "การเปลี่ยนแปลงที่รุนแรงใหม่" ของฉันเป็น "สาขาที่มีความเสถียรในปัจจุบัน" และสามารถอินสแตนซ์เพื่อแก้ไขข้อบกพร่อง / ปัญหาอื่น ๆ ด้วยปัจจุบัน สาขาที่มั่นคง เช่นเมื่อฉันเปลี่ยนสาขาฐานข้อมูลอัตโนมัติอย่างน่าอัศจรรย์จะเข้ากันได้กับสาขาที่ฉันกำลังใช้อยู่ ฉันไม่ค่อยสนใจข้อมูลจริงมากนัก

15
Postgresql: การดำเนินการสคริปต์ psql ด้วยรหัสผ่าน
ฉันจะเรียกpsqlเพื่อที่จะไม่ให้ใส่รหัสผ่านได้อย่างไร นี่คือสิ่งที่ฉันมี: psql -Umyuser < myscript.sql อย่างไรก็ตามฉันไม่สามารถหาข้อโต้แย้งที่ส่งผ่านรหัสผ่านได้ดังนั้น psql จะแจ้งให้เสมอ
274 postgresql  psql 


6
วิธี UPSERT (รวมแทรก ... ในการอัปเดตซ้ำซ้อน) ใน PostgreSQL
คำถามที่ถามบ่อยมากที่นี่คือวิธีการเพิ่มความโกรธซึ่งเป็นสิ่งที่ MySQL เรียกINSERT ... ON DUPLICATE UPDATEและมาตรฐานรองรับเป็นส่วนหนึ่งของการMERGEดำเนินการ เนื่องจาก PostgreSQL ไม่สนับสนุนโดยตรง (ก่อนหน้า 9.5) คุณจะทำอย่างไร พิจารณาสิ่งต่อไปนี้: CREATE TABLE testtable ( id integer PRIMARY KEY, somedata text NOT NULL ); INSERT INTO testtable (id, somedata) VALUES (1, 'fred'), (2, 'bob'); ตอนนี้คิดว่าคุณต้องการที่จะ "upsert" tuples (2, 'Joe'), (3, 'Alan')ดังนั้นเนื้อหาตารางใหม่จะเป็น: (1, 'fred'), (2, 'Joe'), -- Changed …

7
วิธีการตั้งค่าคีย์หลักที่เพิ่มขึ้นอัตโนมัติใน PostgreSQL
ฉันมีตารางใน PostgreSQL ที่มี 22 คอลัมน์และฉันต้องการเพิ่มคีย์หลักที่เพิ่มขึ้นอัตโนมัติ ฉันพยายามสร้างคอลัมน์ชื่อidประเภท BIGSERIAL แต่ pgadmin ตอบกลับด้วยข้อผิดพลาด: ERROR: sequence must have same owner as table it is linked to. ไม่มีใครรู้วิธีแก้ไขปัญหานี้หรือไม่ ฉันจะเพิ่มการสร้างคีย์หลักที่เพิ่มขึ้นอัตโนมัติใน PostgreSQL โดยไม่ต้องสร้างตารางอีกครั้งได้อย่างไร
259 sql  postgresql 

4
วิธีรับค่า 10 อันดับแรกใน postgresql
ฉันมีคำถามง่าย ๆ : ฉันมีpostgresqlฐานข้อมูล: Scores(score integer). ฉันจะได้คะแนนสูงสุด 10 คะแนนเร็วที่สุดได้อย่างไร UPDATE: ฉันจะทำแบบสอบถามนี้หลายครั้งและฉันกำลังมองหาวิธีที่เร็วที่สุด


13
วิธีการตรวจสอบว่ามีบริการเฉพาะทำงานบน Ubuntu หรือไม่
ฉันไม่ทราบชื่อบริการ แต่ต้องการหยุดบริการโดยตรวจสอบสถานะ ตัวอย่างเช่นหากฉันต้องการตรวจสอบว่าบริการPostgreSQLทำงานอยู่หรือไม่ แต่ฉันไม่รู้ชื่อของบริการฉันจะตรวจสอบสถานะได้อย่างไร ฉันรู้ว่าคำสั่งเพื่อตรวจสอบสถานะหากทราบชื่อบริการ

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