Vous n'êtes pas identifié(e).
Bonjour,
Étant totalement débutant et nouveau sur votre site, j'aurais voulu poser une question concernant l'absence d'un tuto, car j'ai installé postgresql sous Fedora 29....
Je fais référence à la documentation de votre site, dans laquelle on invite le lecteur à lire un tuto...au chapitre 2.1
du lien suivant : https://docs.postgresql.fr/10/tutorial-sql.html
En outre, je suis surpris de ne pas voir de moteur de recherche sur votre forum.
Comment éviter les questions redondantes ? => il y a énormément de discutions...
Cordialement,
Dernière modification par joshw (12/12/2018 13:57:54)
Hors ligne
Pas sûr de comprendre la question sur le tutoriel. Le tutoriel est le chapitre 2 de la documentation.
Et concernant la recherche, il y a https://forums.postgresql.fr/search.php
Guillaume.
Hors ligne
Bonjour,
Merci pour votre réponse ! En fait, la documentation (le lien http du post 1) propose de suivre (au ch 2.1) un tuto qui par défaut est présent dans le répertoire d'installation.
Hors, j'ai fait l'installation via Fedora et non les sources du site officielle. Du coup le tuto mentionné au chapitre 2.1 est absent sur ma machine. J'aurais donc voulu me le procurer.
Bon évidemment, ce n'est pas le bon endroit pour poser cette question.
Merci pour votre lien, j'aurai plus facile à voir si quelqu'un à déjà poser cette question.
En même temps, je n'avais pas vu le lien "recherche", désolé.
Cordialement,
Hors ligne
Pour vous le procurer, il faut récupérer les sources. Ce qu'il faut bien voir, c'est que le site officiel ne fournit que les sources de PostgreSQL, donc la documentation ne parle que de ça. Pas des paquets précompilés proposés par certaines personnes ou sociétés.
Guillaume.
Hors ligne
Bonjour,
Pour info, j'ai trouvé les sources sur votre site. Il y a apparemment 2 formats :
1 => bz2
2 => gz
Apparemment, ils contiennent tous les deux les mêmes fichiers ? sources
Le répertoire d'installation étant différent, j'imagine que le mieux est de copié les sources dedans et qu'ensuite je suive les instructions de la documentation
[root@localhost ~]# cd /var/lib/pgsql/data
[root@localhost data]# ls
base pg_hba.conf.backup pg_serial PG_VERSION
current_logfiles pg_ident.conf pg_snapshots pg_wal
global pg_log pg_stat pg_xact
log pg_logical pg_stat_tmp postgresql.auto.conf
pg_commit_ts pg_multixact pg_subtrans postgresql.conf
pg_dynshmem pg_notify pg_tblspc postmaster.opts
pg_hba.conf pg_replslot pg_twophase postmaster.pid
Voici la procédure qui m'a permis d'installer postgresql : Installation de postgresql sous Fedora
Dernière modification par joshw (04/12/2018 17:48:53)
Hors ligne
Oui, ils contiennent les mêmes fichiers. Seul le format de compression change.
Je ne suis pas sûr d'avoir compris où vous voulez extraire les fichiers. Une chose est sûre : surtout pas dans le répertoire des données de PostgreSQL !
Guillaume.
Hors ligne
Oui, je me disais aussi à l'instant, car ce répertoire n'est accessible qu'au "super utilisateur" (sudo) et "postgres".
Que pensez-vous si je copiais
/src/tutorial
dans un répertoire "exercices" ?
[postgres@localhost ~]$ pwd
/var/lib/pgsql
[postgres@localhost ~]$ ls
backups data initdb_postgresql.log
[postgres@localhost ~]$ mkdir exercices
[postgres@localhost ~]$ ls
backups data exercices initdb_postgresql.log
Car, pour lancer :
psql
je dois me logger en "postgres" qui par défaut se trouve dans :
[postgres@localhost ~]$ pwd
/var/lib/pgsql
Dernière modification par joshw (04/12/2018 19:11:36)
Hors ligne
Oui, vous pouvez. Mais clairement, ce n'est pas nécessaire. Il vous suffit de modifier le fichier pg_hba.conf pour pouvoir vous connecter de votre compte. Commencez par lire la configuration du serveur pour l'authentification (https://docs.postgresql.fr/10/client-au … ation.html).
Guillaume.
Hors ligne
Bonsoir,
Voici la config du pg_hba.conf :
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all md5
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
J'ai essayé de compiler comme c'est demandé au chapitre 2.1 de la documentation
[toto@localhost Postgresql_10_6]$ ls
aclocal.m4 configure contrib doc HISTORY Makefile src
config configure.in COPYRIGHT GNUmakefile.in INSTALL README
[toto@localhost Postgresql_10_6]$ cd src/tutorial/
[toto@localhost tutorial]$ ls
advanced.source complex.c funcs.c funcs.source README
basics.source complex.source funcs_new.c Makefile syscat.source
[toto@localhost tutorial]$ make
make: pg_config: Command not found
make: *** Pas de cible. Arrêt.
mais le script s'arrête, car il ne trouve pas le fichier "pg_config" (que je ne vois pas non plus dans les sources téléchargées)
Avez-vous déjà rencontrer ce cas ?
Pour info "toto" est dans le groupe "sudo", ainsi qu'ajouté via "psql" comme utilisateur pouvant créer des DB.
Dernière modification par joshw (05/12/2018 19:03:22)
Hors ligne
Bonsoir,
Pour info, j'ai trouvé ça :
root@localhost src]# find / -name pg_conf*
find: ‘/run/user/1000/gvfs’: Permission denied
/home/toto/Documents/Postgresql_10_6/src/backend/utils/misc/pg_config.c
/home/toto/Documents/Postgresql_10_6/src/bin/pg_config
/home/toto/Documents/Postgresql_10_6/src/bin/pg_config/pg_config.c
/home/toto/Documents/Postgresql_10_6/src/include/pg_config_manual.h
/home/toto/Documents/Postgresql_10_6/src/include/pg_config_ext.h.in
/home/toto/Documents/Postgresql_10_6/src/include/pg_config.h.win32
/home/toto/Documents/Postgresql_10_6/src/include/pg_config_ext.h.win32
/home/toto/Documents/Postgresql_10_6/src/include/pg_config.h.in
/home/toto/Documents/Postgresql_10_6/doc/src/sgml/ref/pg_config-ref.sgml
/home/toto/Documents/Postgresql_10_6/doc/src/sgml/man1/pg_config.1
/var/lib/pgsql/src/include/pg_config.h.in
/var/lib/pgsql/src/include/pg_config_ext.h.in
/var/lib/pgsql/src/include/pg_config_ext.h.win32
/var/lib/pgsql/src/include/pg_config.h.win32
/var/lib/pgsql/src/include/pg_config_manual.h
Dernière modification par joshw (05/12/2018 22:38:46)
Hors ligne
Tout dépend des paquets que vous avez installé. Il faut avoir installé le paquet postgresql*-devel. Après ça, pg_config devrait se trouver dans /usr/pgsql-<version>/bin. En modifiant le PATH, cela devrait fonctionner.
Guillaume.
Hors ligne
Ok, je vais devoir la désinstaller alors, car c'est la version serveur que j'ai installée pas "devel"
Hors ligne
Ce sont des paquets séparés qui ne contiennent pas la même chose. Il n'est donc pas nécessaire de désinstaller quoi que ce soit.
Guillaume.
Hors ligne
Bonjour,
Sorry, j'ai eu d'autres occupations entre temps...
Pour information, j'ai trouvé la doc officielle ici : documentation officielle qui est très bien faite.
D'après ce que je comprends, la version "Server" est optionnelle.
Il semble y avoir une légère différence (pas sûr de moi).
Pour la version Serveur, par défaut sous Fedora 29, de mémoire, il s'agit de la verions 10.6
Dans la doc officielle, on propose, si je comprends bien d'installer la version 10.4 (client) avec en option une version 10.? de la version "Server". Soit, ...
Si on ne veut pas passer par cette méthode, on peut télécharger directement pour Fedora 29 le rpm client qui contient ceci : description du contenu et on y parle bien de "devel".
Tout ça pour dire, que je pense avoir trouvé mon bonheur.
Hors ligne
Bonsoir,
Pour info, j'ai finalement réussi à installer Postgresql, Apache, Php.
Il me reste à tester le chapitre 2.1 (make...)
ainsi, qu'à trouver comment tester pg4dmin.
Hors ligne
Bonjour,
Comme proposé au post #11, j'ai ajourter au path le chemin : "/usr/pgsql-10/bin:"
Malheureusement, après l'exécution de "make", je me heurte à un message d'erreur :
"Makefile:27: /usr/pgsql-10/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory
make: *** Aucune règle pour fabriquer la cible « /usr/pgsql-10/lib/pgxs/src/makefiles/pgxs.mk ». Arrêt."
[toto@localhost tutorial]$ ls
advanced.source complex.c funcs.c funcs.source README
basics.source complex.source funcs_new.c Makefile syscat.source
[toto@localhost tutorial]$ make
Makefile:27: /usr/pgsql-10/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory
make: *** Aucune règle pour fabriquer la cible « /usr/pgsql-10/lib/pgxs/src/makefiles/pgxs.mk ». Arrêt.
[toto@localhost tutorial]$ pwd
/home/toto/Postgresql/postgresql-10.6/src/tutorial
[toto@localhost tutorial]$ echo $PATH | tr : \\n
/home/toto/.local/bin
/home/toto/bin
/home/toto/.local/bin
/home/toto/bin
/usr/share/Modules/bin
/usr/local/bin
/usr/local/sbin
/usr/bin
/usr/sbin
/usr/pgsql-10/bin/
[toto@localhost tutorial]$
Est-ce que je ne devrais pas plutôt insérer dans le "path" le chemin vers le répertoire des sources téléchargées ?
Hors ligne
Non, vu que le PATH ne sert que pour des exécutables.
Qu'avez vous installé au final comme paquets PostgreSQL ?
Guillaume.
Hors ligne
J'ai installé le client (devel) et le serveur, mais je n'ai pas encore trouvé, cherché, comment lancer le client.
[root@localhost ~]# dnf list postgres*
Dernière vérification de l’expiration des métadonnées effectuée il y a 0:51:39 le mar 11 déc 2018 15:11:38 CET.
Paquets installés
postgresql10.x86_64 10.6-1PGDG.f29 @pgdg10
postgresql10-libs.x86_64 10.6-1PGDG.f29 @pgdg10
postgresql10-server.x86_64 10.6-1PGDG.f29 @pgdg10
Paquets disponibles
postgresql.i686 10.6-1.fc29 updates
postgresql.x86_64 10.6-1.fc29 updates
postgresql-contrib.x86_64 10.6-1.fc29 updates
postgresql-dbi-link.noarch 2.0.0-18.fc29 fedora
postgresql-devel.i686 10.6-1.fc29 updates
postgresql-devel.x86_64 10.6-1.fc29 updates
postgresql-docs.x86_64 10.6-1.fc29 updates
postgresql-ip4r.x86_64 2.0.2-17.fc29 fedora
postgresql-jdbc.noarch 42.2.5-1.f29.1 pgdg10
postgresql-jdbc-javadoc.noarch 42.2.5-1.f29.1 pgdg10
postgresql-libs.i686 10.6-1.fc29 updates
postgresql-libs.x86_64 10.6-1.fc29 updates
postgresql-odbc.i686 10.03.0000-2.fc29 fedora
postgresql-odbc.x86_64 10.03.0000-2.fc29 fedora
postgresql-odbc-tests.x86_64 10.03.0000-2.fc29 fedora
postgresql-pgpool-II.i686 3.7.4-2.fc29 fedora
postgresql-pgpool-II.x86_64 3.7.4-2.fc29 fedora
postgresql-pgpool-II-devel.i686 3.7.4-2.fc29 fedora
postgresql-pgpool-II-devel.x86_64 3.7.4-2.fc29 fedora
postgresql-pgpool-II-extensions.x86_64 3.7.4-2.fc29 fedora
postgresql-pgpoolAdmin.noarch 3.6.1-4.fc29 fedora
postgresql-plperl.x86_64 10.6-1.fc29 updates
postgresql-plpython.x86_64 10.6-1.fc29 updates
postgresql-plpython3.x86_64 10.6-1.fc29 updates
postgresql-plruby.x86_64 0.5.4-21.fc29 fedora
postgresql-plruby-doc.x86_64 0.5.4-21.fc29 fedora
postgresql-pltcl.x86_64 10.6-1.fc29 updates
postgresql-server.i686 10.6-1.fc29 updates
postgresql-server.x86_64 10.6-1.fc29 updates
postgresql-static.i686 10.6-1.fc29 updates
postgresql-static.x86_64 10.6-1.fc29 updates
postgresql-test.x86_64 10.6-1.fc29 updates
postgresql-test-rpm-macros.x86_64 10.6-1.fc29 updates
postgresql-unit10.x86_64 7.0-1.f29 pgdg10
postgresql-upgrade.i686 10.6-1.fc29 updates
postgresql-upgrade.x86_64 10.6-1.fc29 updates
postgresql-upgrade-devel.i686 10.6-1.fc29 updates
postgresql-upgrade-devel.x86_64 10.6-1.fc29 updates
postgresql10-contrib.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-devel.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-docs.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-odbc.x86_64 11.00.0000-1PGDG.f29 pgdg10
postgresql10-plperl.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-plpython.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-plpython3.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-pltcl.x86_64 10.6-1PGDG.f29 pgdg10
postgresql10-tcl.x86_64 2.4.0-2.f29.1 pgdg10
postgresql10-test.x86_64 10.6-1PGDG.f29 pgdg10
postgresql_anonymizer10.noarch 0.2.1-1.f29 pgdg10
postgresql_autodoc.noarch 1.41.1-1.f29.1 pgdg10
Dernière modification par joshw (11/12/2018 17:04:39)
Hors ligne
Ën regardant la liste fournie par "dnf", je ne suis pas si sûr que la version "devel" soit bien installée
paquet dispo parle de "devel".
J'ai suivi cette : procédure d'installation
En choississant, Fedora 29, version 10 de postgresql, x86_64
Hors ligne
Entre temps, j'ai installé ce paquet :
[root@localhost ~]# dnf list postgresql-devel
Dernière vérification de l’expiration des métadonnées effectuée il y a 1:19:52 le mar 11 déc 2018 15:11:38 CET.
Paquets installés
postgresql-devel.x86_64 10.6-1.fc29 @updates
Paquets disponibles
postgresql-devel.i686 10.6-1.fc29
mais je ne sais pas si je dois aussi installé le ".i686", est-ce un complément ou est-ce pour une autre architecture hardware ?
Hors ligne
Ce n'est pas ce paquet qui doit être installé, mais postgresql10-devel.
Guillaume.
Hors ligne
Pour info,
J'ai installé la bonne version et désinstallé l'autre.
[root@localhost ~]# dnf list postgresql*
Dernière vérification de l’expiration des métadonnées effectuée il y a 1:38:43 le mar 11 déc 2018 15:11:38 CET.
Paquets installés
postgresql-libs.x86_64 10.6-1.fc29 @updates
postgresql10.x86_64 10.6-1PGDG.f29 @pgdg10
postgresql10-devel.x86_64 10.6-1PGDG.f29 @pgdg10
postgresql10-libs.x86_64 10.6-1PGDG.f29 @pgdg10
postgresql10-server.x86_64 10.6-1PGDG.f29 @pgdg10
N'y a-t-il pas un service que je dois démarrer avec "systemctl" ?
Dernière modification par joshw (11/12/2018 17:54:23)
Hors ligne
Il faut créer l'instance et démarrer le serveur en effet. La partie Post-Installation de https://www.postgresql.org/download/linux/redhat/
Guillaume.
Hors ligne
Peut-être que je confond, mais pour :
postgresql10
postgresql10-server
# A n'exécuter qu'une seule fois
/usr/pgsql-10/bin/postgresql-10-setup initdb
#Pour que le serveur soit démarrer à chaque démarrage
systemctl enable postgresql-10
#Pour démarrer le serveur manuellement
systemctl start postgresql-10
Pour le "post-installation"
Si j'encode :
[root@localhost ~]# postgresql-setup initdb
bash: postgresql-setup: commande inconnue...
Voulez-vous installer le paquet « postgresql-server » qui fournit la commande « postgresql-setup » ? [N/y] n
J'en déduis que cette commande correspond à initialiser la DB de la version de postgresql à partir du chapître "Included in Distribution"
Et donc pour la version postgresql10-devel, n'y a-t-il pas une autre commande à exécuter car, la commande make ne fonctionne toujours pas :
[toto@localhost tutorial]$ pwd
/home/toto/Postgresql/postgresql-10.6/src/tutorial
[toto@localhost tutorial]$ make
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -I. -I./ -I/usr/pgsql-10/include/server -I/usr/pgsql-10/include/internal -D_GNU_SOURCE -I/usr/include/libxml2 -I/usr/include -c -o complex.o complex.c
gcc: error: /usr/lib/rpm/redhat/redhat-hardened-cc1: No such file or directory
make: *** [<commande interne>: complex.o] Error 1
[baghou@localhost tutorial]$
A moins qu'il faille ajouter encore un répertoire dans le PATH ?
Dernière modification par joshw (11/12/2018 18:47:26)
Hors ligne
Il y a un risque de confusion dans ce que vous faites, parce que vous jouez sur 2 tableaux: la compilation des sources d'un côté, qui est faisable complètement indépendamment des paquets précompilés, et de l'autre côté l'installation des paquets précompilés pour Fedora.
Le Makefile du répertoire tutorial a ces explications en tête de fichier:
#-------------------------------------------------------------------------
#
# Makefile--
# Makefile for tutorial
#
# By default, this builds against an existing PostgreSQL installation
# (the one identified by whichever pg_config is first in your path).
# Within a configured source tree, you can say "make NO_PGXS=1 all"
# to build using the surrounding source tree.
#
# IDENTIFICATION
# src/tutorial/Makefile
#
#-------------------------------------------------------------------------
Donc après avoir compilé les sources de postgresql, c'est-à-dire essentiellement
1) téléchargé les sources
2) fait un ./configure avec succès à la racine de ces sources
3) fait un make qui s'est terminé aussi avec succès toujours à la racine
On peut aller dans src/tutorial, et lancer:
make NO_PGXS=1 all
et ça va compiler avec succès le tutoriel.
Cette démarche est dans la logique que les sources sont auto-suffisantes. Ca ne veut pas dire que vous ne devez pas aussi installer postgresql-devel ou d'autres paquets pour ce que vous voulez faire par ailleurs, mais il y a une séparation nette entre ce qui est nécessaire pour compiler PostgreSQL et ce qui est nécessaire pour compiler votre propre projet lié à PostgreSQL sous Fedora.
@DanielVerite
http://blog-postgresql.verite.pro/
Hors ligne