Apa yang diperlukan untuk membuat pengguna normal dapat membuat skema di PostgreSQL?

10

Saya membuat database baru testdan membuat pengguna 'eonil' dengan perintah ini:

CREATE ROLE eonil LOGIN ENCRYPTED PASSWORD 'password' NOINHERIT VALID UNTIL 'infinity';

di PostgreSQL saya. Saya lari psql -U eonil test. Ketika saya mencoba membuat skema baru, itu menunjukkan kesalahan.

test=> CREATE SCHEMA new_schema AUTHORIZATION eonil;
ERROR:  permission denied for database test
test=> 

Mengapa ini membuat kesalahan? Apa yang dibutuhkan?

Eonil
sumber

Jawaban:

16

Berikan CREATEhak istimewa pengguna pada database, mis

GRANT CREATE ON DATABASE test TO eonil

Hak CREATEistimewa, ketika diterapkan pada basis data yang ada, memungkinkan Pengguna untuk membuat skema baru di dalam basis data. Dokumentasi resmi untuk hak akses apa lagi yang Anda bisa GRANTada di sini .

Magnus Hagander
sumber