Public
Chefs de projet, développeurs, administrateurs de bases de données et administrateurs des systèmes
Objectifs
Installer et administrer au quotidien les serveurs de base de données PostgreSQL.
Manipuler les données, gérer les bases et maîtriser les principales techniques et outils d'administration.
Programme
1. Présentation de PostgreSQL
-
Historique du projet
-
Présentation des projets et outils de la ferme de projets pgFoundry
-
Comparatif avec les autres moteurs SGBDR (avantages et inconvénients)
2. Installation
-
Les étapes d'installation
-
Les distributions Linux
-
Sur ma distribution Debian
-
Sur les distributions à base de RPM (RedHat, Fedora, Mandriva)
-
A partir des sources
-
Les binaires pour Microsoft Windows
-
Utilisation de l'assistant d'installation
-
Préparation du système d'exploitation
3. Initialisation et exécution d'une instance
-
Initialisation d'une instance
-
Arrêt et démarrage du serveur (commandes d'administration)
-
Architecture des processus du serveur (le Postmaster et les processus en arrière-plan)
-
Création d'instances supplémentaires
-
Les scripts installés par Debian
4. Connexions et outils d'administration
-
Sessions
-
Jeux de caractères
-
Coté serveur (pg_hba.conf)
-
Sécurité (SSL,...)
-
Droits d'accès
-
Gestion des rôles (utilisateurs et groupes)
-
Gratification et révocation des privilèges
-
Outils en ligne de commande et graphique
-
L'outil en ligne de commande : psql (shell SQL)
-
L'outil graphique : PgAdminIII
-
L'outil en ligne : phpPgAdmin.
-
Le gestionnaire de connexions : Pgpool
5. Définition des données
-
Création de schémas, tables, index, domaines, séquences
-
Les différents types de données, opérateurs et fonctions
6. Manipulation des données
-
Requêtes SQL
-
Lectures des données
-
Insertion et mise à Jour des données
-
Fonctionnement des transactions
-
Les niveaux d'isolations et les verrous
-
La recherche de texte : tsearch2
7. Pratiques de programmation pour l'administration
-
Coté serveur
-
Gestion des procédures stockées
-
Le langage PL/pgSQL
-
Le langage PL/Perl
-
Les extensions en C.
-
Les déclencheurs Coté client / Les applications Web en PHP
-
Les pilotes PostgreSQL et PDO
-
Les applications Web en Java
-
Pourquoi utiliser JNDI sur les serveurs d'applications
8. Administration au quotidien
-
Définition des fichiers
-
Arborescence des répertoires et des fichiers du serveur
-
Administration du serveur
-
Configuration
-
Les logs binaires
-
La mémoire
-
Le collecteur de statistiques
-
Les logs d'activités
-
Catalogue Système
-
Les vues et tables des informations du serveur
-
Sauvegardes et Restauration
-
Les sauvegardes avec pg_dump et pg_dumpall
-
Les restaurations avec pg_restore et psql
-
Les logs binaires : Write Ahead Logging (WAL)
9. Taches de maintenance et d'exploitation
-
L'analyse des requêtes avec Explain
-
L'analyse et le nettoyage des espaces de tables et d'index avec Vacuum
-
La reconstruction d'index avec Reindex
-
L'automatisation des taches de maintenance avec autovacuum
10. Optimisation
-
Quelles sont les informations utiles ?
-
Sur quels paramètres intervenir ?
-
Conseils sur la performance
Prérequis
Utilisation de bases de données