Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Удалил файлы в папке base / 25 сообщений из 35, страница 1 из 2
01.07.2020, 11:00
    #39974849
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Всем привет,

удалил файлы в папке base.

Папки по 1Гб две верхние.

На что это может повлиять, стоит их восстановить с асинхронной ноды?

При это все продолжает работать и данные все есть, как так можно удалить 2ГБ и все дальше работает? Вакум?

/home/DATA/base/15467722 -----------------------------------------------------------------------------------
/..
1,0 GiB [##########] 15489904
1,0 GiB [######### ] 15489904.1
575,6 MiB [##### ] 15590540
...
Рейтинг: 0 / 0
01.07.2020, 11:05
    #39974851
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
qecz,

И будет работать пока к данным таблиц которые в этих файлах лежали - кто то не обратиться. Тогда он ошибку получит.
Нормально восстановить уже нельзя... надо или на реплику переключаться или из backup базу наливать.

ps: очень интересуюсь - а зачем вы это сделали?
...
Рейтинг: 0 / 0
01.07.2020, 12:12
    #39974869
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Maxim Boguk
qecz,

И будет работать пока к данным таблиц которые в этих файлах лежали - кто то не обратиться. Тогда он ошибку получит.
Нормально восстановить уже нельзя... надо или на реплику переключаться или из backup базу наливать.

ps: очень интересуюсь - а зачем вы это сделали?


много места занимали
...
Рейтинг: 0 / 0
01.07.2020, 12:41
    #39974877
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Если у Вас до сих пор ни чего не упало, рискну предположить, что это были template0 и template1.
...
Рейтинг: 0 / 0
01.07.2020, 13:03
    #39974883
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Guzya,

Как узнать что за таблицы?

Это информации не даёт.

Обратное преобразование relfilenodes на 9.4 версии

Если Вы используете версию 9.4, или более свежую, то для Вас следующая часть проста:

SELECT pg_filenode_relation(0, 3720450);

(0 означает «табличное пространство по умолчанию»)

Эта функция выполняет обратное преобразование relfilenode за вас. Таким образом, она просто покажет Вам имя таблицы. Для него не будет показана связь с какой-то схемой, если полученное имя таблицы принадлежит текущему search_path; Можно использовать SET search_path = ''; перед выполнением функции, для того, чтобы был указан путь вплоть до схемы.

Вы должны быть подключены к правильной базе данных, или будет получен неправильный ответ, либо вообще ответ не будет получен.
...
Рейтинг: 0 / 0
01.07.2020, 13:05
    #39974884
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Maxim Boguk,

почему нельзя обратно скопировать? смотрю на реплике они не меняются.

Как узнать имена таблиц?
...
Рейтинг: 0 / 0
01.07.2020, 13:24
    #39974886
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Guzya
Если у Вас до сих пор ни чего не упало, рискну предположить, что это были template0 и template1.


в template0/1 не должно быть гигабайтных таблиц.
...
Рейтинг: 0 / 0
01.07.2020, 14:02
    #39974903
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Уточните где и что Вы удалили, т.е. Вы в base\... удалили или base\[номер]\...
Укажите путь до папки в которой Вы удалили.
...
Рейтинг: 0 / 0
01.07.2020, 14:13
    #39974909
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Если использовать пути из первого поста

Код: sql
1.
2.
3.
4.
5.
select oid,* from pg_database where oid = 15467722;

--- подключаетесь к нужной БД

select relname from pg_class where relfilenode in (15489904);



Файл 15489904.1 это та же таблица что и 15489904.
...
Рейтинг: 0 / 0
01.07.2020, 14:21
    #39974911
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Guzya,

благодарю есть описание

"pg_toast_15489901"
...
Рейтинг: 0 / 0
01.07.2020, 14:44
    #39974914
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Теперь можно, что то такое сделать

Код: sql
1.
2.
3.
select oid ,relname
from pg_class 
where reltoastrelid = (select oid from pg_class where relname='pg_toast_15489901')



TOAST
...
Рейтинг: 0 / 0
01.07.2020, 15:15
    #39974921
ded_pyhto
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
В Linux'e пока файл используется он не удаляется, пока будет работать PostgreSQL место не освободится.

теоретически их можно восстановить, инструкция:
https://www.linux.com/news/bring-back-deleted-files-lsof/
...
Рейтинг: 0 / 0
01.07.2020, 15:38
    #39974930
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
ded_pyhto, благодарю за помощь

появился новый файл

/..
1,0 GiB [##########] 151122600
575,6 MiB [##### ] 151001153

--
pg_toast_151122597


realname
"151122597" "config"
...
Рейтинг: 0 / 0
01.07.2020, 15:49
    #39974935
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
ded_pyhto
В Linux'e пока файл используется он не удаляется, пока будет работать PostgreSQL место не освободится.

теоретически их можно восстановить, инструкция:
https://www.linux.com/news/bring-back-deleted-files-lsof/

сомневаюсь, что поможет на работающей базе.
но наверное попробовать можно. хуже уже не будет.
...
Рейтинг: 0 / 0
01.07.2020, 16:14
    #39974956
ded_pyhto
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
mefman,

ну да, самое правильное было бы пока база работает запустить backup потом остановить базу и сделать restor.
...
Рейтинг: 0 / 0
01.07.2020, 16:49
    #39974967
ded_pyhto
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
mefman,

а ещё можно попробовать сделать так:
командами:
Код: python
1.
2.
lsof|grep '15489904'
lsof|grep '15489904.1'


получить нужную информацию.

Далее в разных OS сессиях запускаем:

tail -f < /proc/(info from lsof|grep '15489904')/fd/(info from lsof|grep '15489904') > /dev/null
tail -f < /proc/(info from lsof|grep '15489904.1')/fd/(info from lsof|grep '15489904.1') > /dev/null

останавливаем базу.

Снова делаем:

Код: python
1.
2.
lsof|grep '15489904'
lsof|grep '15489904.1'



(поменялись номера процессов и дескриптор файлов)
делаем:
cp /proc/(info from lsof|grep '15489904')/fd/(info from lsof|grep '15489904') /home/DATA/base/15467722/15489904
cp /proc/(info from lsof|grep '15489904.1')/fd/(info from lsof|grep '15489904.1') /home/DATA/base/15467722/15489904.1

по идее база уже остановлена и стертые файлы будут держать только tail процессы, поэтому файлы должны быть консистентны.
...
Рейтинг: 0 / 0
01.07.2020, 17:12
    #39974977
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
qecz

realname
"151122597" "config"


Таблица config с гиговыми toast.... 1C чтоли?
Чего вы добиться то хотите в итоге не я пойму?
...
Рейтинг: 0 / 0
01.07.2020, 17:31
    #39974986
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
Maxim Boguk, все верно, сейчас восстановить данные или оставить как есть, базы продолжают работать
...
Рейтинг: 0 / 0
01.07.2020, 17:39
    #39974992
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
ded_pyhto, благодарю

lsof|grep '15489904'
нет информации

lsof|grep по родительской папке дает инфо, но там нету удаленных файлов.
...
Рейтинг: 0 / 0
01.07.2020, 19:00
    #39975042
ded_pyhto
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
qecz
ded_pyhto, благодарю

lsof|grep '15489904'
нет информации

lsof|grep по родительской папке дает инфо, но там нету удаленных файлов.


a что показывает
Код: python
1.
lsof |grep '/home/DATA/base/15467722'|grep deleted


или
Код: python
1.
lsof |grep '/home/DATA/base'|grep deleted


?
...
Рейтинг: 0 / 0
01.07.2020, 19:14
    #39975048
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
ded_pyhto, нету инфы, прошло больше суток.

Так показывает lsof|grep deleted вообще другие файлы
...
Рейтинг: 0 / 0
01.07.2020, 23:42
    #39975097
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
qecz
прошло больше суток

тогда можно подождать и еще
...
Рейтинг: 0 / 0
02.07.2020, 09:08
    #39975172
qecz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
mefman,

Подождал, всё работает.

конфигуратор не находит проблем в базе

Посоветуйте как проверить консистенцию базы pgcenter? там надо выбирать пид, какой выбрать?
...
Рейтинг: 0 / 0
02.07.2020, 10:17
    #39975223
mefman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
qecz
mefman,

Подождал, всё работает.

конфигуратор не находит проблем в базе

Посоветуйте как проверить консистенцию базы pgcenter? там надо выбирать пид, какой выбрать?

Чувак, твоя база мертва (если ты действительно удалил файлы в base, а ничего не перепутал). База не запустится если ее положить.
Нужно восстанавливаться из бекапа(если ты понимаешь о чем я)

Не понимаю что за конфигуратор и причем тут pgcenter...
...
Рейтинг: 0 / 0
02.07.2020, 10:24
    #39975226
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалил файлы в папке base
mefman
qecz
mefman,

Подождал, всё работает.

конфигуратор не находит проблем в базе

Посоветуйте как проверить консистенцию базы pgcenter? там надо выбирать пид, какой выбрать?

Чувак, твоя база мертва (если ты действительно удалил файлы в base, а ничего не перепутал). База не запустится если ее положить.
Нужно восстанавливаться из бекапа(если ты понимаешь о чем я)

Не понимаю что за конфигуратор и причем тут pgcenter...


"конфигуратор" - конфигуратор 1С (gui которая собственно этот гиговый blob конфига 1С и редактирует который в таблице config живет)
как вариант - у пользователя много 1С баз (это очень частое явление) и удалили в той базе которая реально никому уже не нужна (например).
точнее тут спец по 1С нужен а не по постгресу.

ps: рекомендация "восстанавливаться из бекапа" остается в силе впрочем (или на реплику переключиться если там эти файлы на месте).
pps: сильное желание сделать подфорум 1C-postgresql (чтобы НИКОГДА туда не заглядывать для сохранности нервных клеток и личного времени), 80% самых неадекватных и странных вопросов в этом форуме так или иначе оказываются 1С-related.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Удалил файлы в папке base / 25 сообщений из 35, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]