GNU/Linux >> Tutoriels Linux >  >> OpenSuse

Comment installer PostgreSQL et phpPgAdmin sur OpenSUSE Leap 42.1

PostgreSQL (la plupart des gens l'appellent Postgres) est un système avancé de gestion de base de données relationnelle objet (ORDBMS). Postgres est un serveur de base de données open source avec plus de 18 ans de développement actif, ce qui fait de Postgres le meilleur choix pour les applications d'entreprise.

Postgresql est multiplateforme et fonctionne sur de nombreux systèmes d'exploitation comme Linux, OSX, Windows et la famille BSD. C'est le bon choix lorsque vous avez une application avec de grandes charges de travail de base de données. Postgres a été utilisé par de nombreuses grandes organisations, notamment Yahoo, Instagram et Disqus. Postgres est également proposé en tant que logiciel en tant que service (SaaS) par ex. Heroku et AWS (Amazon Web Services).

Dans ce tutoriel, je vais vous montrer comment installer Postgres sur votre propre serveur avec OpenSUSE Leap comme système d'exploitation. Ensuite, j'installerai phpPgAdmin afin que nous puissions gérer notre base de données Postgres à partir du navigateur Web.

Prérequis

  • OpenSUSE Leap 42.1
  • Privilèges root

Étape 1 - Installer PostgreSQL

Le référentiel openSUSE contient deux versions de Postgres. Dans cette étape, nous allons installer PostgreSQL 9.4 sur openSUSE avec la commande zypper.

Installez PostgreSQL avec zypper :

zypper in postgresql94 postgresql94-contrib postgresql94-server

Démarrez postgresql avec systemctl :

systemctl start postgresql

Étape 2 - Configurer l'utilisateur par défaut

Dans cette étape, nous allons définir un mot de passe pour l'utilisateur postgres. Postgresql utilise un concept similaire au système utilisateur Linux appelé "rôle" pour l'authentification et l'autorisation de base. Par défaut, postgresql crée un nouvel utilisateur nommé "postgres" pour gérer le serveur postgresql.

Commençons par la configuration de la base de données postgresql en nous connectant à l'utilisateur postgres depuis le terminal :

sudo su
su - postgres

Nous allons maintenant utiliser la commande psql. psql est l'interface de ligne de commande pour PostgreSQL, nous pouvons directement exécuter des requêtes PostgreSQL à partir de celui-ci.

psql

Depuis le shell psql, nous pouvons changer le mot de passe de l'utilisateur "postgres" avec la commande "password" ci-dessous :

\password postgres
New Password:

Entrez votre nouveau mot de passe pour l'utilisateur postgres.

Étape 3 - Créer un nouvel utilisateur PostgreSQL

Dans cette étape, nous allons créer un nouvel utilisateur/rôle avec des privilèges de superutilisateur et créer une nouvelle base de données et accorder l'accès à l'utilisateur.

Pour créer un nouvel utilisateur, nous devons nous connecter en tant qu'utilisateur postgres, puis créer un nouveau rôle et une nouvelle base de données avec la commande ci-dessous :

su - postgres
createuser -s nano
createdb nano_db

Remarque :

L'option -s est utilisée pour donner au nouvel utilisateur des privilèges de superutilisateur.

nano est le nouveau nom d'utilisateur.

nano_db est le nouveau nom de la base de données.

Connectez-vous maintenant au shell postgresql psql et donnez à notre nouveau rôle un mot de passe et accordez l'accès à la base de données.

psql
alter user nano with encrypted password '[email protected]';
grant all privileges on database nano_db to nano;

J'utiliserai ici le mot de passe "[email protected]" pour l'utilisateur nano et j'accorderai les privilèges à la base de données nano_db.

Cet utilisateur sera utilisé pour se connecter à postgresql à partir de l'interface Web phpPgAdmin, car nous ne devons autoriser aucun utilisateur par défaut ou utilisateur sans mot de passe à se connecter à postgresql à partir de phpPgAdmin.

Étape 4 - Configurer PostgreSQL

Dans cette étape, nous allons configurer PostgreSQL pour qu'il écoute sur l'adresse IP publique afin que nous puissions y accéder à distance avec des outils de modélisation de base de données depuis notre ordinateur de bureau. Vous pouvez ignorer cette étape si vous ne souhaitez pas accéder à Postgres à distance.

Allez dans le répertoire postgresql "/var/lib/pgsql/" et éditez le fichier de configuration principal "postgresql.conf" avec votre éditeur préféré :

cd /var/lib/pgsql/
cd data/
vim postgresql.conf

Décommentez la ligne 59 et changez la valeur de localhost en "*".

Décommentez la ligne 63 pour configurer le port par défaut.

listen_addresses = '*'
port = 5432

Enregistrez le fichier et quittez l'éditeur.

Pour autoriser l'accès depuis l'application Web phpPgAdmin à la base de données PostgreSQL, nous devons éditer le fichier pg_hba.conf et modifier certains paramètres de configuration.

Editez le fichier "pg_hba.conf" avec vim :

vim pg_hba.conf

En fin de ligne, changez la configuration de l'authentification en md5 :

#TYPE   Database    User    Address     Method
local   all             all                                     md5
host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5

Si vous souhaitez autoriser de nouvelles connexions depuis l'extérieur du serveur comme l'utilisation de PgAdmin3, vous pouvez ajouter plus d'enregistrements "hôte", par ex. pour l'IP de votre bureau.

Enregistrez et quittez.

Redémarrez maintenant le service PostgreSQL avec la commande systemctl :

systemctl restart postgresql

Étape 5 - Installer et configurer phpPgAdmin

phpPgAdmin est une application Web pour gérer les bases de données PostgreSQL. Il est basé sur PHP et fournit une interface graphique pour gérer les bases de données et créer des rôles. Dans cette étape, nous allons installer phpPgAdmin et comme il est accessible depuis le navigateur Web, nous utiliserons apache2 comme serveur Web.

Installez phpPgAdmin avec cette commande zypper :

zypper in phpPgAdmin

La commande installera automatiquement les dépendances PHP et serveur web apache.

Ensuite, allez dans le répertoire phpPgAdmin et modifiez le fichier de configuration config.inc.php.

cd /etc/phpPgAdmin/
vim config.inc.php

Dans la ligne 18 de la configuration de l'hôte, définissez la valeur sur "localhost".

$conf['servers'][0]['host'] = 'localhost';

Si vous souhaitez autoriser un utilisateur portant le nom "postgres" ou "root" à se connecter à postgresql avec phpPgAdmin, vous pouvez définir la sécurité supplémentaire sur false, mais il n'est pas recommandé de la définir sur false. vérifiez la ligne 93.

$conf['extra_login_security'] = true;

Enregistrez et quittez.

Activez ensuite le PHP et l'extension de version dans apache car ils sont nécessaires à phpPgAdmin :

a2enmod php5
a2enmod version

Redémarrez maintenant tous les services avec la commande systemctl :

systemctl restart postgresql
systemctl restart apache2

Étape 6 - Tester

Accédez à phpPgAdmin depuis le navigateur Web avec l'URL :

http://192.168.1.101/phpPgAdmin/

Connectez-vous avec l'utilisateur nano et le mot de passe "[email protected]".

si vous vous connectez avec l'utilisateur 'postgres' et le mot de passe correct, cela n'est pas autorisé.


OpenSuse
  1. Comment installer et configurer Postgres 13 Ubuntu 20.04

  2. Comment installer et configurer Postgres 14 sur Debian 11

  3. Comment installer et configurer Postgres 14 sur OpenSUSE Leap 15.3

  4. Comment installer Mongodb 5 dans Opensuse Leap 15.3

  5. Comment installer et configurer Nginx en tant que proxy OpenSUSE Leap 15.3

Comment installer et configurer KVM sur OpenSUSE Leap 15

Comment installer et configurer OpenVPN sur OpenSUSE Leap 42.1

Comment installer PostgreSQL et phpPgAdmin sur Ubuntu 16.04

Comment installer PostgreSQL et phpPgAdmin sur Ubuntu 18.04 LTS

Comment installer PostgreSQL et phpPgAdmin sur Fedora 34

Comment installer Dropbox sur openSUSE Leap 42.2