นี่คือคำสั่ง createuser ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
createuser - กำหนดบัญชีผู้ใช้ PostgreSQL ใหม่
เรื่องย่อ
สร้างผู้ใช้ [ตัวเลือกการเชื่อมต่อ... ] [ตัวเลือก... ] [ชื่อผู้ใช้]
DESCRIPTION
createuser สร้างผู้ใช้ PostgreSQL ใหม่ (หรือมากกว่านั้นคือบทบาท) เฉพาะ superuser และ
ผู้ใช้ที่มีสิทธิ์ CREATEROLE สามารถสร้างผู้ใช้ใหม่ได้ ดังนั้น createuser ต้องถูกเรียกใช้โดย
คนที่สามารถเชื่อมต่อเป็น superuser หรือผู้ใช้ที่มีสิทธิ์ CREATEROLE
หากคุณต้องการสร้าง superuser ใหม่ คุณต้องเชื่อมต่อในฐานะ superuser ไม่ใช่แค่กับ
สิทธิพิเศษของ CREATEROLE การเป็น superuser หมายถึงความสามารถในการข้ามการเข้าถึงทั้งหมด
ตรวจสอบสิทธิ์ภายในฐานข้อมูล ดังนั้น superuserdom จึงไม่ควรให้สิทธิ์อย่างง่ายๆ
createuser เป็น wrapper รอบคำสั่ง SQL CREATE ROLE (สร้าง_บทบาท(7)). ไม่มี
ความแตกต่างอย่างมีประสิทธิผลระหว่างการสร้างผู้ใช้ผ่านยูทิลิตี้นี้และผ่านวิธีการอื่นๆ สำหรับ
การเข้าถึงเซิร์ฟเวอร์
OPTIONS
createuser ยอมรับอาร์กิวเมนต์บรรทัดคำสั่งต่อไปนี้:
ชื่อผู้ใช้
ระบุชื่อของผู้ใช้ PostgreSQL ที่จะสร้าง ชื่อนี้ต้องไม่ซ้ำกัน
จากบทบาทที่มีอยู่ทั้งหมดในการติดตั้ง PostgreSQL นี้
-c จำนวน
--connection-จำกัด=จำนวน
กำหนดจำนวนการเชื่อมต่อสูงสุดสำหรับผู้ใช้ใหม่ ค่าเริ่มต้นคือการตั้งค่าไม่จำกัด
-d
--createdb
ผู้ใช้ใหม่จะได้รับอนุญาตให้สร้างฐานข้อมูล
-D
--no-createdb
ผู้ใช้ใหม่จะไม่ได้รับอนุญาตให้สร้างฐานข้อมูล นี่คือค่าเริ่มต้น
-e
--เสียงสะท้อน
สะท้อนคำสั่งที่ createuser สร้างและส่งไปยังเซิร์ฟเวอร์
-E
--เข้ารหัส
เข้ารหัสรหัสผ่านของผู้ใช้ที่จัดเก็บไว้ในฐานข้อมูล หากไม่ได้ระบุไว้ ค่าเริ่มต้น
ใช้พฤติกรรมรหัสผ่าน
-g บทบาท
--บทบาท=บทบาท
ระบุบทบาทที่จะเพิ่มบทบาทนี้ทันทีในฐานะสมาชิกใหม่ หลายรายการ
บทบาทที่จะเพิ่มบทบาทนี้ในฐานะสมาชิกสามารถระบุได้โดยการเขียน
หลาย -g สวิทช์
-i
--สืบทอด
บทบาทใหม่จะสืบทอดสิทธิ์ของบทบาทที่เป็นสมาชิกโดยอัตโนมัติ นี่คือ
ค่าเริ่มต้น
-I
--ไม่มีมรดก
บทบาทใหม่จะไม่สืบทอดสิทธิ์ของบทบาทที่เป็นสมาชิกโดยอัตโนมัติ
--เชิงโต้ตอบ
พร้อมต์สำหรับชื่อผู้ใช้หากไม่มีการระบุในบรรทัดคำสั่ง และยังพร้อมท์สำหรับ
แล้วแต่ตัวเลือก -d/-D, -r/-R, -s/-S ไม่ได้ระบุไว้ในบรรทัดคำสั่ง
(นี่เป็นการทำงานเริ่มต้นจนถึง PostgreSQL 9.1)
-l
--เข้าสู่ระบบ
ผู้ใช้ใหม่จะได้รับอนุญาตให้เข้าสู่ระบบ (นั่นคือ ชื่อผู้ใช้สามารถใช้เป็น
ตัวระบุผู้ใช้เซสชันเริ่มต้น) นี่คือค่าเริ่มต้น
-L
--ไม่มีการเข้าสู่ระบบ
ผู้ใช้ใหม่จะไม่ได้รับอนุญาตให้เข้าสู่ระบบ (บทบาทที่ไม่มีสิทธิ์ในการเข้าสู่ระบบยังคงอยู่
มีประโยชน์เป็นวิธีการจัดการสิทธิ์ของฐานข้อมูล)
-N
--ไม่ได้เข้ารหัส
ไม่เข้ารหัสรหัสผ่านของผู้ใช้ที่จัดเก็บไว้ในฐานข้อมูล หากไม่ระบุ
ใช้พฤติกรรมรหัสผ่านเริ่มต้น
-P
--pwพร้อมท์
หากกำหนดไว้ createuser จะออกคำสั่งให้ใส่รหัสผ่านของผู้ใช้ใหม่ มันไม่ใช่
จำเป็นหากคุณไม่ได้วางแผนที่จะใช้การตรวจสอบรหัสผ่าน
-r
--creationole
ผู้ใช้ใหม่จะได้รับอนุญาตให้สร้างบทบาทใหม่ (นั่นคือ ผู้ใช้รายนี้จะมี
สิทธิ์ของ CREATEROLE)
-R
--no-crearole
ผู้ใช้ใหม่จะไม่ได้รับอนุญาตให้สร้างบทบาทใหม่ นี่คือค่าเริ่มต้น
-s
--superuser
ผู้ใช้ใหม่จะเป็นผู้ใช้ขั้นสูง
-S
--no-superuser
ผู้ใช้ใหม่จะไม่ใช่ผู้ใช้ขั้นสูง นี่คือค่าเริ่มต้น
-V
--รุ่น
พิมพ์เวอร์ชัน createuser และออก
--การจำลองแบบ
ผู้ใช้ใหม่จะมีสิทธิ์ REPLICATION ซึ่งอธิบายไว้อย่างละเอียดมากขึ้นใน
เอกสารประกอบสำหรับ CREATE ROLE (สร้าง_บทบาท(พ.ศ. 7)).
--ไม่มีการจำลองแบบ
ผู้ใช้ใหม่จะไม่มีสิทธิ์ REPLICATION ซึ่งอธิบายไว้อย่างครบถ้วนใน
เอกสารประกอบสำหรับ CREATE ROLE (สร้าง_บทบาท(พ.ศ. 7)).
-?
--ช่วยด้วย
แสดงความช่วยเหลือเกี่ยวกับอาร์กิวเมนต์บรรทัดคำสั่ง createuser และออก
createuser ยังยอมรับอาร์กิวเมนต์บรรทัดคำสั่งต่อไปนี้สำหรับพารามิเตอร์การเชื่อมต่อ:
-h เจ้าภาพ
--โฮสต์=เจ้าภาพ
ระบุชื่อโฮสต์ของเครื่องที่เซิร์ฟเวอร์กำลังทำงาน ถ้าค่า
เริ่มต้นด้วยเครื่องหมายสแลช มันถูกใช้เป็นไดเร็กทอรีสำหรับซ็อกเก็ตโดเมน Unix
-p พอร์ต
--พอร์ต=พอร์ต
ระบุพอร์ต TCP หรือส่วนขยายไฟล์ซ็อกเก็ตโดเมน Unix ภายในที่เซิร์ฟเวอร์
กำลังฟังสำหรับการเชื่อมต่อ
-U ชื่อผู้ใช้
--ชื่อผู้ใช้=ชื่อผู้ใช้
ชื่อผู้ใช้ที่จะเชื่อมต่อเป็น (ไม่ใช่ชื่อผู้ใช้ที่จะสร้าง)
-w
--ไม่มีรหัสผ่าน
ไม่เคยออกพรอมต์รหัสผ่าน หากเซิร์ฟเวอร์ต้องการการตรวจสอบรหัสผ่านและ a
รหัสผ่านไม่สามารถใช้ได้ด้วยวิธีอื่น เช่น ไฟล์ .pgpass การเชื่อมต่อ
ความพยายามจะล้มเหลว ตัวเลือกนี้จะมีประโยชน์ในงานแบตช์และสคริปต์ที่ไม่มีผู้ใช้
มีอยู่เพื่อป้อนรหัสผ่าน
-W
--รหัสผ่าน
บังคับ createuser ให้ถามรหัสผ่าน (สำหรับการเชื่อมต่อกับเซิร์ฟเวอร์ ไม่ใช่สำหรับ
รหัสผ่านของผู้ใช้ใหม่)
ตัวเลือกนี้ไม่จำเป็นเลย เนื่องจาก createuser จะถามหา a โดยอัตโนมัติ
รหัสผ่านหากเซิร์ฟเวอร์ต้องการการตรวจสอบรหัสผ่าน อย่างไรก็ตาม createuser จะเสีย
ความพยายามในการเชื่อมต่อพบว่าเซิร์ฟเวอร์ต้องการรหัสผ่าน ในบางกรณีมันคือ
น่าพิมพ์ -W เพื่อหลีกเลี่ยงความพยายามในการเชื่อมต่อเพิ่มเติม
และพวกเรา
ผี
พีจีพอร์ต
พีกูเซอร์
พารามิเตอร์การเชื่อมต่อเริ่มต้น
ยูทิลิตีนี้ เช่นเดียวกับยูทิลิตี PostgreSQL อื่นๆ ส่วนใหญ่ ก็ใช้ตัวแปรสภาพแวดล้อมเช่นกัน
รองรับโดย libpq (ดูหัวข้อ 31.14 “ตัวแปรสภาพแวดล้อม” ในเอกสารประกอบ)
วินิจฉัย
ในกรณีที่มีปัญหา โปรดดู CREATE ROLE (สร้าง_บทบาท(7)) และ psql(1) เพื่อหารือเกี่ยวกับ
ปัญหาที่อาจเกิดขึ้นและข้อความแสดงข้อผิดพลาด เซิร์ฟเวอร์ฐานข้อมูลต้องทำงานที่เป้าหมาย
เจ้าภาพ. นอกจากนี้ การตั้งค่าการเชื่อมต่อเริ่มต้นและตัวแปรสภาพแวดล้อมที่ใช้โดยlibpq
ห้องสมุดส่วนหน้าจะใช้
ตัวอย่าง
ในการสร้างผู้ใช้ joe บนเซิร์ฟเวอร์ฐานข้อมูลดีฟอลต์:
$ สร้างผู้ใช้ โจ
เพื่อสร้างผู้ใช้ joe บนเซิร์ฟเวอร์ฐานข้อมูลดีฟอลต์พร้อมท์ให้ใส่เพิ่มเติม
แอตทริบิวต์:
$ สร้างผู้ใช้ --เชิงโต้ตอบ โจ
บทบาทใหม่จะเป็น superuser หรือไม่? (ใช่/ไม่ใช่) n
บทบาทใหม่จะได้รับอนุญาตให้สร้างฐานข้อมูลหรือไม่? (ใช่/ไม่ใช่) n
บทบาทใหม่จะได้รับอนุญาตให้สร้างบทบาทใหม่เพิ่มเติมหรือไม่? (ใช่/ไม่ใช่) n
เพื่อสร้างผู้ใช้เดียวกัน joe โดยใช้เซิร์ฟเวอร์บนโฮสต์ eden พอร์ต 5000 พร้อมแอตทริบิวต์
ระบุไว้อย่างชัดเจนโดยดูที่คำสั่งพื้นฐาน:
$ สร้างผู้ใช้ -h สุขาวดี -p 5000 -S -D -R -e โจ
สร้างบทบาท joe NOSUPERUSER NOCREATEDB NOCREATEROLE รับช่วงการเข้าสู่ระบบ;
ในการสร้างผู้ใช้ joe เป็น superuser และกำหนดรหัสผ่านทันที:
$ สร้างผู้ใช้ -P -s -e โจ
ป้อนรหัสผ่านสำหรับบทบาทใหม่: ซิซซี่
ป้อนอีกครั้ง: ซิซซี่
สร้างบทบาท joe รหัสผ่าน 'md5b5f5ba1a423792b526f799ae4eb3d59e' SUPERUSER CREATEDB CREATEROLE รับการเข้าสู่ระบบ;
ในตัวอย่างข้างต้น รหัสผ่านใหม่ไม่ได้ถูกสะท้อนออกมาจริง ๆ เมื่อพิมพ์ แต่เราจะแสดงสิ่งที่
ถูกพิมพ์เพื่อความชัดเจน อย่างที่คุณเห็น รหัสผ่านจะถูกเข้ารหัสก่อนที่จะถูกส่งไปยัง
ลูกค้า. ถ้าตัวเลือก --ไม่ได้เข้ารหัส ถูกใช้, รหัสผ่าน จะ ปรากฏในเสียงสะท้อน
คำสั่ง (และอาจรวมถึงบันทึกของเซิร์ฟเวอร์และที่อื่นด้วย) ดังนั้นคุณจึงไม่ต้องการใช้ -e
ในกรณีนั้น ถ้าคนอื่นเห็นหน้าจอของคุณ
ใช้ createuser ออนไลน์โดยใช้บริการ onworks.net