sql >> Databasteknik >  >> RDS >> PostgreSQL

PostgreSQL återkallar behörigheter från pg_catalog-tabeller

låt mig hjälpa dig med detta:

  • första :eftersom pg_catalog ägs av superanvändaren postgres , så se till att du loggar in på servern med denna role:pg_catalog schemabehörighet

  • 2:a :se till att du ansluter till höger databas som behöver BEHANDLA/ÅTERBAKA behörigheter på. BEVISA/ÅTERkalla påverkar endast strömmen databas som du anslutit till. Det betyder att efter att du loggat in med ett superanvändarkonto, problemet:\c [db] för att ansluta till den databasen kommer skalet att ändras till:[db]=>

  • tredje :tabeller i pg_catalog standardvärden beviljade SELECT till PUBLIC:tabeller i pg_catalog. Så du måste köra REVOKE SELECT FROM PUBLIC och sedan GRANTE SELECT till lämpliga användare:

    ÅTERVÄLJ VAL PÅ ALLA TABELLER I SCHEMA pg_catalog FROM PUBLIC;

    GE VAL PÅ TABELL [tabell] TILL [användare];

    För listtabeller i en databas:pg_class och pg_namespace .

Och det är allt :)



  1. Hur MID()-funktionen fungerar i MySQL

  2. Konvertera 'datetime2' till 'time' i SQL Server (T-SQL-exempel)

  3. Hur exporterar man en mysql-databas med kommandotolken?

  4. Skapa pivotvy i SQL från en SQL-tabell