De la CREATE ROLEdocumentación :
Tenga en cuenta que los roles se definen en el nivel del clúster de la base de datos, por lo que son válidos en todas las bases de datos del clúster.
Como pg_dumpvolca una sola base de datos, no puede extraer roles con esa utilidad. El pg_dumpall --roles-onlycomando que propuso hará el trabajo; sin embargo, es posible que necesite filtrar su salida para que solo se creen los roles deseados en el nuevo clúster.
Los roles se almacenan en el pg_authidcatálogo, que se almacena físicamente en la data/global/subcarpeta de una instalación de PostgreSQL, junto con las otras tablas de todo el clúster. Puede consultar el contenido a pg_authidtravés de la pg_rolesvista.
NOTA : necesitará derechos de superusuario para volcar los roles. De lo contrario, se obtendría un permiso denegado en SELECTel pg_authid- e incluso cuando un superusuario otorga SELECTderechos, se obtendría el mismo error. En este caso, sin embargo, puede enumerar los roles al consultarlos pg_authiddirectamente COPYen un archivo y hacer un poco de magia para crear las declaraciones CREATE ROLEy ALTER ROLEdeclaraciones necesarias .