Tutoriel pour installer PostgreSQL et pgacces sous Mandrake et paramétrer les logiciels pour qu'ils fonctionnent ensemble
Rapide introduction
Ce tutoriel est spécialement rédigé par un débutant pour des débutants sous Mandrake. Il ne se veut absolument pas exhaustif des méthodes d'installation et de configuration de PostgreSQL et de pgaccess. En effet, de très bons articles sont déjà présents sur Internet mais nécessitent des connaissances avancées en informatique qu'un débutant avec Linux, comme moi, ne comprend pas toujours.
Compétence requise
Nous allons avoir besoin de modifier un fichier texte appartenant à d'autres utilisateurs (au super-utilisateur root par exemple) et il faut savoir le faire sans relancer la session graphique en cours, directement à la console.
Pour cela, nous allons utiliser l'éditeur vi qui est généralement installé par défaut sur Mandrake. Il se lance dans une console en écrivant en ligne de commandes :
vi fichier
vi peut sembler repoussant à la première utilisation pour un débutant, mais c'est un éditeur très convivial. Pour le prendre en main, un tutoriel existe. Il nécessite d'installer vim. Suivez-le et en deux minutes vous en saurez assez pour réaliser ce que nous vous proposons. Le tutoriel se lance en marquant en ligne de commande :
vim tutor
Le début vous apprend à supprimer et à insérer des caractères dans le texte. Vous pouvez continuer mais pensez bien que cette compétence vous sera acquise à jamais !
Installation des logiciels
Installation de PostgreSQL
En guise d'installation, nous n'allons pas faire compliqué (nous sommes débutants, souvenez-vous). Nous installons toutes les archives RPM contenues dans les CD Mandrake comportant le mot postgresql. Mais, les deux paquetages suivants devraient suffire :
- postgresql-7.3.4-2mdk,
- postgresql-server-7.3.4-2mdk.
Les numéros de versions auront peut-être changé à l'heure où vous lirez ces lignes.
Attribuons-nous tout de suite le droit d'utiliser PostgreSQL en créant un utilisateur à notre nom (disons MonNom). Voici les commandes à lancer :
su
su postgres
createuser MonNom</code>
Attention, bien qu'il soit tout à fait possible de créer un utilisateur dont le nom comprend des majuscules, cela n'est pas conseillé. En effet, le serveur PostgreSQL fait une distinction très particulière entre minuscules et majuscules. La commande drop user monnom ne fonctionnera pas plus que la commande drop user MonNom si vous avez précédemment créé l'utilisateur MonNom. Il faudra lancer la commande drop user "MonNom" (c'est-à-dire que le nom doit être entre guillemets si celui-ci comporte des majuscules). Nous utilisons ici des majuscules pour faciliter la lecture.
Cet utilitaire vous demandera tout d'abord si le nouvel utilisateur a le droit de créer des bases de données. Répondez y (pour yes, oui), cela vous permettra de créer autant de bases de données que vous le souhaitez. La deuxième, et dernière question, concerne le droit de création des utilisateurs. Il est préférable de répondre non à cette question pour des raisons de sécurité mais quelle que soit votre réponse, elle n'influera pas sur la suite de ce tutoriel.
Installation de pgaccess
Pgaccess ne nécessite pas vraiment d'installation, étonnant n'est-ce pas ! Voici où le télécharger. Pour un débutant, prendre le fichier nommé Hardcore (gzipped source tarball) car il ne nécessite aucune compilation.
Une fois l'archive téléchargée, décompressez-la où vous voulez. Vous y trouverez le fichier pgaccess.tcl qu'il suffit de lancer pour accéder à pgaccess. Voici comment faire :
sh pgaccess.tcl
Si vous utilisez l'interface KDE, vous pouvez mettre tout simplement un raccourci vers pgaccess.tcl dans le tableau de bord (par glisser-déposer). C'est bien plus pratique.
Paramétrage des logiciels
Nous sommes pratiquement prêt à utiliser PostgreSQL et pgaccess. Mais, des petites modifications sont nécessaires dans les fichiers pg_hba.conf et postgresql.conf. C'est maintenant que la compétence du début va nous servir.
Ouvrons une console (par exemple, avec l'application Konsole) et connectons-nous en tant qu'utilisateur root :
su
Créons un mot de passe pour l'utilisateur postgres (je suppose que vous ne l'avez pas encore fait) :
passwd postgres
Connectons-nous maintenant en tant qu'utilisateur postgres (c'est très important, il ne faut surtout pas être l'utilisateur root pour effectuer la suite).
su - postgres
Aucun mot de passe ne vous est demandé. En effet, comme nous sommes l'utilisateur root, nous sommes administrateur et cet état nous affanchit du besoin du mot de passe.
Allons maintenant dans le répertoire où se trouvent les fichiers à modifier.
cd /var/lib/pgsql/data
Commençons par pg_hba.conf :
vi pg_hba.conf
Le fichier est composé en deux parties. Celle du haut explique dans la langue de Shakespeare l'utilité de ce fichier et la façon de l'utiliser. Vous pouvez la lire mais, pour ce qui nous concerne, la fin du fichier nous intéresse, nous avons besoin de supprimer le caractère # en début de ligne, ce symbole étant un caractère de commentaire, pour les trois lignes en bas du fichier, certainement les trois dernières lignes.
local all all trust
host all all 127.0.0.1 255.255.255.255 trust
Using sockets credentials for improved security. Not available everywhere,
but works on Linux, *BSD (and probably some others)
local all all ident sameuser</code>
Ces lignes deviennent :
local all all trust
host all all 127.0.0.1 255.255.255.255 trust
Using sockets credentials for improved security. Not available everywhere,
but works on Linux, *BSD (and probably some others)
local all all ident sameuser</code>
Cela fait, on sauvegarde le fichier avec la commande :wq et on passe au suivant avec la commande :
vi postgresql.conf
Deux lignes dans le haut du fichier doivent subir le même sort, à savoir supprimer le caractère # en début de ligne. Plus exactement, elles se trouvent dans la partie Connection Parameters, ces lignes sont tcpip_socket = true et port = 5432. Voici en détail ce que ça donne :
# Connection Parameters
#tcpip_socket = true
#ssl = false
#max_connections = 32
#superuser_reserved_connections = 2
#port = 5432</code>
qui devient :
# Connection Parameters
#
tcpip_socket = true
#ssl = false
#max_connections = 32
#superuser_reserved_connections = 2
port = 5432</code>
Cela étant fait, enregistrons le fichier (là-encore, commande :wq).
Voilà voilà, c'est fini ! Testons PostgreSQL pour voir si cela fonctionne bien.
Commençons par quitter la connexion de l'utilisateur postgres en tapant la commande :
exit
Pour utiliser PostgreSQL, je vous renvoie pour le moment vers le tutoriel complet du manuel de la version 7.4.
Des liens utiles
Et pour finir, les inévitables listes de discussion où vous trouverez la liste française pour pouvoir poser vos questions ou faire des remarques sur cet article.

