Re: Problème lecture/écriture

From: Cédric Villemain <cedric(at)2ndquadrant(dot)com>
To: pgsql-fr-generale(at)postgresql(dot)org
Cc: Tovo Rabemanantsoa <tovo(dot)rabemanantsoa(at)bordeaux(dot)inra(dot)fr>
Subject: Re: Problème lecture/écriture
Date: 2012-05-22 14:42:37
Message-ID: 201205221642.43581.cedric@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Le mardi 22 mai 2012 14:54:06, Tovo Rabemanantsoa a écrit :
> Bonjour,
> Voici un problème sur lequel je bute si quelqu'un a une idée :
> Soit une base postgres, sur une des tables, je peux lire les 100
> premiers et derniers enregistrements mais je ne peux pas lire ce qu'il y
> a au milieu.
> Quand j'essaie avec PgAdmin, il me sort :
>
> /home/postgres/data/base/17320
> ERROR: could not read block 91725 in file "base/17320/1634526": read
> only 4096 of 8192 bytes
>
>
> ********** Error **********
>
> ERROR: could not read block 91725 in file "base/17320/1634526": read
> only 4096 of 8192 bytes
> SQL state: XX001
>
> Je vais donc voir le fichier incriminé et dans le répertoire j'ai ça :
> -rw------- 1 postgres postgres 1.0G May 22 11:10 1634526
> -rw------- 1 postgres postgres 259M May 21 19:31 1634526.1
> -rw------- 1 postgres postgres 344K May 21 19:33 1634526_fsm
> -rw------- 1 postgres postgres 24K May 21 19:32 1634526_vm
>
> Après avoir arrêté Postgres, j'essaie de copier le fichier 1634526 mais
> au bout d'environ 700Mo, il me dit :
> [root(at)mdeeph58 17320]# cp 1634526 /tmp/1634526.old
> cp: reading ‘1634526’: Input/output error
> cp: failed to extend ‘/tmp/1634526.old’: Input/output error
>
> Pour savoir la nature du fichier j'ai fait un file :
>
> [root(at)mdeeph58 17320]# file 1634526
> 1634526: X11 SNF font data, LSB first
>
> J'ai fait un fsck sur le système de fichier, tout semble bien et j'ai
> assez d'espace disque partout.
>
> La base est sur un portable avec un disque SSD sous Arch linux.
>
> Voilà, j'ai plus aucune piste de solution.

il existe des méthodes bas niveaux pour résoudre ces soucis en l'absence de
backup.

En fonction de la criticité aussi, bien sur.

Globalement:
* 'dd' (et outils similaire) pour récupérer au mieux le disque
* reinit des blocks postgres defectueux pour qu'il veuille bien y lire quand
meme. (dd par exemple)
* vérification des contenus des WAL pour y récupérer les éléments qui
pourraient se trouver dans les blocs défectueux.

--
Cédric Villemain +33 (0)6 20 30 22 52
http://2ndQuadrant.fr/
PostgreSQL: Support 24x7 - Développement, Expertise et Formation

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Tovo Rabemanantsoa 2012-05-22 14:46:56 Re: Problème lecture/écriture
Previous Message Daniel Verite 2012-05-22 14:15:30 Re: Problème lecture/ écriture