Dari CREATE ROLE
dokumentasi :
Perhatikan bahwa peran didefinisikan di tingkat klaster basis data, dan juga berlaku di semua basis data di kluster.
Karena pg_dump
membuang satu basis data, Anda tidak dapat mengekstrak peran dengan utilitas itu. The pg_dumpall --roles-only
perintah Anda diusulkan akan melakukan pekerjaan - namun Anda mungkin perlu untuk menyaring output sehingga peran hanya diinginkan akan dibuat dalam cluster baru.
Peran disimpan dalam pg_authid
katalog, yang secara fisik disimpan dalam data/global/
subfolder dari instalasi PostgreSQL, bersama dengan tabel cluster-wide lainnya. Anda dapat menanyakan konten pg_authid
melalui pg_roles
tampilan.
CATATAN : Anda akan membutuhkan hak pengguna super untuk membuang peran. Jika tidak, Anda akan mendapatkan izin ditolak pada SELECT
pada pg_authid
- dan bahkan ketika superuser memberikan SELECT
hak, Anda akan mendapatkan kesalahan yang sama. Namun, dalam hal ini, Anda dapat membuat daftar peran dengan menanyakan pg_authid
langsung, peran COPY
tersebut ke file dan memutar beberapa sihir untuk membuat yang diperlukan CREATE ROLE
dan ALTER ROLE
pernyataan.