Aller au contenu

lure

Membre
  • Compteur de contenus

    1
  • Inscrit(e) le

  • Dernière visite

Réputation sur la communauté

0 Neutre
  1. Pour moi ça marche trés bien, un peu compliqué, mais efficace et stable pour l'instant Cygwin PostgreSQL PostgreSQL existe essentiellement sous Linux. Un portage a été réalisé sous Windows. Il sagit de Cygwin PostgreSQL. Le fonctionnement est à peu près identique dans les deux environnements. 1.1 Installation de PostgreSQL 1.1.1 Téléchargement des packages Cygwin Sur le site de Cygwin à ladresse http://www.cygwin.com, en cliquant sur limage Install Cygwin now, on télécharge le fichier setup.exe dans un répertoire C:\cygwin_download. Ensuite, lorsque lon exécute ce setup.exe, une fenêtre souvre et on a trois possibilités : Install from Internet, Download from Internet, Install from Local Directory ; En choisissant la deuxième option, on téléchargera les packages par exemple dans le répertoire C:\cygwin_download. Plusieurs fenêtres vont successivement souvrir jusquau choix dun site de téléchargement. Puis on arrive sur une dernière fenêtre où lon va pouvoir sélectionner les packages. Lorsque lon clique sur la ligne dun package donné, on a le choix entre : le numéro de version, ce qui indique quil est sélectionné, source pour télécharger le source, skip (passer) ce qui indique quil nest pas sélectionné ; Si lon avait déjà téléchargé des packages, pour ceux-ci, on aurait eu : keep (garder) ce qui indique quon le garde, retrieve (rapporter) ce qui indique quon le supprime, source pour télécharger le source ; Voici la liste des packages à télécharger : ash bash bzip2 crypt cygrunsrv cygwin fileutils grep less libncurses6 ncurses libintl1 pcre postgresql readline sed sh-utils tar textutils 1.1.2 Installation des packages Cygwin On exécute à nouveau le fichier setup.exe mais cette fois-ci, on choisit dinstaller à partir du répertoire local tous les packages précédents. On fera cette installation dans C:\cygwin . On aura ainsi un raccourci sur le bureau ainsi quun menu pour accéder au Cygwin Bash Shell. 1.1.3 Téléchargement et installation de cygipc On va à ladresse suivante : http://www.neuro.gatech.edu/users/cwilson/...gipc/index.html La, on télécharge un fichier appelé cygipc, actuellement cygipc-1.11-1.tar.bz2 . On le place dans le répertoire C:\cygwin . On ouvre ensuite le Cygwin Bash Shell et on se place dans le répertoire racine de C:\cygwin en tapant deux fois de suite cd ... On le décompresse par la commande bunzip2 cygipc-1.11-1.tar.bz2. On obtient alors un fichier darchives que lon désarchive par tar -xvf cygipc-1.11-1.tar 1.2 Configuration de PostgreSQL On ouvre le Cygwin Bash Shell et on procède de la manière suivante : On lance le démon ipc en tapant ipc-daemon & On initialise PostgreSQL en tapant : initdb -D /usr/share/postgresql/data On démarre le serveur en tapant : postmaster -D /usr/share/postgresql/data -i & Il est à noter que loption -i doit être spécifiée pour accepter les connections TCP/IP. A la place de loption -i, on peut modifier le fichier de configuration postgresql.conf du répertoire data en remplaçant #tcpip_socket=false par tcpip_socket=true. On peut également démarrer le serveur en tapant : pg_ctl -D /usr/share/postgresql/data start On arrête le serveur en tapant : pg_ctl -D /usr/share/postgresql/data stop 1.3 Installation de PostgreSQL comme services NT Sous Windows NT, 2000 ou XP, on peut installer le serveur PostgreSQL comme service. En se connectant comme administrateur, il faut effectuer les tâches suivantes : Ajouter à la variable denvironnement système PATH le répertoire C:\cygwin\bin. Ceci est indispensable pour trouver la dll cygwin1.dll Installer le démon ipc-daemon comme service en tapant : ipc-daemon -install-as-service Créer un utilisateur postgres à laide du panneau de configuration ou en tapant : cmd /c lusrmgr.msc Puis définir le mot de passe : mkpasswd -l -u postgres >>/etc/passwd Donner à postgres le droit douvrir une session en tant que service à laide du panneau de configuration ou en tapant : cmd /c secpol.msc Rendre postgres propriétaire du répertoire data : chown postgres /usr/share/postgresql/data Installer le postmaster comme service : cygrunsrv -install postmaster -path /usr/bin/postmaster -args "-D /usr/share/postgresql/data -i" -dep ipc-daemon -termsig INT -user postgres -shutdown Démarrer le service ipc-daemon : net start ipc-daemon Démarrer le service postmaster : net start postmaster 1.4 Une première utilisation de PostgreSQL Dans la plupart des SGBD Relationnels, il y a un administrateur du serveur (DBA). Avec PostgreSQL sous Linux, il sagit de lutilisateur postgres. Sous ce compte, on peut créer et supprimer des bases de données et des utilisateurs. Avec PostgreSQL sous Windows, il sagit de celui qui a fait linstallation. Il existe aussi une notion de propriétaire (DBO) de base de données. Il peut créer et supprimer des tables et gérer les droits des utilisateurs sur cette base de données. Le DBO est bien sûr celui qui a créé la base de données. 1.4.1 Création et suppression dun utilisateur On peut utiliser la commande createuser, éventuellement avec loption -P qui permet de spécifier le mot de passe de lutilisateur. Voici un exemple des séquences obtenues : createuser etudiant is the new user allowed to create databases ? (y/n) y shall the new user be allowed to create more new users ? (y/n) n CREATE USER Pour supprimer un utilisateur, on utilise la commande dropuser 1.4.2 Création et suppression dune base de données On peut utiliser la commande createdb, éventuellement avec loption -U pour préciser le nom du propriétaire et loption -E pour lencodage. Exemple : createdb -E LATIN1 demo CREATE DATABASE Pour supprimer une base de données, onutilise la commande dropdb 1.4.3 Connexion à une base de données On utilise psql qui est un interpréteur en ligne de commandes. Par exemple, pour se connecter à la base demo, on tapera psql demo. Il y a deux types de commandes : les requêtes en langage SQL les commandes qui commencent par \ Voici quelques exemples. (On rappelle que lon sest connecté à demo par psql demo) : \l liste des bases de données du serveur \d liste des tables de la base de données (ici demo) \d nom_table liste des champs de la table nom_table \z liste des droits des utilisateurs sur les tables de la base \g nom_fichier indique que le résultat de la requête suivante sera sauvegardé dans le fichier nom_fichier \i req.sql exécute la ou les requêtes SQL enregistrées dans le fichier req.sql \q pour se déconnecter de la base de données 1.4.4 Sauvegarde et restauration dune base de données Pour sauvegarder une base de données dans un fichier darchives (.tar) : pg_dump -Ft nom_base > fichier.tar Pour restaurer une base de données à partir de larchive : pg_restore -d nom_base fichier.tar Remarque : si nom_base a été supprimée, il faut dabord la créer avant de la restaurer. 1.4.5 Gestion des droits des utilisateurs Pour gérer les droits des utilisateurs sur une base de données, on se connecte à celle-ci puis on utilise la commande SQL GRANT sur SELECT, INSERT, UPDATE, DELETE. Supposons que lon ait par exemple une table invites et un utilisateur etudiant. On pourrait avoir : GRANT SELECT ON invites TO etudiant ; Pour supprimer des droits, on utilise REVOKE. Remarque : pour gérer les droits, on a intérêt à créer des groupes (CREATE GROUP) puis y ajouter des utilisateurs. De cette manière, on accordera les droits au groupe, ce qui simplifie le travail. 1.5 pgAdmin II pgAdmin II est un outil particulièrement bien fait qui permet dadministrer PostgreSQL, de créer des bases, des tables, dinterroger, etc ... On peut même installer un plugin nommé pgmigration pour importer des bases Access et SQL Server par exemple. Cet outil se trouve à ladresse suivante : http://pgadmin.postgresql.org Il contient également la documentation sur PostgreSQL. 1.6 Jdbc Il existe bien sûr un driver jdbc. Cest un driver de type 4, compatible JDBC2.0. On le trouve à ladresse : http://jdbc.postgresql.org 1.7 Conclusion Cest un excellent produit. La documentation est très bien faite. Il mérite vraiment de sy attarder.
×
×
  • Créer...