Vous n'êtes pas identifié(e).
lol oui oui c'est pas une giga base mais sa taille se mesure en Go ( sur tout pour moi, habitué à des bases de données de moins de 6 Go sous informix héhéhéhé )
c'est du postgres 9.1
dans les tables il y a entre 21 et 23 millions de lignes
et entre 75 et 95 colonnes.
Bonjour à tous
pour commencer : j'ai pas une question directe ou précise.
mais je voulais ouvrir une discussion ou les plus expérimentés peuvent donner des conseils au débutant et des bonnes pratiques et reflexe à avoir.
Pour la première fois je me retrouve devant une mega base ( je dois même pouvoir dire une géga base ) dont la taille dépasse les 30 GO.
4 tables ( voir plus ) sont d'une capacité de 6 à 7 Go.
vous pouvez bien imaginer le temps de réponse.
heureusement c'est pas une base de prod, elle n'est pas super solicité, mais ça risque de devenir le cas prochainement,
ou il pourrait y avoit encore 100 à 200 requete de select par jour ( c'est pas énorme ).
si quelqu'un à un conseil, une remaruque, ... je suis preneur .
Merci d'avance
Youssef
Merci gleu, je savais pas qu'on pouvait passer une requête à la place du nom de la table
je teste si ça marchete et je vous ferais un petit retour
ciao ciao
Bonjour
tu trouveras ton bonheur sur cette page : http://www.postgresql.org/download/linux/redhat/
(NB : CentOs est réalisé à partir des sources de redhat, donc ce qui marche à ce dernier marchera aussi au premier )
si non, pour faire simple tu peux utiliser l'installation depuis une interface graphique en téléchargeant le fichier qui correspond à ta config ici : http://www.enterprisedb.com/products-se … pgdownload
Bon courage
Bonjour
j'essaye de créer une interface avec php qui permet de créer une requete sql ( choix de la table, choix des champs, choix des conditions ... )
tout marche bien, mais j'aimerai ajouté une fonction qui permet de télécharger le résultats de la requete dans un fichier text,
je me demande si il y a pas une commande ( genre COPY ) mais qui permet d'ajouter les conditions de la clause where.
Merci à vous
Youssef
Je vous propose un RDV là bas à ce soir, le mardi 18 septembre à 20h00 !
en retard ( presque comme d’habitude),
je viens de voir le message et c'est bien dommage
peut être à une prochaine fois.
Merci Julien,
J'avais aussi remarqué le nombre connexion/deconnexion de mon compte, mais je comprends pas le problème,
ça doit venir du réseau au boulot ...
Bonjour
est ce que des admin du channel freenode sont sur le forum,
on m'a banni, parce que j'avais un prob de connexion
j'aimerais bien comprendre pourquoi !!!!
(pseudo : yamnay )
Merci
ça peut venir de la configuration de SELinux
pour faire un test, tape cette commande pour le désactivé
# /usr/sbin/setenforce 0
si non as-tu configuré ton fichier pg_hba.conf ?
Merci pour la réponse,
je vais chercher mieux dans ce sujet maintenant que j'ai une piste
bonjour à tous,
svp j'ai une question, est il possible de faire une selection avec jointure sur deux tables appartenant à deux bases différentes, deux bases et pas deux schémas
Merci
ça marche
Merci rjuju
j'ai essayé de faire
UPDATE ma_table
set ch1 = (select ch2 || ch3 from ma_table mt where mt.pk = pk )
where ch1="valeur";
mais ça ne marche pas,
Bonjour
Je cherche a faire un update d'un champs et de le modifier en mettant un une concaténation de deux champs
genre :
UPDATE ma_table
set ch1 = concat(ch2, ch3)
where ch1="valeur";
mais écrite comme ça, ma raquette ne marche pas.
avez vous une idée si il faut jouter ou pas une condition sur la primary key ou pas ?
Merci
Bonjour
juste pour vous informer que mon problème est résolu, il était du un SELinux qui bloquait les connexions de php
solution : si ce n'est pas un serveur de prod, et plus rapidement voir http://blog.nicolargo.com/2007/06/activ … linux.html
si non pour plus de détails voir : http://linux.die.net/man/8/httpd_selinux
bon courage à tous
vous voulez dite vérifier le log de postgres ?
OUi
j'ai aussi essayer de mettre l'adresse ip de la machine
mais rien
je crois que par les deux tcp et spcket unix hum
dans mon pg_hba.conf j'ai :
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
hummm
aucune idée, comment vérifier ?
oui tout est ok
le même serveur sur la même machine
le port est bien 5432 ( utilisé par pgAdmin III et ça marche très bien )
le même user et mot de passe utilisé par pgAdmin III
le message erreur php que je reçois est le suivant :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08006] [7] could not connect to server: Permission denied Is the server running on host "localhost" and accepting TCP/IP connections on port 5432?
could not connect to server: Permission denied Is the server running on host "localhost" and accepting TCP/IP connections on port 5432?' in /var/www/html/pg_req/class/dbConnect.class.php:24 Stack trace: #0 /var/www/html/pg_req/class/dbConnect.class.php(24): PDO->__construct('pgsql:host=loca...') #1 /var/www/html/pg_req/class/dbConnect.class.php(44): Connexion->connect() #2 /var/www/html/pg_req/urgent.php(24): dbConnect->__construct() #3 {main} thrown in /var/www/html/pg_req/class/dbConnect.class.php on line 24
bonjour à tous
j'ai un problème à me connecter avec PDO à ma base postgres sur une machine CentOS
mon code est le suivant
$hostname = "localhost";
$database = "maBase";
$username = "monUser";
$password = "monPwd";
$this->db = new PDO('pgsql:host='.$hostname.';dbname='.$database, $username, $password);
$this->db->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
return $this->db;
les mêmes scripts sur une autre machine sous Mac os x et utilisant MAMP, marche sans problème.
faut il configurer quelque chose sur lamachine Cent OS que j'ai oublié de faire
NB : en consultant le phpinfo()
je vois que la partie postgreSQL est affiché et le PDO est activé aussi
Merci à vous
L'erreur indique qu'une des valeur de "monChamps" a une valeur absolue >= 10, alors que votre conversion demande un nombre avec un seul chiffre avant la virgule.
Regardez dans votre table si c'est bien le cas (par exemple SELECT to_number(monChamps ,'9999D999999999999999') FROM matable where to_number(monChamps ,'9999D999999999999999') >= 10.0 ), et corrigez le problème (soit en changeant la conversion avec plus de chiffres avant la virgule, soit en modifiant les enregistrements concernés).
Vous pourrez alors modifier le type de votre champ.
Merci pour ton explication,
j'avais pas bien compris le message d'erreur
effectivement, y avait des valeurs dont le nombre avant la virgule est supérieur à 10
j'ai changé le format de conversion, et j'ai eu le bon résultat que je cherchais
la fonction to_number exite bien,
http://www.postgresql.org/docs/8.3/stat … tting.html
mais par contre le champs doit être en varchar, d'ou lebut d'utiliser to_number pour pouvoir effectuer une somme,
il n'est pas possible de faire un to_number sur un champ numeric, parce que la fonction accepte deux arguments texte.
j'ai seulement changé le nom de la table et le nom de champs
par maTable et monChaémps,
même avec les bon noms ça marchera pas pour vous vu que vous ne disposer pas de la table;
un copier coller de la requête telle que je l'ai mise retournera surement une erreur