Outils pour utilisateurs

Outils du site


structure_postgres

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
structure_postgres [2020/05/07 19:13] fraynaudstructure_postgres [2020/05/08 19:00] (Version actuelle) – [les roles] fraynaud
Ligne 1: Ligne 1:
-======structure de la base de données postgres======+======structure de la base de données openstock======
  
 +=====les roles=====
  
 +<code>
 + openstock=> \du
 +                                              Liste des rôles
 + Nom du rôle |                                    Attributs                                    | Membre 
 +-------------+---------------------------------------------------------------------------------+-------
 + deb         | Superutilisateur, Créer un rôle, Créer une base                                 | {}
 + deb_asso    |                                                                                 | {}
 + postgres    | Superutilisateur, Créer un rôle, Créer une base, Réplication, Contournement RLS | {}
  
-===== Base de données openstock =====+</code> 
 +===Les droits===  
 +<code> 
 +openstock=> \dp  openstock_association.* 
 +                                                           Droits d'accès 
 +        Schéma                    Nom            |   Type        Droits d'accès       | Droits d'accès à la colonne | Politiques  
 +-----------------------+---------------------------+----------+---------------------------+------------ openstock_association  | archive_entre             | table    | postgres=arwdDxt/postgres+|                               
 +                                                          | deb_asso=arwd/postgres    |                               
 +openstock_association  | archive_entre_seq         | séquence | postgres=rwU/postgres    +|                              
 +                                                          | deb_asso=rw/postgres      |  
 + 
 +</code> 
 +===les privilèges=== 
 +<code> 
 + 
 +openstock=> SELECT GRANTOR, GRANTEE, TABLE_NAME, ' <TABLE>' AS COLUMN_NAME, PRIVILEGE_TYPE,   IS_GRANTABLE FROM   INFORMATION_SCHEMA.TABLE_PRIVILEGES 
 +WHERE  GRANTEE IN ('deb_asso'); 
 + 
 + grantor  | grantee  |       table_name        | column_name | privilege_type | is_grantable  
 +----------+----------+-------------------------+-------------+----------------+-------------- 
 + postgres | deb_asso | om_permission            <TABLE>    | INSERT         | NO 
 + postgres | deb_asso | om_permission            <TABLE>    | SELECT         | NO 
 + postgres | deb_asso | om_permission            <TABLE>    | UPDATE         | NO 
 + postgres | deb_asso | om_permission            <TABLE>    | DELETE         | NO 
 + postgres | deb_asso | om_lettretype            <TABLE>    | INSERT         | NO 
 + postgres | deb_asso | om_lettretype            <TABLE>    | SELECT         | NO 
 + postgres | deb_asso | om_lettretype            <TABLE>    | UPDATE         | NO 
 + 
 +... 
 +</code> 
 + 
 + 
 +=====la base de données=====
  
-====les bases==== 
  
 Toute création de base se fait à partir d’un modèle. Par défaut, PostgreSQL utilise le modèle template1.  Toute création de base se fait à partir d’un modèle. Par défaut, PostgreSQL utilise le modèle template1. 
-  * SQL : CREATE DATABASE 
-  * droit nécessaire: SUPERUSER ou CREATEDB 
  
-====les schémas====+ 
 +<code> 
 +\l 
 +                                  Liste des bases de données 
 +    Nom    | Propriétaire | Encodage | Collationnement | Type caract. |    Droits d'accès      
 +-----------+--------------+----------+-----------------+--------------+----------------------- 
 + openstock | postgres     | UTF8     | fr_FR.UTF-8     | fr_FR.UTF-8  |  
 + postgres  | postgres     | UTF8     | fr_FR.UTF-8     | fr_FR.UTF-8  |  
 + template0 | postgres     | UTF8     | fr_FR.UTF-8     | fr_FR.UTF-8  | =c/postgres          + 
 +                        |          |                              | postgres=CTc/postgres 
 + template1 | postgres     | UTF8     | fr_FR.UTF-8     | fr_FR.UTF-8  | =c/postgres          + 
 +                        |          |                              | postgres=CTc/postgres 
 +</code> 
 + 
 + 
 +Il est possible de personnaliser les templates et de créer un template avec l'extension postgis et une table jpa par exemple. 
 + 
 +<code> 
 + 
 +template1=# create table jpa (id integer); 
 +CREATE TABLE 
 + 
 +template1=# create extension postgis 
 +template1-# ; 
 +CREATE EXTENSION 
 + 
 +template1=# create database exemple; 
 +CREATE DATABASE 
 + 
 +template1=# \c exemple 
 +Vous êtes maintenant connecté à la base de données « exemple » en tant qu'utilisateur « deb ». 
 + 
 +exemple=# \d 
 +Liste des relations 
 +Schéma|Nom|Type|Propriétaire 
 +public|geography_columns|vue|deb 
 +public|geometry_columns|vue|deb 
 +public|jpa|table|deb 
 +public|raster_columns|vue|deb 
 +public|raster_overviews|vue|deb 
 +public|spatial_ref_sys|table|deb 
 + 
 +</code> 
 + 
 + 
 +=====les schémas=====
  
 Les schémas sont comparables aux répertoires du système d'exploitation. Les schémas sont comparables aux répertoires du système d'exploitation.
Ligne 32: Ligne 115:
 et deux schémas non visibles qui contient les objets de la base de données  et deux schémas non visibles qui contient les objets de la base de données 
   * information_schema au standart sql   * information_schema au standart sql
-  * pg_catalog spécifique à postgres+
  
  
Ligne 50: Ligne 133:
  
 \dv information_schema.* \dv information_schema.*
-information_schema | _pg_foreign_data_wrappers             | vue  | postgres 
- information_schema | _pg_foreign_servers                   | vue  | postgres 
  information_schema | _pg_foreign_table_columns             | vue  | postgres  information_schema | _pg_foreign_table_columns             | vue  | postgres
  information_schema | _pg_foreign_tables                    | vue  | postgres  information_schema | _pg_foreign_tables                    | vue  | postgres
Ligne 70: Ligne 151:
  information_schema | views                                 | vue  | postgres  information_schema | views                                 | vue  | postgres
  ...   ... 
- +</code> 
 +  * pg_catalog spécifique à postgres 
 +<code>
 \dt pg_catalog \dt pg_catalog
  
structure_postgres.1588878788.txt.gz · Dernière modification : 2020/05/07 19:13 de fraynaud