Advertisement
Guest User

Untitled

a guest
May 25th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. -- show privilegies for users
  2. SELECT
  3. pg_user.usename AS user_name,
  4. t1.nspname as schema,
  5. t1.relname as table,
  6. relacl.privilege_type as type,
  7. relacl.is_grantable
  8. FROM (
  9. SELECT
  10. pg_namespace.nspname,
  11. pg_class.relname,
  12. coalesce(pg_class.relacl,
  13. ('{' || pg_user.usename || '=arwdDxt/' || pg_user.usename || '}') :: ACLITEM []) AS relacl
  14. FROM
  15. pg_class
  16. INNER JOIN pg_namespace ON pg_class.relnamespace = pg_namespace.oid
  17. INNER JOIN pg_user ON pg_class.relowner = pg_user.usesysid
  18. WHERE
  19. pg_namespace.nspname !~ '^pg_'
  20. AND pg_namespace.nspname != 'information_schema'
  21. ) AS t1
  22. CROSS JOIN aclexplode(t1.relacl) AS relacl
  23. INNER JOIN pg_user ON relacl.grantee = pg_user.usesysid
  24.  
  25. WHERE pg_user.usename= 'stat_app' and t1.relname= 'availability_area'
  26.  
  27. ORDER BY
  28. pg_user.usename,
  29. t1.nspname,
  30. t1.relname,
  31. relacl.privilege_type
  32.  
  33. --show indexes
  34. select
  35. t.relname as table_name,
  36. i.relname as index_name,
  37. a.attname as column_name
  38. from
  39. pg_class t,
  40. pg_class i,
  41. pg_index ix,
  42. pg_attribute a
  43. where
  44. t.oid = ix.indrelid
  45. and i.oid = ix.indexrelid
  46. and a.attrelid = t.oid
  47. and a.attnum = ANY(ix.indkey)
  48. and t.relkind = 'r'
  49. -- and t.relname like 'not%'
  50. order by
  51. t.relname,
  52. i.relname;
  53.  
  54. --show all tables
  55. SELECT tablename
  56. FROM pg_tables
  57. WHERE tablename NOT LIKE 'pg_%'
  58. ORDER BY tablename;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement