PostgreSQL
Aller à la navigation
Aller à la recherche
Installation sous Debian
aptitude install postgresql
sed -i "s/^#\(listen_addresses = \)'localhost'\(.*\)/\1'*'\2/g" /etc/postgresql/9.4/main/postgresql.conf
printf "host\tall\t\tall\t\t192.168.1.0/24\t\tmd5\n" >> /etc/postgresql/9.4/main/pg_hba.conf
/etc/init.d/postgresql restart
Commandes PSQL en shell
Se connecter à PostreSQL :
psql -U NOM_USER -W
Se connecter à PostreSQL et à une base directement :
psql -U NOM_USER -W -d NOM_BASE
Liste les bases PostgreSQL :
psql -U NOM_USER -W -l
Lancer une requête SQL sur une base PostgreSQL :
psql -U NOM_USER -W -f requete.sql
Commandes PSQL
Se connecter à une base :
\c NOM_BASE
Se connecter à une base avec un utilisateur particulier :
\c NOM_BASE NOM_USER
Liste les bases disponible :
\l
ou
select datname from pg_database;
Liste les tables d'une base :
\d
ou
select table_name from information_schema.tables where table_schema = 'public';
Liste les colonnes d'une table :
\d NOM_TABLE;
ou
select column_name from information_schema.columns where table_name ='table';
Killer une requete :
select pg_cancel_backend(num_proc_pid);
Afficher les requêtes qui ont démarré depuis plus d'une heure :
select * from pg_stat_activity where query_start < (select current_timestamp - '1 hour'::interval) and current_query <> '<IDLE>';
Killer les requêtes qui ont démarré depuis plus d'une heure :
select pg_cancel_backend(procpid) from pg_stat_activity where query_start < (select current_timestamp - '1 hour'::interval) and current_query <> '<IDLE>';
Compter le nombre de ligne dans une table :
select count(*) from table;
Obtenir l'emplacement des data :
show data_directory;