PostgreSQL (simplement connu sous le nom de Postgres) est un système de gestion de base de données relationnelle objet (ORDBMS), disponible pour de nombreuses plates-formes, notamment Linux, Microsoft Windows, FreeBSD, HP-UX, AIX, Solaris et Mac OS.
PostgreSQL est publié sous la licence PostgreSQL, une licence logicielle permissive libre et open source, développée par le PGDG (PostgreSQL Global Development Group), un groupe de volontaires individuels et d'entreprises.
Dans cet article, nous allons passer en revue l'installation de PostgreSQL 11 / 10 sur Debian 9/Debian 8.
Ajouter un référentiel PostgreSQL
PostgreSQL publie des packages deb pour les plates-formes basées sur Debian, et leurs packages sont plus récents que ceux disponibles dans le référentiel de base du système d'exploitation.
Importez la clé de signature PostgreSQL.
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O- | sudo apt-key ajouter -
Ajoutez les informations du référentiel PostgreSQL à /etc/apt/sources.list.d/postgresql.list fichier.
### Debian 9 ### echo "deb http://apt.postgresql.org/pub/repos/apt/stretch-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list### Debian 8 ### echo "deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list
Installer PostgreSQL
Une fois que vous avez ajouté le référentiel PostgreSQL, exécutez la commande suivante pour mettre à jour l'index du référentiel.
sudo apt-get update
Installez PostgreSQL à l'aide de la commande apt-get.
### PostgreSQL 11 ### sudo apt install -y postgresql-11### PostgreSQL 10 ### sudo apt install -y postgresql-10
Contrôler le service PostgreSQL
Pour démarrer le service PostgreSQL, exécutez :
sudo systemctl démarrer postgresql
Pour arrêter le service PostgreSQL, exécutez :
sudo systemctl stop postgresql
Pour redémarrer le service PostgreSQL, exécutez :
sudo systemctl redémarrer postgresql
Pour vérifier l'état du service PostgreSQL, exécutez :
sudo systemctl statut postgresql
Sortie :
● postgresql.service - SGBDR PostgreSQL chargé :chargé (/lib/systemd/system/postgresql.service ; activé ; préréglage fournisseur :activé) Actif :actif (quitté) depuis Sam 2019-02-23 01:49:54 EST; Il y a 23 s PID principal :2586 (code=exited, status=0/SUCCESS) CGroup :/system.slice/postgresql.serviceFeb 23 01:49:54 server systemd[1] :Starting PostgreSQL RDBMS...Feb 23 01:49 :54 server systemd[1] :Démarrage du SGBDR PostgreSQL.
Configurer le serveur PostgreSQL
PostgreSQL écoute uniquement sur l'adaptateur de bouclage (127.0.0.1) . Parfois, l'application hébergée sur externe peut avoir besoin de se connecter à la base de données. Pour cela, nous devons configurer PostgreSQL pour écouter sur tous les adaptateurs.
### PostgreSQL 11 ### sudo nano /etc/postgresql/11/main/postgresql.conf### PostgreSQL 10 ### sudo nano /etc/postgresql/10/main/postgresql.conf
Définissez les listen_addresses
à *
ou <IPAddress>
.
listen_addresses ='* '
Redémarrez le service PostgreSQL.
sudo systemctl redémarrer postgresql
Confirmer l'écoute de PostgreSQL sur le port 5432 en utilisant la commande netstat.
sudo netstat -antup | grep 5432
Sortie :
tcp 0 0 0.0.0.0:5432 0.0.0.0:* ÉCOUTEZ 3712/postgrestcp6 0 0 :::5432 :::* ÉCOUTEZ 3712/postgres
LIRE :commande netstat introuvable sur Ubuntu – Quick Fix
Accéder à PostgreSQL
Pour gérer la base de données, vous devez vous connecter en tant qu'utilisateur postgres.
sudo su -l postgres
Accéder à la base de données en utilisant le psql commande. C'est un shell interactif pour travailler avec la base de données PostgreSQL .
psql
Sortie :
postgres@serveur :~$ psql psql (11.2 (Debian 11.2-1.pgdg90+1))Tapez "help" pour help.postgres=#
Base de données PostgreSQL sécurisée
Nous allons définir un mot de passe pour l'utilisateur Linux (postgres) ainsi que administrateur DB (postgres) .
Définir le mot de passe pour l'utilisateur Linux (postgres) :
sudo passwd postgres
Sortie :
raj@mydebian :~$ sudo passwd postgresEntrez le nouveau mot de passe UNIX :retapez le nouveau mot de passe UNIX :passwd :le mot de passe a été mis à jour avec succès
Définir le mot de passe pour l'administrateur de la base de données (postgres) :
su - postgrespsql
Sur le shell psql , exécutez la commande ci-dessous pour modifier le mot de passe de l'administrateur de la base de données.
postgres=# \password
OU
postgres=# \password postgres
Sortie :
postgres=# \password postgresEntrez le nouveau mot de passe :Entrez-le à nouveau :
Commandes de base de données PostgreSQL
La syntaxe pour créer une base de données est :
$ su - test postgres$ crééb
La syntaxe pour créer un utilisateur (raj) est :
$ psql testtest=# CRÉER UN UTILISATEUR raj AVEC LE MOT DE PASSE DE CONNEXION SUPERUTILISATEUR 'password' ;
Vérifiez si le nouvel utilisateur a été créé ou non.
test=# \du
Sortie :
test=# \du Liste des rôles Nom du rôle | Attributs | Membre de-----------+-------------------------------------------------- ------------------------+----------- postgres | Superutilisateur, Créer un rôle, Créer une base de données, Réplication, Contourner RLS | {} raj | Superutilisateur | {}Connectez-vous avec l'utilisateur "raj".
psql -h localhost -d test -U rajSortie :
psql (11.2 (Debian 11.2-1.pgdg90+1))Connexion SSL (protocole :TLSv1.2, chiffrement :ECDHE-RSA-AES256-GCM-SHA384, bits :256, compression :désactivée)Tapez "help" pour help.test=#La syntaxe pour lister les bases de données :
test=# \lSortie :
test=# \l Liste des bases de données Nom | Propriétaire | Encodage | Assembler | Ctype | Privilèges d'accès-----------+----------+----------+-------------+ -------------+----------------------- postgres | postgres | UTF8 | fr_US.UTF-8 | fr_US.UTF-8 | modèle0 | postgres | UTF8 | fr_US.UTF-8 | fr_US.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | fr_US.UTF-8 | fr_US.UTF-8 | =c/postgres + | | | | | postgres=CTc/test postgres | postgres | UTF8 | fr_US.UTF-8 | fr_US.UTF-8 |(4 lignes)C'est tout. Vous avez installé avec succès PostgreSQL 11 / 10 sur Debian 9 / Debian 8.