Bloc Notes sur Postgresql
Créer un espace de travail dans le dossier /bases/postgresql (doit être vide et existant)
Exécuter dans un terminal
Ajout de l'utilisateur mon_user dans la base par défaut
Modifier /var/lib/pgsql/postgresql.conf et passer la valeur de localhost à * en ayant pris soin de décommenter la ligne.
Dans le fichier /var/lib/pgsql/data/pg_hba.conf ajouter :
La commande SQL suivante permet de créer un ID unique, auto-incrémenté, utilisé comme clef primaire. Cela correspond à la commande mySql id int not null auto_increment primary key.
A noter que cet "raccourci" induit la création d'une séquence nommée nomTable_nomChamp_seq et d'une contrainte "clef primaire" nommée nomTable_pkey.
Soit une table TA avec comme clef primaire TA.id et une table TB contenant un champ TA_id. On exprime la valeur de TA_id comme référence à la clef étrangère TA.id par la commande suivante :
La commande SQL suivante permet de gérer une valeur d'énumération pour valeur d'un champ de table. Ceci corresponda à la syntaxe mySql couleur enum('rouge', 'bleu') default 'rouge'
Dans la longue série du je parle avant de comprendre, j'ai failli récemment virer postgreSql pour cause de trop grosse consommation de CPU. 80% pour afficher une page de ce site pour un utilisateur me semblait déraisonnable... Heureusement, après quelques recherches, je me suis rendu compte d'un oubli de taille, le vaccuum. Le Vacuum est à lancer après l'installation qui précède et de manière récurrente par le suite pour optimiser l'organisation de l'espace de stockage de postgresql. La commande "magique" qui m'a donc permis de passer de 80% à 0.5% de cpu fût :
Cela a mouliné un certain temps et après, le miracle était accomplis...
Pour faire un backup SQL de toute la base :
Modifier le fichier /var/lib/pgsql/postgresql.conf et changer la valeur de log_destination à syslog
Violent et efficace
Poster un nouveau commentaire