Introduction
PostgreSQL est un puissant système de base de données relationnelle objet open source. Il fonctionne sous tous les principaux systèmes d'exploitation, y compris Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS, Solaris, Tru64) et Windows OS.
Il fournit un moyen très efficace de travailler avec des bases de données sur PostgreSQL comme, créer une base de données, une table, modifier une base de données, exporter/importer une base de données, etc.
Installer PostgreSQL
1 . Accédez à la page de téléchargement du référentiel PostgreSQL :http://yum.postgresql.org/repopackages.php et ajoutez le référentiel PostgreSQL en fonction de l'architecture de votre serveur.
Pour CentOS 6.x 64 bits :
PostgreSQL 9.4 Release : rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm PostgreSQL 9.5 Release : rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-6-x86_64/pgdg-centos95-9.5-1.noarch.rpm
Pour CentOS 7 64 bits :
PostgreSQL 9.4 Release : rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm PostgreSQL 9.5 Release : rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-1.noarch.rpm
2. Mettez à jour la liste des référentiels à l'aide de la commande :
yum update
3. Installez postgresql avec la commande suivante :
For PostgreSQL 9.4: yum install postgresql94-server postgresql94-contrib
For PostgreSQL 9.5 yum install postgresql95-server postgresql95-contrib
4. Initialisez la base de données postgresql à l'aide de la commande suivante :
Sur les systèmes CentOS 6.x :
For PostgreSQL 9.4 service postgresql-9.4 initdb
For PostgreSQL 9.5 service postgresql-9.5 initdb
Sur les systèmes CentOS 7 :
For PostgreSQL 9.4 /usr/pgsql-9.4/bin/postgresql94-setup initdb
For PostgreSQL 9.5 /usr/pgsql-9.5/bin/postgresql95-setup initdb
5. Démarrez le service postgresql et faites-le démarrer automatiquement à chaque redémarrage.
Sur les systèmes CentOS 6.x :
For PostgreSQL 9.4 service postgresql-9.4 start chkconfig postgresql-9.4 on
For PostgreSQL 9.5 service postgresql-9.5 start chkconfig postgresql-9.5 on
Sur les systèmes CentOS 7 :
For PostgreSQL 9.4 systemctl start postgresql-9.4 systemctl enable postgresql-9.4
For PostgreSQL 9.5 systemctl start postgresql-9.5 systemctl enable postgresql-9.5
Accéder à l'invite de commande PostgreSQL
Le nom et l'utilisateur de la base de données par défaut sont « postgres ». Basculez vers l'utilisateur postgres pour effectuer des opérations liées à postgresql :
1. Connectez-vous à l'invite postgresql, entrez la commande :
su - postgres psql
2 . Définissez le mot de passe postgresSQL avec la commande suivante :
Sample Output: postgres=# \password postgres Enter new password: Enter it again: postgres=# \q
3 . Pour quitter l'invite posgresql, tapez \q suivi de quit pour revenir au terminal.
Créer un nouvel utilisateur et une nouvelle base de données
Par exemple, créons un nouvel utilisateur appelé "e2enetworks" avec le mot de passe "centos" et une base de données appelée "mydb"
Switch to postgres user: $ su - postgres
Create user e2enetworks: $ createuser e2enetworks
Create database: $ createdb mydb
Maintenant, connectez-vous à l'invite psql, définissez le mot de passe et accordez l'accès à la base de données mydb pour e2enetworks :
$ psql#
psql (9.4.0) Type "help" for help.postgres=# alter user e2enetworks with encrypted password 'centos'; ALTER ROLEpostgres=# grant all privileges on database mydb to e2enetworks; GRANT postgres=#
Gérer PostgreSQL avec phpPgAdmin
phpPgAdmin est un utilitaire d'administration Web écrit en PHP pour gérer PosgreSQL.
1.Entrez la commande suivante :
yum install epel-release yum update
2.Maintenant, installez phpPgAdmin, entrez la commande suivante :
yum install phpPgAdmin
Remarque : phpPgAdmin est sensible à la casse. Utilisez correctement les majuscules et les minuscules, comme indiqué dans la commande ci-dessus.
Par défaut, vous pouvez accéder à phppgadmin en utilisant http://localhost/phpPgAdmin depuis votre système local uniquement. Pour accéder aux systèmes distants, effectuez l'étape suivante indiquée ci-dessous.
3. Modifiez le fichier /etc/httpd/conf.d/phpPgAdmin.conf :
vim /etc/httpd/conf.d/phpPgAdmin.conf
Effectuez les modifications comme indiqué ci-dessous :
Alias /phpPgAdmin /usr/share/phpPgAdmin <Location /phpPgAdmin> <IfModule mod_authz_core.c> # Apache 2.4 Require all granted #Require host example.com </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Allow from all # Allow from .example.com </IfModule> </Location>
4 . Démarrer ou Redémarrer le service Apache :
On CentOS 6.x systems: service httpd start chkconfig httpd on
On CentOS 7 systems: systemctl enable httpd systemctl start httpd
Configurer phpPgAdmin :
1. Modifiez le fichier /etc/phpPgAdmin/config.inc.php et effectuez les modifications suivantes. La plupart de ces options sont explicites. Lisez-les attentivement pour savoir pourquoi vous modifiez ces valeurs.
vim /etc/phpPgAdmin/config.inc.php
Effectuez les modifications comme indiqué ci-dessous :
$conf['servers'][0]['host'] = 'localhost'; $conf['extra_login_security'] =false; $conf['owned_only'] =true;
2 . Enregistrez et fermez le fichier. Redémarrez le service postgresql et les services Apache.
Ouvrez maintenant votre navigateur et accédez à http://ip-address/phpPgAdmin
Vous verrez l'écran phpPgAdmin.