Aller au contenu

serveur postgres sous windows


Sujets conseillés

Guest eruption
Posté

Bonjour à tous ;)

J'ai réalisé un applicatif sous linux (site intranet relié à une base de données postgres) qu'il faudrait que je bascule sous windows.

connaissez-vous un serveur de base de données qui soit l'équivalent de postgres sous windows?

Si vous pouviez me donner quelques adresses ou trucs et astuces !! :rolleyes:

Y-a -til un moyen de tout basculer d'un seul coup?

j'en doute !! mais je me risque tout de même à poser la question!! :whistling:

Merci d'avance à tous ceux qui m'aideront.

PS: j'espère ne pas m'être trompé de forum pour cette requête.

Posté

Malgré de nombreuses recherches, je n'ai jamais trouvé de serveur postgress qui tourne sous Windows (je pense que la phase de portage est toujours en cours).

Le mieux (et le moins cher) est d'utiliser mysql je pense (même si ses fonctionnalités sont moins développées et que mysql est réputé moins robuste).

Par contre, je ne sais pas comment exporter tes données d'une base à l'autre.

Bon courage (et j'espére que d'autres membres pourront t'apporter de plus ample précisions).

Tizel

Posté

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.

  • 1 month later...
Posté

Bonjour,

Pour ma part, j'ai trouvé ceci :

Dans cette page :

http://techdocs.postgresql.org/guides/Windows

Il y a un lien pour postgres sous windows :

Je vous cut/paste le texte :

-------------------------------------------------------------------

UltraSQL by PeerDirect

PeerDirect (http://www.peerdirect.com) released to the public their last beta test version of their native Windows version of PostgreSQL, called UltraSQL. Some members of the PostgreSQL Community have been testing this and the performance from it is reported to be 2 to 3 times the throughput of the Cygwin version in most cases. Of course, you'd need to test this yourself though. Their latest beta release of this native version of PostgreSQL for windows is available here:

ftp://209.61.187.152/postgres/postgres_beta4.zip

It is based upon PostgreSQL 7.2, an older release, and they appear to have dropped any plans to finish its development.

With step by step installation instructions available here:

http://techdocs.postgresql.org/guides/InstallingOnWindows

---------------------------------------------------------------------------

C'est pas un postgres de toute première jeunesse, mais bon je l'ai installé et celà semble fonctionner ....

J'espère que ceci sera utile !

Jed

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...