backup Base de données postgre linux - Linux et OS Alternatifs
Marsh Posté le 19-03-2004 à 13:54:47
ReplyMarsh Posté le 19-03-2004 à 14:47:09
J'ai donc essayé tout ca mais quand je le lance y a une erreur!
mon script:
pg_dump -o -b -U login -Ft >/scripts_backup/montage_backup/backup/bdd
.sql.tar
l'erreur:
pg_dump: [archiver (db)] connection to database "login" failed: FATAL: IDENT authentication failed for user "login"
je comprend pas pourquoi...
Marsh Posté le 19-03-2004 à 14:55:00
authentication failed for user "login"
il existe ? il a le droit de faire quoi ?
Marsh Posté le 19-03-2004 à 15:04:31
RTFM bourdail!
Code :
|
Marsh Posté le 19-03-2004 à 15:15:39
Mon login existe bien et il est meme root
arghbis: ca me donne le meme resultat!!!
Marsh Posté le 19-03-2004 à 15:48:29
kel est l'utilisateur ki gère la base ? postgres ? ou autre ? cela tu dois le savoir, ensuite tu lance la commande avec -U celuikigèrelabase
si vraiment cela merde la solution est la suivante :
su -c "pg_dump -U celuikigere ....." celuikigere
cela lance la commande sous l'identité de l'utlisateur celuikigere
Marsh Posté le 19-03-2004 à 15:52:42
arghbis:Je viens d'essayer mais:
psql: FATAL: IDENT authentication failed for user "login"
Marsh Posté le 19-03-2004 à 15:54:19
donc ton user login est soit inconnu, soit tu n'as pas donné le bon password quand il te l'a demandé
Marsh Posté le 19-03-2004 à 16:03:21
arghbis: il ne me demande pas de password
dark_schneider: j'ai fais la commande su... et la ca fais 5min que y a des chiffres qui deroulent et c'est pas finit!!!
Marsh Posté le 19-03-2004 à 16:05:15
cela signie ke l'utilisateur login n'a pas le droit d'accéder à la base
c'est la base ki refuse l'accès. lis stp la doc de postgres avant !
http://www.postgresql.org/docs/7.4 [...] ation.html
il doit être spécifié ke pour les connexion locales il faut utiliser ident dans le fichier pg_hba.conf
Marsh Posté le 19-03-2004 à 16:06:19
tourist77 a écrit : arghbis: il ne me demande pas de password |
donc ca marche
fais CTRL+C
pour être sûr qu'il se connecte vraiment tu fais :
su -c "pgsql -U celuikigere -d nomdelabase" celuikigere
Marsh Posté le 19-03-2004 à 16:16:00
même commande que celle que tu as faite, sauf que login est remplacé par celuiquigère
et RTFM non de nom!
Marsh Posté le 19-03-2004 à 16:16:20
j'ai dis pgsql, c'est pour juste voir si tu te connectes à la base
cf doc ( ident )
Code :
|
Marsh Posté le 19-03-2004 à 16:21:17
J'ai tapé la ligne et ca m'a repondu ca:
bash: /root/.bashrc: Permission non accordée
bash: line 1: pgsql: command not found
Marsh Posté le 19-03-2004 à 16:26:48
désolé la commande est psql et non pgsql
Marsh Posté le 19-03-2004 à 16:30:47
oki
alor ca me donne ca:
bash: /root/.bashrc: Permission non accordée
Welcome to psql 7.3.2, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit
ajaccio=#
sachant que ajaccio=login=nom de la base
Marsh Posté le 19-03-2004 à 16:31:46
apres le #, y a le curseur qui clignote et qui attend que je fasse qqchose...
Marsh Posté le 19-03-2004 à 16:33:02
donc ma théorie est la bonne, pour utiliser la base il faut être connecté en tant k'utilisateur ajaccio.
donc soit tu conf ident ( cf doc ), soit tu utilises su dans ton script.
lorsque les nombres défilait c'était le dump ki se faisait. lis la doc de postgresql
Marsh Posté le 19-03-2004 à 16:36:07
tourist77 a écrit : apres le #, y a le curseur qui clignote et qui attend que je fasse qqchose... |
c'est la ligne de commande de Postgres.
tu peux entrée les commandes sql directement dedans.
\dt : liste des tables
\dS : liste des tables système
\? : liste des commandes Postgres
SELECT * FROM nomtable; : affiche le contenu de nomtable
Marsh Posté le 19-03-2004 à 16:36:50
tourist77 a écrit : comment j'utilise su dans le script? |
tu écris tel kel.
ce ke tu mets dans un script c'est la même chose ke ce ke tu entre directement dans une console/un terminal.
Marsh Posté le 19-03-2004 à 16:37:56
Dark_Schneider a écrit : donc ma théorie est la bonne, pour utiliser la base il faut être connecté en tant k'utilisateur ajaccio. |
mais pourtant je me connecte en ajaccio!!!
Marsh Posté le 19-03-2004 à 16:40:14
mais l'utilisateur ki lance la commande n'est pas ajaccio.
quand tu tapes "pg_dump ...." l'utilisateur ki tape et lance cette commande n'est pas ajaccio mais root.
lis l'encart de la doc ke je t'ai donné.
ident vérifie ke l'utilisateur ki se connecte à la base est le même ke celui ki lance la commande. si tu veux ke root puisse se connecter à la base en tant qu'ajaccio, il faut faire un alias dans le fichier pg_ident.conf ( cf doc )
su = switch user. su permet de se connecter ou de lancer une commande en tant qu'un autre utilisateur.
su -c "ma commande" monuser <--- cette ligne signifie k'il faut lancer la commande "ma commande" sous l'identité de l'utilisateur monuser
Pour plus d'info :
man su
man psql
man pg_dump
Marsh Posté le 19-03-2004 à 16:41:53
je tape ca? :
su -c "psql -U ajaccio -d ajaccio" ajaccio
pg_dump -o -b -U ajaccio ajaccio>/scripts_backup/montage_backup/ajaccio/bdd_ajaccio.sql.tar
Marsh Posté le 19-03-2004 à 16:44:02
je ne comprend pas tout dans la doc, je suis pas tres fort en anglais!!!!
Marsh Posté le 19-03-2004 à 16:49:31
là cel m'énerve.
psql : permet de se connecter à une base et éventuellement de lancer des commandes
pg_dump : permet de sauvegarder une base.
je t'ai parlé de psql juste pour ke tu vérifies ke tu te connectais bien à la base. Pour sauvegarder une base tru n'en a pas besoin. utilise pg_dump
Code :
|
lis la page de manuel de pg_dump pour une explication des options.
man pg_dump
Marsh Posté le 19-03-2004 à 16:50:07
tourist77 a écrit : je ne comprend pas tout dans la doc, je suis pas tres fort en anglais!!!! |
alors améliore ton anglais, en informatique c'est INDISPENSABLE !!! ( notamment sous linux )
Marsh Posté le 19-03-2004 à 17:01:25
j'ai tapé ce que tu as mis au dessus:
bash: /root/.bashrc: Permission non accordée
Marsh Posté le 19-03-2004 à 21:16:29
et t'aurais pas un zoli fichier /scripts_backup/montage_backup/ajaccio/bdd_ajaccio.sql.tar par hasard???
Marsh Posté le 22-03-2004 à 11:49:15
Reply
Marsh Posté le 19-03-2004 à 13:49:17
Bonjour,
Je dois éditer un script de backup d'une base de données postgre d'un serveur linux.
Est-ce que qq'un connait la manip?
merci