Ayer mismo, uno de nuestros clientes se quejó de que estaba haciendo copias de seguridad en una base de datos 1C que se ejecuta en PostgreSQL. Debido a que solo les proporcionamos VPS y nada más, no sabíamos lo que estaba pasando dentro de ellos. Pero resultó que las copias de seguridad no se escriben desde hace bastante tiempo porque tampoco tienen su propio administrador y nadie las monitorea. Nos enviamos una solicitud, miramos lo que estaba pasando allí y vimos lo siguiente cuando intentamos hacer una copia de seguridad:
ERROR: pagina invalida en bloque 2196 de relacion base/349583/364737
Después de pasar 15 minutos completos, resultó que simplemente presionar el botón "Aceptar" ya no funciona y no existe una solución estándar para la palabra "Completamente". Tampoco hay guiones preparados. Como resultado, decidí que sería necesario publicar la solución encontrada para quienes usan PostgreSQL en Windows.
- Iniciamos pgAdmin.
- Inicie la herramienta de consulta y:
- La ruta a la base de datos, creo que nadie dudará con qué base de datos surgió el problema, por lo que omitiremos el método de encontrar el nombre de la base de datos sabiendo solo base/349583
- A continuación, para insertar texto: SELECCIONE pg_filenode_relation(0, 364737); – como resultado obtenemos el nombre de la tabla. Para nosotros fue la tabla “_document143_vt2652”
- Ahora necesitamos comenzar su recuperación: SET zero_danged_pages = activado; VACÍO LLENO _documento144;
- ¡Al final de la ejecución, debe volver a indexar toda la base de datos!
A propósito
antes Canal de telegramas Comparto consejos de TI para líderes empresariales para ayudarlos a descubrir dónde se pierde dinero y cómo verificar a los administradores de sistemas.