Re: No se puede acceder a la BD

From: Jairo Graterón <jgrateron(at)gmail(dot)com>
To: Horacio Miranda <hmiranda(at)gmail(dot)com>
Cc: Lucas Luengas <lucasluengas(at)gmail(dot)com>, Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: No se puede acceder a la BD
Date: 2019-03-25 22:10:08
Message-ID: CALnU-rOp4N-xe80kiY48FOWn3vV87yLcsRWpCFWhDZexQ1V8kw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Saludos

select * from pg_class where relfilenode = 11760;
No funciona porque no se puede acceder a la BD

Hice el checkdisk y hay fallas en el disco duro, es más la máquina ya no
arranca.

Logré respaldar la carpeta DATA de postgres y lo copie en otra máquina con
su misma versión de postgres pero igualmente no se puede acceder a la BD.

usé el programa reindex y da el mismo error, cree un archivo con el mismo
nombre sin bytes y aparece "Fatal: índice pg_attribute_relid_attnum_index
contiene páginas vacías no esperadas en el bloque 0"

Así que restauraremos la copia que tengo del año pasado y ellos revisaran
los reportes diarios para recuperar las ventas y cobranzas.

*Ojo no soy el administrador de sistemas de la empresa,* sólo instalé el
sistema hace varios años, en su momento les indiqué que hicieran respaldos
diarios, comprar discos redundantes y un UPS para ese equipo.

Gracias por sus respuestas.

El sáb., 23 mar. 2019 a las 18:24, Horacio Miranda (<hmiranda(at)gmail(dot)com>)
escribió:

> Algunas cosas que hago cuando hay problemas Comentarios entre lineas.
> On 24/03/2019 5:29 AM, Jairo Graterón wrote:
>
> Hola Lucas
>
> Si el servidor Postgres arranca correctamente, no se puede hacer backup ya
> que da error al acceder a la BD de la empresa
>
> Hay varios tipos de respaldos, si no puedes hacer un respaldo lógico, hace
> un respaldo físico ( copia todo a otra maquina no otro directorio o disco
> en ese servidor ). ( usa discos remotos montados de forma local ), que
> tamaño estamos hablando ? Tienes otra maquina similar supongo ?
>
>
> Al igual que pg_admin desde la línea de comandos puedo iniciar sesión
> desde la BD por default de postgres, pero luego cuando cambio a BD de
> producción aparece el error.
>
> Antes de ver la base de datos asegurate que la maquina este bien ( que
> maquina es ? sí es una HP/DELL/Cisco, etc ) revisa que el cache de la
> controladora este online y los discos no esten esperando una acción, sí
> tienes mala suerte el archivo estaba en el cache a la hora de la falla, sí
> esto llegara a ser correcto, es un proceso temporal que crea y borra tablas
> y puede que tengas suerte ).
>
> Sí es S.O. Lo que puedes tratar ( sí no has escrito nada en la maquina )
> recuperar ese archivo con testdisk ( pero debes saber lo que estas haciendo
> y despues de sacar un respaldo ) la regla es no usar el disco con problemas
> para asegurarte que no se escriban los bloques ( lo ideal es tener el
> postgresql en otra particion ).
> https://www.cgsecurity.org/wiki/TestDisk_Download
>
> Paré el servicio postgres e hice un respaldo del directorio BASE,
>
> Voy a revisar el visor de logs de postgres a ver si encuentro el porque se
> borró ese archivo.
>
> No creo que pilles el por que... revisa el disco con checkdisk, y carga el
> respaldo en otra maquina ( se que tienes un respaldo, pero esta probado ? ).
>
>
> *PS: Moraleja, los respaldos se deben sacar de forma automática, no
> confíes en humanos para hacer tareas de maquinas y debes tener un DR plan (
> respaldos fuera de la maquina y/o respaldados en dos lugares. En lo
> personal saco respaldo semanales, mensuales y anuales con retención 4 en
> cada ítem para bases importantes en un Storage remoto en otro datacenter. (
> paranoico pero eso me salvo la vida una vez una carga de datos errónea que
> necesite un respaldo de 2 años atrás ).*
>
> El sáb., 23 mar. 2019 a las 11:49, Lucas Luengas (<lucasluengas(at)gmail(dot)com>)
> escribió:
>
>> Hola.
>>
>> Lo primero que yo haría sería comprobar si la base de datos arranca y
>> para correctamente. Aunque quizás no se acceda a todos sus objetos.
>> Si la base de datos arranca y para correctamente, lo primero que yo haría
>> sería hacer un backup del estado actual antes de proceder con ninguna
>> acción (suponiendo que se pueda hacer backup, espero que sí).
>>
>> Lo segundo que haría sería revisar los logs postgres y el visor de
>> sucesos de Windows porque algunos mensajes iniciales de Postgres en entorno
>> Windows se muestran en el visor de sucesos y quizás puedan ser de interés.
>> A partir de los logs puedes investigar más a fondo.
>>
>> Lo tercero: por la captura de pantalla, el error lo ofrece Pgadmin. ¿Lo
>> ofrece al acceder a alguna tabla en concreto, a todas las tablas, al
>> conectar a la base de datos?
>>
>> Lo cuarto: comprueba si se puede entrar a la base de datos por línea de
>> comandos vía psql, y en caso afirmativo si puedes hacer select de las
>> tablas de la base de datos.
>>
>> Lo que he comentado no soluciona el problema, pero ayuda a averiguar
>> el/los problemas concretos de fondo.
>>
>> Saludos.
>>
>>
>>
>>
>>
>> On Sat, Mar 23, 2019 at 3:23 PM Jairo Graterón <jgrateron(at)gmail(dot)com>
>> wrote:
>>
>>> Buen día lista,
>>>
>>> Tengo el siguiente problema
>>>
>>> [image: image.png]
>>>
>>> Ocurrió al apagarse repentinamente el servidor porque falló el sistema
>>> eléctrico y su sistema de respaldo.
>>>
>>> El administrador de sistema no hizo los respaldos respectivos y no hay
>>> backup de éste año.
>>>
>>> Es una empresa pequeña y tiene un servidor con postgres 9.2. corriendo
>>> sobre Windows 7.
>>>
>>> Ese sistema lo instalé hace como 10 años y la BD nunca había dado
>>> problemas.
>>>
>>> Alguna sugerencia de cómo recuperar la BD?
>>>
>>> PD.
>>>
>>> Tengo un respaldo del año pasado, no se si sirva para algo.
>>>
>>> Gracias
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Horacio Miranda 2019-03-25 22:27:46 Re: Probelmas con TOAST excede espacio en disco
Previous Message Edwin Quijada 2019-03-25 15:55:51 Re: Probelmas con TOAST excede espacio en disco