powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Восстановление из дампа идет ооочень долго
20 сообщений из 20, страница 1 из 1
Восстановление из дампа идет ооочень долго
    #39007590
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
С сервера бд(centOS, postgresql 9.3) сделан (pg_dump dbname --username usern | gzip > dbbackup.out.gz)
и перенесен на тестовую машину(одноядерный пентиум 2,8, гиг оперативки, CentOS 6.6, Postgresql 9.3) дамп, там же разархивирован и запущено восстановление из него( psql dbname < dbbackup.out --username usern )
Дамп базы весит примерно 32 гига, сама база на сервере весит более 50 гигов.

Процесс восстановления идет очень медленно , за сутки размер каталога data достиг примерно 1,5 гигов.
Получается этот процесс займет месяц? Возможно ли как-то ускорить процесс? Что я делаю не так?
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007685
li_malina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Zilberstein,

Может попробовать выгрузить dump в формате для pg_restore и восстанавливаться pg_restore
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007706
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZilbersteinДобрый день.
С сервера бд(centOS, postgresql 9.3) сделан (pg_dump dbname --username usern | gzip > dbbackup.out.gz)
и перенесен на тестовую машину(одноядерный пентиум 2,8, гиг оперативки, CentOS 6.6, Postgresql 9.3) дамп, там же разархивирован и запущено восстановление из него( psql dbname < dbbackup.out --username usern )
Дамп базы весит примерно 32 гига, сама база на сервере весит более 50 гигов.

Процесс восстановления идет очень медленно , за сутки размер каталога data достиг примерно 1,5 гигов.
Получается этот процесс займет месяц? Возможно ли как-то ускорить процесс? Что я делаю не так?

В общем да делать dump в custom формате и восстанавивать через pg_restore.
Возможно еще посмотреть на настройки базы на тестовом сервере (далеко не факт что они вменяемы).
Учитывая размер базы и сколько у вас оперативки я бы сказал что в любом случае это будет ОЧЕНЬ надолго если у вас диск не SSD, и упираться и в диск и в процессор будет (но вероятнее всего в диск).
Посмотрите по top и по iostat - что у вас на 100% занято диск или процессор или и то и другое.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007787
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim BogukВ общем да делать dump в custom формате и восстанавивать через pg_restore.
Возможно еще посмотреть на настройки базы на тестовом сервере (далеко не факт что они вменяемы).
Учитывая размер базы и сколько у вас оперативки я бы сказал что в любом случае это будет ОЧЕНЬ надолго если у вас диск не SSD, и упираться и в диск и в процессор будет (но вероятнее всего в диск).
Посмотрите по top и по iostat - что у вас на 100% занято диск или процессор или и то и другое.


Приведите пожалуйста примеры команд дампа в кастом формате и обратной ей pg_restore.
Упирается в диск: iostat показывает 92-94% загрузки диска, top показывает всего 10-12% загрузки процессом postmaster.
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007788
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор ещё может в базу с предвосстановленными схемами выгружатся -- т.е. со всеми включенными механизмами логической целостности и прочими триггерами. а это совсем кирдык.
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007790
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZilbersteinПриведите пожалуйста примеры команд дампа в кастом формате и обратной ей pg_restore.

Код: python
1.
2.
>pg_dump --help
>pg_restore --help


и вдумчиво почитать оное
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007834
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZilbersteinMaxim BogukВ общем да делать dump в custom формате и восстанавивать через pg_restore.
Возможно еще посмотреть на настройки базы на тестовом сервере (далеко не факт что они вменяемы).
Учитывая размер базы и сколько у вас оперативки я бы сказал что в любом случае это будет ОЧЕНЬ надолго если у вас диск не SSD, и упираться и в диск и в процессор будет (но вероятнее всего в диск).
Посмотрите по top и по iostat - что у вас на 100% занято диск или процессор или и то и другое.


Приведите пожалуйста примеры команд дампа в кастом формате и обратной ей pg_restore.
Упирается в диск: iostat показывает 92-94% загрузки диска, top показывает всего 10-12% загрузки процессом postmaster.

Мало памяти при неверно настроенной базе при слабых дисках - вот и имеем что имеем.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007888
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim BogukМало памяти при неверно настроенной базе при слабых дисках - вот и имеем что имеем.

И все же что понимается под неверными настройками базы? На тестовой машине только установлена Postgresql и
выполнены следующие команды:
$ su – postgres
$ psql
postgres=# create user username unencrypted password 'passwd' ;
postgres=# create database dbname owner username ;
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007953
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZilbersteinMaxim BogukМало памяти при неверно настроенной базе при слабых дисках - вот и имеем что имеем.

И все же что понимается под неверными настройками базы? На тестовой машине только установлена Postgresql и
выполнены следующие команды:
$ su – postgres
$ psql
postgres=# create user username unencrypted password 'passwd' ;
postgres=# create database dbname owner username ;

Настройки базы по умолчанию рассчитаны на установку на сервер 20 летней давности.
Никакой разумной производительности от настроек по умолчанию В ПРИНЦИПЕ не стоит ожидать ни на каких задачах.


--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007963
ОКТОГЕН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://pgtune.leopard.in.ua/
Это поможет оттюнить хотя бы как-то для начала
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39007984
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОКТОГЕНЭто поможет оттюнить хотя бы как-то для начала
Спасибо, буду пробовать
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39008058
li_malina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Zilberstein,

pg_dump -I -h (ip hosts) -p port -U user -F c -v -f "имя файла" имя базы
pg-restore -h hosts -p port -U user -d имя базы имя файла
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39008060
li_malina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
li_malina,

прощу прощения -F C
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39008546
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
li_malinaZilberstein,

pg_dump -I -h (ip hosts) -p port -U user -F c -v -f "имя файла" имя базы
pg-restore -h hosts -p port -U user -d имя базы имя файла

Спасибо, а что за ключ "-I" в мануале не нашел такого...
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39008845
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
li_malinaZilberstein,

pg_dump -I -h (ip hosts) -p port -U user -F c -v -f "имя файла" имя базы
pg-restore -h hosts -p port -U user -d имя базы имя файла

Сделал дамп:
pg_dump -U username -F C -v -f filename dbname

Получился файл ~11 гигов, перенес его на тестовый сервер и выполнил:
pg_restore -U username -d dbname filename
Через минуты 3-4 ожидания система выдает:
Убито

промониторил командой top, увидел, что загрузка процессора и памяти выше, чем при выполнении восстановления из несжатого дампа командой psql, а также, что забивается виртуальная память, лог /var/log/messages говорит о том же :
kernel: Out of memory: Kill process 20059 (pg_restore) score 945 or sacrifice child

Добавил к существующему 2Гб разделу подкачки файл подкачки также размером 2 Гб,опять запустил рестор, получил сообщение:
Out of memory
и при этом пустоту в системных логах на этот счет...
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39008913
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Zilberstein,

При этом никакие изменения в параметры postgresql.conf внесены не были?
Работа продолжается на параметрах по умолчанию?
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39009024
li_malina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Zilberstein,
правильно здесь заметили что нужно настраивать параметры в postgres.conf но если там изменить ничего нельзя те улучшить можно рассмотреть вариант переноса базы по схемам (перенести сначала например структуру,выбрать информацию о внешних ключах,отключить ограничения и по схемам грузить данные)
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39009035
li_malina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Zilberstein,

приведите размер ОП на вашем компьютере
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39009090
Zilberstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ursidoZilberstein,

При этом никакие изменения в параметры postgresql.conf внесены не были?
Работа продолжается на параметрах по умолчанию?


Нет, изменения были внесены по рекомендации калькулятора с сайта http://pgtune.leopard.in.ua/
max_connections = 5
shared_buffers = 512MB
effective_cache_size = 1536MB
work_mem = 104857kB
maintenance_work_mem = 128MB
checkpoint_segments = 32
checkpoint_completion_target = 0.7
wal_buffers = 16MB
default_statistics_target = 100

Помимо этого добавил оперативки до 2 гигов. Эффект тот же. Процесс pg_restore забивает 1,7 гига физической памяти, а когда количество занятой виртуальной памяти достигает 3 гигов - через 3 минуты после запуска команды вылетает сообщение: Out of memory
Единственная инфа по времени - в логе secure:
Jul 16 16:19:29 nautest runuser: pam_unix(runuser-l:session): session opened for user postgres by (uid=0)
Jul 16 16:19:31 nautest runuser: pam_unix(runuser-l:session): session closed for user postgres
Имеет ли смысл увеличивать файл подкачки?
...
Рейтинг: 0 / 0
Восстановление из дампа идет ооочень долго
    #39009095
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZilbersteinursidoZilberstein,

При этом никакие изменения в параметры postgresql.conf внесены не были?
Работа продолжается на параметрах по умолчанию?


Нет, изменения были внесены по рекомендации калькулятора с сайта http://pgtune.leopard.in.ua/
max_connections = 5
shared_buffers = 512MB
effective_cache_size = 1536MB
work_mem = 104857kB
maintenance_work_mem = 128MB
checkpoint_segments = 32
checkpoint_completion_target = 0.7
wal_buffers = 16MB
default_statistics_target = 100

Помимо этого добавил оперативки до 2 гигов. Эффект тот же. Процесс pg_restore забивает 1,7 гига физической памяти, а когда количество занятой виртуальной памяти достигает 3 гигов - через 3 минуты после запуска команды вылетает сообщение: Out of memory
Единственная инфа по времени - в логе secure:
Jul 16 16:19:29 nautest runuser: pam_unix(runuser-l:session): session opened for user postgres by (uid=0)
Jul 16 16:19:31 nautest runuser: pam_unix(runuser-l:session): session closed for user postgres
Имеет ли смысл увеличивать файл подкачки?

pgtune рекомендации в принципе не расчитаны на сервера с оперативкой меньше чем в мобильном телефоне.
не удивительно что оно в swap улетает и OOM.

--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Восстановление из дампа идет ооочень долго
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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