Installation de PostgreSQL

Un article de Diablotins.org.


Image:brush.png

Sommaire

Installation de PostgreSQL

Présentation

PostgreSQl est un SGBD relationnel intégralement compatible SQL92. Il reprend les fonctionnalités de Oracle et comme lui, contient des procedures stockés en PL/SQL, des transactions, une structuration objet, des ACL, mais en plus il permet des langages procéduraux tel que Perl et Ruby.

Installation du ports

PostgreSQL s'installe via le système de ports de FreeBSD par les commandes :

  $ su -

ou

  $ sudo - s

puis

  # portinstall postgresql72

ou

  # cd /usr/ports/databases/postgresql72
  # make install && make clean


La version 7.3 de PostgreSQL peut s'installer via le port : postgresql-devel.

Initialisation de la Base Template1

Pour que PostgreSQL puisse fonctionner, il faut initialiser une première base de donnĂ©es Template0 comme ombre et sa première base hĂ©ritĂ©e : Template1. Ces bases servirons Ă  initialiser et crĂ©er les autres bases par hĂ©ritage dans le sens et la dĂ©finition objet du terme.
On rĂ©alise cette initialisation par :

  $ sudo -s
  # sudo -u pgsql initdb -D '/usr/local/pgsql/data'

ou

  $ su -
  # su pgsql
  $ initdb -D '/usr/local/pgsql/data'

puis

  # /usr/local/etc/rc.d/010.pgsql.sh start

On peut tester l'initialisation via :

  # sudo -u pgsql psql template1

Lancement de PostgreSQL

On lance PostgreSQL via le script Rc :

  $ su -

ou

  $ sudo bash

puis

  # /usr/local/etc/rc.d/010.pgsql.sh start

Il s'arrĂŞte donc par :

  # /usr/local/etc/rc.d/010.pgsql.sh stop

Configuration de postgresql.conf

Le fichier de configuration de PostgreSQL est : /usr/local/pgsql/data/postgresql.conf.

On vĂ©rifie les lignes suivantes :

  # vi /usr/local/pgsql/data/postgresql.conf
  --
  [...]
  tcpip_socket = true
  port = 5432
  [...]

Ces lignes servent à permettre l'accès réseaux au serveur.

Configuration de pg_hba.conf

Le fichier /usr/local/pgsql/data/pg_hba.conf sert Ă  limiter les accès user/host et leur authentification sur le serveur PostgreSQL, bien-sĂ»r, ici la configuration dĂ©pend de votre topologie, mais si on on considèrent votre rĂ©seau RFC 1918 192.168.1.0/24 ou chaque machine doit pouvoir s'authentifier sur le serveur par mot de passe cryptĂ©, et un accès sans mot de passe en local, on aura les lignes :

  # vi /usr/local/pgsql/data/pg_hba.conf
  --
  [...]
  local all all trust
  host all all 192.168.1.0 255.255.255.0 crypt
  host all all 127.0.0.1 255.255.255.255 trust
  [...]

Création de la permière base et du premier utilisateur

On se connecte sur la base Template1, on crĂ©e la base et on crĂ©e un user correspondant Ă  votre utilisateur UNIX :

  # sudo -u pgsql psql template1
  > CREATE DATABASE MABASE;
  > CREATE USER lecid WITH PASSWORD 'monpass' CREATEDB CREATEUSER VALID UNTIL 'infinity';
Projets :
Boîte à outils