Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- show privilegies for users
- SELECT
- pg_user.usename AS user_name,
- t1.nspname as schema,
- t1.relname as table,
- relacl.privilege_type as type,
- relacl.is_grantable
- FROM (
- SELECT
- pg_namespace.nspname,
- pg_class.relname,
- coalesce(pg_class.relacl,
- ('{' || pg_user.usename || '=arwdDxt/' || pg_user.usename || '}') :: ACLITEM []) AS relacl
- FROM
- pg_class
- INNER JOIN pg_namespace ON pg_class.relnamespace = pg_namespace.oid
- INNER JOIN pg_user ON pg_class.relowner = pg_user.usesysid
- WHERE
- pg_namespace.nspname !~ '^pg_'
- AND pg_namespace.nspname != 'information_schema'
- ) AS t1
- CROSS JOIN aclexplode(t1.relacl) AS relacl
- INNER JOIN pg_user ON relacl.grantee = pg_user.usesysid
- WHERE pg_user.usename= 'stat_app' and t1.relname= 'availability_area'
- ORDER BY
- pg_user.usename,
- t1.nspname,
- t1.relname,
- relacl.privilege_type
- --show indexes
- select
- t.relname as table_name,
- i.relname as index_name,
- a.attname as column_name
- from
- pg_class t,
- pg_class i,
- pg_index ix,
- pg_attribute a
- where
- t.oid = ix.indrelid
- and i.oid = ix.indexrelid
- and a.attrelid = t.oid
- and a.attnum = ANY(ix.indkey)
- and t.relkind = 'r'
- -- and t.relname like 'not%'
- order by
- t.relname,
- i.relname;
- --show all tables
- SELECT tablename
- FROM pg_tables
- WHERE tablename NOT LIKE 'pg_%'
- ORDER BY tablename;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement