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 Re : PL/pgSQL » utilisation de dblink_exec » 30/11/2011 09:36:20

Merci rjuju , j'ai du installer le module dblink , et maintenant ca fonctionne

#2 PL/pgSQL » utilisation de dblink_exec » 28/11/2011 15:50:57

fanah
Réponses : 2

Bonjour,

j'utilise postgresql  "PostgreSQL 9.0.4, compiled by Visual C++ build 1500, 32-bit" sous windows et je veut insérer les données de ma table t1 vers une autre table t2 dans une base postgres 8.3 "PostgreSQL 8.3.11 on i486-pc-linux-gnu, compiled by GCC gcc-4.3.real (Debian 4.3.2-1.1) 4.3.2" sous linux .

Pou ce faire , j'ai écrit une fonction

[CODE]
CREATE OR REPLACE FUNCTION f_affiche ()
RETURNS VOID
AS $$
DECLARE
    c1 cursor IS SELECT * FROM eth0;
    eth0_row eth0%ROWTYPE;
BEGIN

    FOR eth0_row IN c1
    LOOP
     PERFORM dblink_exec('dbname=suivBP host=10.128.1.2', 'INSERT INTO eth0 (rx,tx,datecurrent,heurecurrent) VALUES (' || eth0_row.rx || ', ' || eth0_row.tx || ', ' || eth0_row.datecurrent || ', ' || eth0_row.heurecurrent || ')');
    END LOOP;
    RETURN;
END

$$ LANGUAGE PLPGSQL


[CODE]



J'ai l'érreur suivant quand je lance ma fonction

ERREUR:  la fonction dblink_exec(unknown, text) n'existe pas
LINE 1: SELECT dblink_exec('dbname=suivBP host=10.128.1.2', 'INSERT ...
               ^
HINT:  Aucune fonction ne correspond au nom donné et aux types d'arguments.
Vous devez ajouter des conversions explicites de type.
QUERY:  SELECT dblink_exec('dbname=suivBP host=10.128.1.2', 'INSERT INTO eth0 (rx,tx,datecurrent,heurecurrent) VALUES (' || eth0_row.rx || ', ' || eth0_row.tx || ', ' || eth0_row.datecurrent || ', ' || eth0_row.heurecurrent || ')')
CONTEXT:  PL/pgSQL function "f_affiche" line 8 at PERFORM

********** Erreur **********

ERREUR: la fonction dblink_exec(unknown, text) n'existe pas
État SQL :42883
Astuce : Aucune fonction ne correspond au nom donné et aux types d'arguments.
Vous devez ajouter des conversions explicites de type.
Contexte : PL/pgSQL function "f_affiche" line 8 at PERFORM




Est ce que c'est lier au version des deux base ?
Si oui, est que vous avez des idées ?

#3 Re : Général » trouver une bourse de formation en administration de la bdd postgres » 11/11/2011 10:27:51

Je suis à Madagascar en ce moment, et je travaille entant que développeur et administrateur de base de donnée dans une entreprise de numérisation de donnée, la ou l'on cotie tous les jours plusieurs données .

#4 Général » trouver une bourse de formation en administration de la bdd postgres » 09/11/2011 15:05:53

fanah
Réponses : 5

Bonjour,

je vient de Madagascar, et j'aimerai savoir comment on peut trouver une bourse de formation en administration de la base Postgres

#5 Réplication » Log shipping sous windows XP » 16/09/2010 08:43:49

fanah
Réponses : 2

J'utilise 2 machine ayant comme SE windows XP et comme base PostgreSQL 8.4 .
Je voudrai faire une replication Logshipping sur les deux bases mais je ne trouve pas comment faire sous windows.
Est ce que quelqu'un sait comment faire ou pourrait me donner un lien ?

#6 Sécurité » Acces à une BD via SSL » 14/07/2010 09:36:21

fanah
Réponses : 1

J'utilise postgres 8.4 et j'ai un IP fixe et un port 5432 ouvert qui me permet de faire une connexion vers l'exterieur (via internet) .
Je voudrai securisé mon serveur de BD avec un SSL mais je ne trouve pas de reponse.
Comment on procede ?

#7 Re : Général » Démarrage de Postgres Studio 8.3R2 impossible » 17/05/2010 10:58:09

J'ai trouvé la solution et la cause de mon probleme.

En effet, j'ai eu un probleme d'acces , il a fallu recréer l'utilisateur enterprisedb qui a été supprimé par la mise à jour de windows.
C'est pourquoi , il est impossible d'écrire dans obal/pg_control .

Merci

#8 Général » Démarrage de Postgres Studio 8.3R2 impossible » 17/05/2010 09:37:25

fanah
Réponses : 2

J'utilise Postgres Studio 8.3R2 sur windwos xp sp2, et hier j'ai eu comme message dans le enterprisedb-2010-05-16_000000.log

sur le path C:\PostgresPlus\8.3R2AS\data\dbserver_logs

j'ai

2010-05-16 03:30:02 LOG:  received smart shutdown request
2010-05-16 23:00:08 FATAL:  the database system is shutting down

je ne sais pas pourquoi la base s'est arreté en ce moment.

En essayant de redémarrer ma base ce 2010-05-17,

J'ai le message d'érreur suivant

l'érreur system 5 s'est produite

et la base ne démarre pas , pour contourner l'érreur j'ai donc lancé à la main le commande suivante :

"C:\PostgresPlus\8.3R2AS\dbserver\bin\pg_ctl.exe" start -N "EDB_8.3R2_5444" -D "C:\PostgresPlus\8.3R2AS\data" -l "C:\PostgresPlus\8.3R2AS\data\dbserver_logs\logs.txt"

et j'ai le message suivante

pg_ctl: another server might be running; trying to start server anyway
pg_ctl : impossible de lancer le serveur
Examinez le journal des traces.

J'ai donc vérifier le fichier C:\PostgresPlus\8.3R2AS\data\dbserver_logs\logs.txt.

2010-05-17 10:30:42 LOG:  
	
	** EnterpriseDB Dynamic Tuning Agent ********************************************
	*       System Utilization: 66 %                                                *
	*         Database Version: 8.3.0.106                                           *
	* Operating System Version: Windows_NT                                          *
	*     Number of Processors: 1                                                   *
	*           Processor Type: x86 Family 6 Model 26 Stepping 5, GenuineIntel      *
	*   Processor Architecture: x86                                                 *
	*            Database Size: 0.1    GB                                           *
	*                      RAM: 0.8    GB                                           *
	*       Max DB Connections: 100                                                 *
	*               Autovacuum: off                                                 *
	*       Autovacuum Naptime: 60   Seconds                                        *
	*********************************************************************************
	
2010-05-17 10:30:42 PANIC:  could not open control file "global/pg_control": Permission denied

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

Pouvez vous m'aider svp ?

#9 Général » différence entre PostgreSQL 8.2 et 8.4 » 12/05/2010 09:20:30

fanah
Réponses : 2

Quelles sont les différences entre PostgreSQL 8.2 et 8.4 ?

#10 Re : Général » Rownum dans postgres » 04/05/2010 11:38:53

OK merci  pour la précision , j'ai fait comme suite :

select * from matable order by macolonne desc limit 1

et j'ai en retour la première colonne de matable.

#11 Général » Rownum dans postgres » 29/04/2010 08:23:15

fanah
Réponses : 3

Quelle est l'équivalence de rownum dans postgres , en faite seul posgres advance server possede cette colonne .

#12 Re : Général » Pgdump avec clause where » 28/04/2010 16:46:46

En faite, je veux faire un export sélective des données et je veux aussi que le fichier de sortie soit pas facile à lire (crypter).

#13 Re : Général » Pgdump avec clause where » 28/04/2010 16:26:42

Oui, mais j'ai un petit probleme dans ce cas, c'est que mon fichier en sortie ne sera pas cripté .
Je vais peut etre faire un export binaire .
Merci

#14 Général » Pgdump avec clause where » 28/04/2010 16:01:39

fanah
Réponses : 5

Est ce que dans postgres on peut faire un pg_dump avec un clause where comme ce qu'on fait sur oracle avec l'export

$ exp system/XXXXX file=/ora/admin/dba/log/exp_query.dmp  tables=formation.dvp_loader query="'where salaire > 500'"

J'ai déja fait des recherche mais il s'avere que je n'ai trouvé aucune versions qui supporte cela ?

#15 Re : Réplication » Log shipping et standby » 28/04/2010 14:47:56

J'avais pas pensé à cela, comme vous avez dit donc j'ai crée l'utilisateur postgres sur la seconde machine et maintenant ca marche , merci .

Par contre dans le doc de postgres j'ai vue qu'il y avait un autre moyen de faire un sauvegarde celle qui utilise le

select pg_start_backup('label');
select pg_stop_backup();"

Quelle sont les roles de ces deux fonctions ?

#16 Réplication » Log shipping et standby » 28/04/2010 14:20:07

fanah
Réponses : 4

Je suis sous windows XP et j'utilise postgres 8.4.

J'ai essayé de monter une base standby avec le principe du Log shipping, ci après la démarche que j'avais fait:

1- j'ai modifié postgresql.conf  comme suit :

archive_mode = on
archive_command = 'copy "%p" "C:\\DBA\\sauvegarde\\%f"'
archive_timeout = 60

2- j'ai démarré ma base base1

3- après démarrage, les fichiers journaux sont créer dans le path C:\DBA\sauvegarde et dans C:\Program Files\PostgreSQL\8.4\data\pg_xlog\archive_status , j'ai les fichiers journaux misent en extension .done

4- j'ai arrêté ma base afin de faire un sauvegarde à froid des data , j'ai donc copié les fichiers C:\Program Files\PostgreSQL\8.4\data dans un autre machine base2 .

5- j'ai installé postgres 8,4 sur la machine base2.

6- j'ai copier les contenues du sauvegarde dans la base2.

7- j'ai supprimer les fichiers journal dans le path C:\Program Files\PostgreSQL\8.4\data\pg_xlog

8- j'ai ensuite créer le fichier recovery.conf et j'ai mis

restore_command = 'copy "C:\\DBA\\sauvegarde\\%f" "%p"'

9 - j'ai démarré la base2

Le problème c'est que je n'arrive pas à faire démarrer ma base base2.

Est ce que vous avez des solutions ?

#17 Re : Général » [RESOLU] arret et demarrage de postgres avec pg_ctl » 27/04/2010 16:55:02

j'ai fait :

sc start "postgresql-8.4"

Ca démarre maintenant.
Merci pour votre aide.

#18 Re : Général » [RESOLU] arret et demarrage de postgres avec pg_ctl » 27/04/2010 14:54:30

Mon but était de créer un script de sauvegarde à froid.

- arrêt de la base
- copie des fichiers data dans un autre serveur
- démarrage de la base

Lors de l'arrêt je ne spécifie par l'utilisateur postgres et il 'n y pas d'erreur, le service s'arrête correctement.

"C:/Program Files/PostgreSQL/8.4/bin/pg_ctl.exe" stop -N "postgresql-8.4" -D "C:/Program Files/PostgreSQL/8.4/data" -m fast -w
xcopy "C:\Program Files\PostgreSQL\8.4\data" "\\serveur\C$\data"

J'ai ajouté donc dans mon ligne de commande sur le démarrage l'utilisateur.

"C:/Program Files/PostgreSQL/8.4/bin/pg_ctl.exe" start -N "postgresql-8.4" -U postgres -P postgres -D "C:/Program Files/PostgreSQL/8.4/data" -w

Mais l'erreur persiste toujours

en attente du démarrage du serveur...2010-04-26 18:03:52 MSDFATAL:  n'a pas pu créer le journal applicatif « pg_log/postgresql-2010-04-26_180352.log » : Permission denied

Est ce qu'il y pas d'autre commande qui permet de démarrer la base à part pg_ctl ?

#19 Re : Général » [RESOLU] arret et demarrage de postgres avec pg_ctl » 27/04/2010 13:30:21

Ce qui est étonnant c'est lorsque je démarre le service postgresql-8.4 via services.msc il n'y a pas de message d'erreur, cependant dans la propriété de ce service postgresql-8.4 sur le libellé Chemin d'accès des fichiers exécutables j'ai :

C:/Program Files/PostgreSQL/8.4/bin/pg_ctl.exe runservice -N "postgresql-8.4" -D "C:/Program Files/PostgreSQL/8.4/data" -w

Et le fichier log postgresql-2010-04-27_152300.log a été créé dans le path C:\Program Files\PostgreSQL\8.4\data\pg_log.

Est-ce que cela ne signifie-t-il pas que postgres a accès a ce path ?

#20 Général » [RESOLU] arret et demarrage de postgres avec pg_ctl » 27/04/2010 11:24:09

fanah
Réponses : 6

J’essaie de démarrer ma base avec la ligne de commande ci après:

pg_ctl start -N "postgresql-8.4" -D "C:/Program Files/PostgreSQL/8.4/data" -w

Et j'ai le message d'erreur suivante :

En attente du démarrage du serveur...2010-04-26 18:03:52 MSDFATAL:  n'a pas pu créer le journal applicatif « pg_log/postgresql-2010-04-26_180352.log » : Permission denied

Pourtant, j'ai déjà créé un utilisateur postgres et qui a le contrôle total sur le dossier pg_log.

Est-ce que quelqu'un peut m'aider ?

Pied de page des forums

Propulsé par FluxBB