PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 08/12/2015 08:39:13

GhostSpirit
Membre

je veux installé postgresql sous linux et la base sous partition ntfs

Bonjour,

Dual boot Windows 7 Debian 8.2

Je voudrais installer  Postgresql sous Linux et mettre la base sur une partition ntfs

j'ai essayé ces  commandes :

/usr/lib/postgresql/9.4/bin/postgres -D '/media/Mes documents/GhostSpirit/BTS_SIO_2016/Exploitation des donnees/bdd'

postgres /usr/lib/postgresql/9.4/bin/initdb -D '/media/Mes documents/GhostSpirit/BTS_SIO_2016/Exploitation des donnees/bdd'


mais à chaque fois j'échoue quand je dois choisir l'utilisateur postgresql
Et pour cause, je n'arrive pas à changer les permissions du répertoire bdd qui est comme vous l'avez devinez sur une partion ntfs

Puisque vous nous accordez 3 souhaits à chaque nouvelle inscription
permettez messieurs, dames de vous dire mon premier voeu

c'est celui de pouvoir ouvrir et utiliser la même base de donnée que ce soit sous Linux ou sous Windows

Hors ligne

#2 08/12/2015 12:19:22

ruizsebastien
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Bonjour,

Quel est le message d'erreur exact ?
Utilisez vous samba ?
Debian est-il capable d'écrire dans du ntfs ? Sinon privilégier fat32.

Cordialement.


Cordialement,

Sébastien.

Hors ligne

#3 08/12/2015 13:22:30

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Bonjour ruizsebastien,

la premiere commande me retourne cette erreur

2015-12-08 12:11:45 CET [21358-2] FATAL:  le répertoire des données « /media/Mes documents/GhostSpirit/BTS_SIO_2016/Exploitation des donnees/bdd » a un mauvais propriétaire
2015-12-08 12:11:45 CET [21358-3] ASTUCE :  Le serveur doit être en cours d'exécution par l'utilisateur qui possède le  répertoire des données.

et la deuxième commande me retourne
Les fichiers de ce cluster appartiendront à l'utilisateur « postgres ».
Le processus serveur doit également lui appartenir.

L'instance sera initialisée avec la locale « fr_FR.UTF-8 ».
L'encodage par défaut des bases de données a été configuré en conséquence
avec « UTF8 ».
La configuration de la recherche plein texte a été initialisée à « french ».

Les sommes de contrôles des pages de données sont désactivées.

correction des droits sur le répertoire existant /media/Mes documents/GhostSpirit/BTS_SIO_2016/Exploitation des donnees/bdd... initdb : n'a pas pu modifier les droits du répertoire « /media/Mes documents/GhostSpirit/BTS_SIO_2016/Exploitation des donnees/bdd » : Opération non permise
postgres@DebianLvm:/home/spirit-debian$

En fait, je crois comprendre qu'il faut attribuer les droit de propriétés du repertoire à postgres, mais c'est impossible de changer les droits de propriété d'un répertoire sur une partition ntfs

J'ai installer samba il y a peu de temps pourquoi ?

oui, débian est capable d'ecrire sur une partiton NTFS

quel différence y a t-il entre le cluster et la base de données ?

Hors ligne

#4 08/12/2015 13:53:37

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Je pense avoir en partie résolu mon problème
j'ai utilisé la méthode du lien symbolique

cp repertoired'origine repertoirededestination
ln -s repertoire_destination repertoire_d-origine

maintenant il faut que j'essaye sous windows.

Hors ligne

#5 08/12/2015 14:30:00

ruizsebastien
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Un cluster est l'équivalent d'une instance.
Ensuite dans une instance/cluster il peut y avoir une ou plusieurs bases de données.
On est plus prêt du monde SQL server que de celui d'Oracle.

Pour le problème de droits et propriétaire sous windows, je ne sais pas.
Je ne connais pas trop samba mais je sais quon peut facilement gérer les problèmes de droits sur des partitions windows.


Cordialement,

Sébastien.

Hors ligne

#6 08/12/2015 15:02:10

rjuju
Administrateur

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Il n'est de toutes façons pas possible d'utiliser un même répertoire de données avec des binaires linux et des binaires windows. Dans le meilleur des cas vous aurez une erreur au démarrage, et dans le pire des cas des corruptions silentieuses

En ligne

#7 08/12/2015 15:19:39

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

salut rjuju,

un même répertoire de données avec des binaires linux et des binaires windows.
peux tu être plus précis ?

mon but étant d'utilisée une base de donnée postgresql sous les deux systems,
avec pgadmin3 (linux et windows)
Tu es sûr que ce n'est pas possible, j'ai du mal à y croire.

en générale les serveurs sont sous linux et les utilisateurs sous windows

je pends l'exemple d'un fichier doc
si j'écris un fichier doc sous windows avec word , je peux avec libreoffice y avoir access sous linux



@ruizsebastien
Je ne connais pas trop samba mais je sais quon peut facilement gérer les problèmes de droits sur des partitions windows.

je cherche, peut être pour rien d'ailleurs

Hors ligne

#8 08/12/2015 15:27:50

ruizsebastien
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Ce que dit rjuju a du sens :
tu dois choisir à quel endroit tu installes le moteur postgresql et la base de données (de préférence sur debian).
Ensuite sur ton windows tu installes pgadmin en tant que client.
Ainsi tu as accès depuis ton windows (mode client/serveur) et depuis ton debian (en local directement sur le serveur).


Cordialement,

Sébastien.

Hors ligne

#9 08/12/2015 15:47:26

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

@ruisebastien
tu dois choisir à quel endroit tu installes le moteur postgresql et la base de données (de préférence sur debian).
Ensuite sur ton windows tu installes pgadmin en tant que client.
Ainsi tu as accès depuis ton windows (mode client/serveur) et depuis ton debian (en local directement sur le serveur).

je commence à saisir...
j'ai un pc avec un dual boot, donc impossible de mettre en route en même temps debian et linux à la fois, c'est la raison pour laquelle je cherchais à mettre la base de donnée sur la partition windows, est d'installer le moteur postgresql version linux sur debian, et le moteur postgresql de windows sur windows... et ensuite utilisé pgadmin pour gérer la base de données crée.
mais si c'est pas possible, je vais pas insisté.

d'autant que j'ai  aussi un autre pc qui me sert de serveur de sauvegarde (avec postgresql d'installer dessus autant l'utiliser)

Entre le moteur, le cluster et la base de données j'en perds mon latin

vous auriez pas un lien avec un petit tuto pour se connecter à une base de données sur un serveur en ssh avec pgadmin, c'est mon deuxième voeu

Hors ligne

#10 08/12/2015 15:52:38

edlm
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Je pense que Julien faisait allusion au fait qu'une instance physique (le répertoire des données et tous les fichiers inclus) ne peut être servi que par un serveur de même plateforme et architecture que le binaire qui a initialisé la base de données (initdb -D xxxx).


Mais bien entendu le serveur peut répondre à n'importe quel type de client indépendamment de la plateforme ou architecture pour laquelle il a été compilé.


Bref, le binaire du serveur doit être compatible avec le binaire qui a créé le cluster/l'instance. Par contre, les accès à cette base n'ont pas cette contrainte car ils n'accèdent pas directement le cluster mais interagissent avec le serveur qui lui lis les données du cluster.


Éric

Hors ligne

#11 08/12/2015 16:10:58

rjuju
Administrateur

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Oui, désolé si ce n'était pas clair. Un client linux peut bien évidemment se connecter une base windows et inversement.

Par contre, le stockage physique des données est spécifique à l'architecture faisant tourner le serveur. Ainsi, démarrer une instance postgres initialisée à l'origine sous linux sur un windows ne peut pas fonctionner, comme le dis Éric.

Dans votre cas, il faut sait avoir 2 instances différentes (une linux et une windows), ou passer par un serveur tiers.

En ligne

#12 08/12/2015 16:12:59

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

edlm,

Merci

Hors ligne

#13 08/12/2015 16:21:24

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

@rjuju
Dans votre cas, il faut sait avoir 2 instances différentes (une linux et une windows), ou passer par un serveur tiers.

c'est justement ce que je veux faire, mais je ne sais pas comment le faire

j'ai installe postgresql avec apt-get et tout est installer dans /var/lib/...
quel(s) est ou sont les fichiers qui appartiennent à la base de données

Hors ligne

#14 08/12/2015 16:53:45

rjuju
Administrateur

Re : je veux installé postgresql sous linux et la base sous partition ntfs

Les fichiers appartenant à l'instance sont tous les fichiers présents dans /var/lib/postgresql/X.Y/main, ainsi que les fichiers dans /etc/postgresql/X.Y/main.

En ligne

#15 08/12/2015 18:02:22

edlm
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

@GhostSpirit vous ne pouvez pas en dual boot avoir un répertoire de données (cluster) qui a été initialisé sous Debian puis rebooter sous Windows et lancer le serveur PostgreSQL sur le même répertoire de données. Et inversement (initialisation sous Windows et servi sous Debian). Car, comme expliqué précédemment le format du cluster (les fichiers physiques qui constituent le cluster) n'est pas universel pour toutes les plateformes et architectures existantes.


D'où la notion de serveur tiers évoqué qui serait un 3ème ordinateur (physique ou virtuel) qui ferait office de serveur PostgreSQL d'un cluster de données initialisé et servi par cette 3ème machine. Les 2 1ères (Debian et Windows en dual boot sur le même ordi physique) accèderaient ce serveur avec des binaires qui leur sont propres (un jeu de binaires Windows pour Windows et un jeu de binaire Debian pour Debian): psql, pgadmin... n'importe quels clients qui "parlent" tous le même protocole et qui peuvent donc s'adresser au serveur PostgreSQL hébergé sur la 3ème machine (n'importe quel serveur hébergé sur n'importe quelle machine).


Est ce que c'est plus clair maintenant sur ce qui est faisable et ce qui ne l'est pas ?


Éric

Hors ligne

#16 09/12/2015 10:03:03

GhostSpirit
Membre

Re : je veux installé postgresql sous linux et la base sous partition ntfs

yes sad

Hors ligne

Pied de page des forums