Installation de PostgreSQL
Un article de Diablotins.org.
|
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';
