22
0
Fork 0

Ajout information sur les droits d'un role et changement propriétaire sequence

This commit is contained in:
emorino 2019-11-05 11:59:52 +01:00
parent 295b6720bd
commit e6982cd796
1 changed files with 30 additions and 2 deletions

View File

@ -322,6 +322,12 @@ $ psql -c "ALTER USER <login> WITH PASSWORD 'foo'"
$ dropuser <login>
~~~
* Sélectionner une base de données (l'équivalent de *use* dans le monde MySQL) :
~~~
=# \c <base>
~~~
* Lister les bases de données :
~~~
@ -378,6 +384,18 @@ ou :
FROM pg_trigger t JOIN pg_proc p ON p.oid = t.tgfoid JOIN pg_language l ON l.oid = p.prolang;
~~~
* Lister les sequences d'une base :
~~~
=# \ds
~~~
ou avec une requête SQL :
~~~
=# SELECT relname FROM pg_class WHERE relkind = 'S';
~~~
* Faire en sorte qu'un utilisateur hérite des droits d'un autre utilisateur (à vérifier) :
~~~
@ -386,6 +404,9 @@ ou :
(Il faut que jdoe est été créé avec l'option INHERIT (c'est le cas par défaut))
Si on doit créer un utilisateur qui dois avoir access à une base de données, mais dont il n'est pas le propriétaire, il faut que celui-ci hérite des droits du propriétaire.
A faire avec tous les utilisateurs de toutes les bases dont ce rôle / utilisateur postgresql doit avoir accès.
* Donner les droits à un utilisateur existant de créer des bases de données (à vérifier) :
~~~
@ -418,12 +439,19 @@ pour les tables de la base foo
foo=# \d+
~~~
* Sélectionner une base de données (l'équivalent de *use* dans le monde MySQL) :
* Changer le propriétaire d'une sequence :
~~~
=# \c <base>
foo=# alter sequence bar_seq owner to nomrole;
~~~
On peux aussi le faire sur toutes les sequences d'une base avec un boucle en bash comme ceci :
~~~
postgres@:~$ for db in mabase ; do for seq in $(psql -qAt -c "SELECT relname FROM pg_class WHERE relkind = 'S';" $db) ; do psql -c "alter sequence \"$seq\" owner to $db" $db; done; done
~~~
* Terminer une session en cours (équivalent de KILL de MySQL) :
~~~