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

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

4
มอบสิทธิ์ทั้งหมดให้กับผู้ใช้บนฐานข้อมูล
ฉันต้องการให้สิทธิ์แก่ผู้ใช้ทั้งหมดในฐานข้อมูลโดยไม่ต้องเป็นผู้ดูแลระบบ เหตุผลที่ฉันต้องการทำนั่นคือในขณะนี้ DEV และ PROD เป็นฐานข้อมูลที่แตกต่างกันในคลัสเตอร์เดียวกันดังนั้นฉันไม่ต้องการให้ผู้ใช้สามารถเปลี่ยนวัตถุการผลิต แต่ต้องสามารถเปลี่ยนวัตถุบน DEV ฉันเหนื่อย: grant ALL on database MY_DB to group MY_GROUP; แต่ดูเหมือนจะไม่ได้รับอนุญาตใด ๆ จากนั้นฉันก็ลอง: grant all privileges on schema MY_SCHEMA to group MY_GROUP; และดูเหมือนว่าจะให้สิทธิ์ฉันในการสร้างวัตถุ แต่ไม่ต้องสอบถาม \ ลบวัตถุในสคีมานั้นที่เป็นของผู้ใช้รายอื่น ฉันสามารถดำเนินการต่อโดยให้สิทธิ์การใช้งานกับผู้ใช้บน MY_SCHEMA แต่จากนั้นจะบ่นเกี่ยวกับการไม่มีสิทธิ์บนโต๊ะ ... ดังนั้นฉันเดาคำถามของฉันคือ: มีวิธีง่าย ๆ ให้สิทธิ์ทั้งหมดแก่ผู้ใช้ในฐานข้อมูลหรือไม่ ฉันกำลังทำงานกับ PostgreSQL 8.1.23

13
ฉันลืมรหัสผ่านที่ฉันป้อนระหว่างการติดตั้ง postgres
ฉันลืมหรือพิมพ์ผิด (ระหว่างการติดตั้ง) รหัสผ่านให้กับผู้ใช้เริ่มต้นของ Postgres ฉันดูเหมือนจะไม่สามารถเรียกใช้และฉันได้รับข้อผิดพลาดต่อไปนี้: psql: FATAL: password authentication failed for user "hisham" hisham-agil: hisham$ psql มีอยู่แล้วเพื่อรีเซ็ตรหัสผ่านหรือฉันจะสร้างผู้ใช้ใหม่ด้วยสิทธิ์ superuser ได้อย่างไร ฉันยังใหม่กับ Postgres และเพิ่งติดตั้งเป็นครั้งแรก ฉันพยายามใช้กับ Rails และฉันใช้ Mac OS X Lion


4
วิธีเก็บข้อมูลในฐานข้อมูล postgres ที่ปรับเทียบแล้วโดยใช้วอลุ่ม
ไฟล์เขียนของนักเทียบท่าของฉันมีสามคอนเทนเนอร์เว็บ nginx และ postgres Postgres มีลักษณะเช่นนี้: postgres: container_name: postgres restart: always image: postgres:latest volumes: - ./database:/var/lib/postgresql ports: - "5432:5432 เป้าหมายของฉันคือการติดปริมาณซึ่งสอดคล้องกับโฟลเดอร์ท้องถิ่นเรียกว่า./databaseภายใน postgres /var/lib/postgresคอนเทนเนอร์ เมื่อฉันเริ่มต้นคอนเทนเนอร์เหล่านี้และแทรกข้อมูลลงใน postgres ฉันตรวจสอบว่า/var/lib/postgres/data/base/เต็มไปด้วยข้อมูลที่ฉันเพิ่ม (ในคอนเทนเนอร์ postgres) แต่ในระบบท้องถิ่นของฉัน./databaseจะได้รับdataโฟลเดอร์เท่านั้นเช่น./database/dataถูกสร้างขึ้น แต่ว่างเปล่า . ทำไม? หมายเหตุ: ไฟล์นี้แนะนำว่าไฟล์ด้านบนของฉันควรใช้งานได้ บุคคลนี้ใช้บริการนักเทียบท่าซึ่งน่าสนใจ อัพเดท 1 ตามคำแนะนำของ Nick ฉันได้docker inspectและพบ: "Mounts": [ { "Source": "/Users/alex/Documents/MyApp/database", "Destination": "/var/lib/postgresql", "Mode": "rw", "RW": …

8
แสดงรายการตารางทั้งหมดใน postgresql information_schema
เป็นวิธีที่ดีที่สุดในการแสดงรายการตารางทั้งหมดภายใน Post_signema information_schema ของอะไร? เพื่อชี้แจง: ฉันกำลังทำงานกับฐานข้อมูลเปล่า (ฉันไม่ได้เพิ่มตารางของตัวเอง) แต่ฉันต้องการเห็นทุกตารางในโครงสร้าง information_schema

2
ปรับ PostgreSQL ให้เหมาะสมเพื่อการทดสอบที่รวดเร็ว
ฉันเปลี่ยนมาใช้ PostgreSQL จาก SQLite สำหรับแอปพลิเคชั่น Rails ทั่วไป ปัญหาคือรายละเอียดการรันช้าลงเมื่อใช้ PG บน SQLite จะเอา ~ 34 วินาทีบน PG มัน ~ 76 วินาทีซึ่งเป็นมากกว่า 2x ช้าลง ดังนั้นตอนนี้ฉันต้องการใช้เทคนิคบางอย่างเพื่อทำให้ประสิทธิภาพของ specs เทียบกับ SQLiteโดยไม่มีการแก้ไขโค้ด (โดยเฉพาะการตั้งค่าตัวเลือกการเชื่อมต่อซึ่งอาจเป็นไปไม่ได้) สิ่งที่ชัดเจนจากหัวของฉันคือ: RAM Disk (การตั้งค่าที่ดีกับ RSpec บน OSX จะดีสำหรับการดู) ตารางที่ไม่ถูกบล็อก (สามารถนำไปใช้กับฐานข้อมูลทั้งหมดได้หรือไม่ดังนั้นฉันจึงไม่ได้เปลี่ยนสคริปต์ทั้งหมด) อย่างที่คุณอาจจะเข้าใจว่าฉันไม่สนใจเกี่ยวกับความน่าเชื่อถือและส่วนที่เหลือ (DB เป็นเพียงการทิ้งสิ่งที่นี่) ฉันต้องการที่จะได้รับส่วนใหญ่ของ PG และทำให้มันเป็นไปอย่างรวดเร็วในขณะที่มันอาจจะสามารถ คำตอบที่ดีที่สุดจะอธิบายถึงเทคนิคในการทำเช่นนั้นการตั้งค่าและข้อเสียของเทคนิคเหล่านั้น อัปเดต: fsync = off + full_page_writes …

14
การเชื่อมต่อกับ Postgresql ในคอนเทนเนอร์นักเทียบท่าจากด้านนอก
ฉันมี Postgresql บนเซิร์ฟเวอร์ในคอนเทนเนอร์นักเทียบท่า ฉันจะเชื่อมต่อจากภายนอกจากคอมพิวเตอร์ในพื้นที่ของฉันได้อย่างไร ฉันควรใช้การตั้งค่าใดเพื่ออนุญาตสิ่งนั้น

4
ข้อผิดพลาด: สิทธิ์ที่ถูกปฏิเสธสำหรับลำดับ Cities_id_seq โดยใช้ Postgres
ฉันใหม่ที่ postgres (และที่ระบบข้อมูลฐานข้อมูลทั้งหมด) ฉันรันสคริปต์ sql ในฐานข้อมูลของฉัน: create table cities ( id serial primary key, name text not null ); create table reports ( id serial primary key, cityid integer not null references cities(id), reportdate date not null, reporttext text not null ); create user www with password 'www'; grant select …

9
เรียงซ้อนลบเพียงครั้งเดียว
ฉันมีฐานข้อมูล Postgresql ที่ฉันต้องการลบแบบเรียงซ้อนสองสามอัน อย่างไรก็ตามตารางไม่ได้ถูกตั้งค่าด้วยกฎ ON DELETE CASCADE มีวิธีใดบ้างที่ฉันสามารถทำการลบและบอก Postgresql ให้เรียงมันได้เพียงครั้งเดียว? สิ่งที่เทียบเท่า DELETE FROM some_table CASCADE; คำตอบสำหรับคำถามที่เก่ากว่านี้ทำให้ดูเหมือนว่าไม่มีวิธีแก้ปัญหาดังกล่าวอยู่ แต่ฉันคิดว่าฉันจะถามคำถามนี้อย่างชัดเจนเพื่อให้แน่ใจ
200 postgresql 

5
PostgreSQL ลบด้วยการเข้าร่วมภายใน
DELETE B.* FROM m_productprice B INNER JOIN m_product C ON B.m_product_id = C.m_product_id WHERE C.upc = '7094' AND B.m_pricelist_version_id = '1000020' ฉันได้รับข้อผิดพลาด PostgreSQL 8.2.11 ต่อไปนี้ ERROR: syntax error at or near "B" LINE 1: DELETE B.* from m_productprice B INNER JOIN m_product C ON ... ฉันพยายามให้ DELETE B from m_productprice …
200 sql  postgresql 

2
วิธีสร้างผู้ใช้สำหรับ db ใน postgresql [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน8 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันติดตั้ง PostgreSQL 8.4 บนเซิร์ฟเวอร์ CentOS ของฉันและเชื่อมต่อกับผู้ใช้รูทจากเชลล์และเข้าถึงเชลล์ PostgreSQL ฉันสร้างฐานข้อมูลและผู้ใช้ใน PostgreSQL ในขณะที่พยายามเชื่อมต่อจากสคริปต์ PHP ของฉันมันแสดงให้ฉันเห็นการตรวจสอบล้มเหลว ฉันจะสร้างผู้ใช้ใหม่และวิธีการให้สิทธิ์สำหรับฐานข้อมูลเฉพาะได้อย่างไร

12
psql: FATAL: การรับรองความถูกต้องแบบเพียร์ล้มเหลวสำหรับผู้ใช้“ dev”
เมื่อฉันสร้างผู้ใช้ใหม่ แต่ไม่สามารถล็อกอินฐานข้อมูลได้ ฉันทำสิ่งนี้: postgres@Aspire:/home/XXX$ createuser dev Shall the new role be a superuser? (y/n) n Shall the new role be allowed to create databases? (y/n) y Shall the new role be allowed to create more new roles? (y/n) y จากนั้นสร้างฐานข้อมูล: postgres@Aspire:/home/XXX$ createdb -O dev test_development หลังจากนั้นฉันพยายามpsql -U dev -W test_developmentเข้าสู่ระบบ …
198 postgresql 

10
วิธีการกำหนดค่า postgresql เป็นครั้งแรก?
ฉันเพิ่งติดตั้ง postgresql และฉันระบุรหัสผ่าน x ระหว่างการติดตั้ง เมื่อฉันพยายามที่จะทำcreatedbและระบุรหัสผ่านใด ๆ ที่ฉันได้รับข้อความ: createdb: ไม่สามารถเชื่อมต่อกับฐานข้อมูล postgres: FATAL: การตรวจสอบรหัสผ่านล้มเหลวสำหรับผู้ใช้ createuserสำหรับเดียวกัน ฉันจะเริ่มได้อย่างไร ฉันสามารถเพิ่มตัวเองเป็นผู้ใช้ในฐานข้อมูลได้หรือไม่?

9
ส่งออกแถวเฉพาะจากตาราง PostgreSQL เป็นสคริปต์ INSERT SQL
ฉันมีสคีมาฐานข้อมูลชื่อ: nyummyและตารางที่ชื่อว่าcimory: create table nyummy.cimory ( id numeric(10,0) not null, name character varying(60) not null, city character varying(50) not null, CONSTRAINT cimory_pkey PRIMARY KEY (id) ); ฉันต้องการส่งออกcimoryข้อมูลของตารางเป็นการแทรกไฟล์สคริปต์ SQL อย่างไรก็ตามฉันต้องการส่งออกบันทึก / ข้อมูลที่มีค่าเท่ากับ 'tokyo' เท่านั้น (สมมติว่าข้อมูลเมืองเป็นตัวพิมพ์เล็กทั้งหมด) ทำอย่างไร? ไม่สำคัญว่าโซลูชันจะอยู่ในเครื่องมือ GUI ฟรีแวร์หรือบรรทัดคำสั่ง (แม้ว่าโซลูชันเครื่องมือ GUI จะดีกว่า) ฉันลอง pgAdmin III แล้ว แต่ไม่พบตัวเลือกในการทำเช่นนี้

15
การซ่อมแซม Postgresql หลังจากอัปเกรดเป็น OSX 10.7 Lion
ฉันเพิ่งอัพเกรดเป็น OSX 10.7 ณ จุดนี้การติดตั้งทางรถไฟของฉันได้รับการติดตั้งอย่างสมบูรณ์เมื่อพยายามเชื่อมต่อกับเซิร์ฟเวอร์ psql เมื่อฉันทำจากบรรทัดคำสั่งโดยใช้ psql -U postgres มันใช้งานได้ดีทั้งหมด แต่เมื่อฉันพยายามเรียกใช้เซิร์ฟเวอร์หรือคอนโซล rails ด้วยชื่อผู้ใช้และรหัสผ่านเดียวกันฉันได้รับข้อผิดพลาดนี้ ...activerecord-3.0.9/lib/active_record/connection_adapters/postgresql_adapter.rb:950:in `initialize': could not connect to server: Permission denied (PGError) Is the server running locally and accepting connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"? ความคิดใด ๆ ที่อาจเกิดขึ้นจะเป็นประโยชน์อย่างยิ่ง! ขอบคุณ!

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