Postgresql
Ressources
Commandes de base PSQL
- Accès aux commandes : '' psql -U <utilisateur> <base> ''
- Voir tous les langages disponibles : '' SELECT * FROM pg_pltemplate; ''
- Afficher la version de Postgres : '' SELECT version(); ''
- Afficher la date actuelle : '' SELECT current_date; ''
- Voir les bases : '' \l ''
- Voir les tables : '' \d ''
- Voir les rôles : '' \du ''
- Description d'une table : '' \d <table> ''
- Exécuter les instructions d'un fichier SQL : '' \i <fichier.sql> ''
- Changer de base de données : '' \c <base> ''
- Quitter : '' \q ''
Taille de la base ou des tables :
SELECT pg_size_pretty(pg_database_size('DB')); SELECT pg_size_pretty(pg_relation_size('TABLE')); SELECT pg_size_pretty(pg_total_relation_size('TABLE')); // taille avec les indexes SELECT relname, relpages FROM pg_class ORDER BY relpages DESC
Commandes de l'utilisateur postgres
- Se loguer en tant qu'utilisateur unix postgres : '' su - postgres ''
- Créer un utilisateur : '' createuser <nom-de-l-utilisateur> ''
- Créer un base encodée en UTF-8 : '' createdb -E UTF8 -O <utilisateur> <nom-de-la-base> ''
- Définir un langage (plpgsql, …) pour la base de données : '' createlang <langage> <base> ''
Dossiers contenant les fichiers de config de Postgresql
- Open Suse : '' /var/lib/pgsql/data/ ''
- Raspbian : '' /etc/postgresql/X.Y/main/ ''
Activer les logs des requêtes SQL
- Éditer le fichier postgresql.conf : '' vi /var/lib/pgsql/data/postgresql.conf ''
- Modifier les entrées :
- ** log_directory ** : pour indiquer le dossier qui contiendra les fichiers de log.
- ** log_statement ** : all pour loguer toutes les requêtes.
- ** log_min_duration_statement ** : en indiquant un temps d'exécution (en millisecondes) des requêtes pour loguer les requêtes lentes seulement (0 logue toutes les requêtes avec leur temps).