Форум программистов, компьютерный форум, киберфорум
PostgreSQL
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 35

Частичный бэкап базы PSTGRS

10.11.2016, 10:36. Показов 3375. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Друзья,подскажите по такому вопросу:

Есть большая база на Postgres 9.3,необходимо сделать её неполный бекап для различных тестов и оптимизации скриптов.Тоесть например ограничить так чтобы бекап делался с ограничением по таблицам в 10000 записей.

Немножко уточню,что имеется ввиду полноценный бекап со всеми таблицами но ограниченный по строкам максимум в 10000

или же например ограничить по времени,тоесть снять записи из таблицы за определённый небольшой промежуток времени.

pg_dump мне показался подходящим и самый близкий по смыслу параметр для этого -exclude-table-data,но как его применить для такой цели не приходит в голову.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.11.2016, 10:36
Ответы с готовыми решениями:

Как остановить бэкап базы в pgAdmin4?
Доброго вечера. Вопрос мне кажется элементарным, но, к сожалению, в администрировании бд я ни в зуб ногой, и поэтому прощу помощи у вас....

Бэкап базы...
Здравствуйте друзья. Не могли бы Вы (у кого из вас конечно она есть) выложить бэкап базы данных Northwind. Есть приложение которое Я...

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

4
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
10.11.2016, 12:57
SQL
1
2
3
4
CREATE TABLE export_table AS
SELECT *
FROM example_table
LIMIT 10000
Bash
1
pg_dump --table=export_table --data-only --column-inserts my_database > data.sql
или воспользоваться командой COPY
0
1264 / 978 / 384
Регистрация: 02.09.2012
Сообщений: 3,021
10.11.2016, 13:32
Цитата Сообщение от Lukskywalker Посмотреть сообщение
Есть большая база на Postgres 9.3,необходимо сделать её неполный бекап для различных тестов и оптимизации скриптов.Тоесть например ограничить так чтобы бекап делался с ограничением по таблицам в 10000 записей.
Не очень здравая идея, объясню почему.
Из коробки такого решения нет и с помощью pg_dump вы такого не сделаете.
Основная проблема не столько в данных (их количестве), сколько в обеспечении целостности базы (и бакапа).
Не забывайте, что между таблицами есть связи (foreign keys) и вам нужно сохранить эти связи, делая ваш бакап.
А вот это может быть настолько трудоемкой задачей, что, честное слово, проще не мудрить, а найти место на полноценный бакап и уже нормально заниматься оптимизацией. Евгений М., показал вам пример для одной таблицы, а теперь представьте, что нужно сделать, если таких таблиц 20, 30,.... , да еще со сложными связями между собой.
А в результате еще не факт, что, например, 10000, будет достаточно, чтобы точно проанализировать исполнение запроса.

Так что мой совет, не тратить время на такие сложные поделки, а сделать полновесный бакап.
1
0 / 0 / 0
Регистрация: 11.10.2012
Сообщений: 35
10.11.2016, 17:08  [ТС]
Как говорится не я решаю так надо сделать)

Думаю я буду пробовать таким способом
Сначала обычный pg_dump,но который будет включать в себя только структуру

а потом воспользуюсь линуксом и сделаю копирование данных из таблиц по такому скрипту

Bash
1
2
3
4
tables=$(psql -d a -tXa -c "COPY(select concat(schemaname,'.',tablename) as tables from pg_tables) to '/tmp/tlist'")
for i in $(cat /tmp/tlist); do
psql -d a -tXa -c "\COPY (SELECT * from $i limit 10000) TO '/tmp/$i.csv' DELIMITER ',' CSV HEADER;";
done

Но я не исключаю что не получится восстановить из за потерянных связей но зато смогу убедить что нужно делать полный бек)
0
1264 / 978 / 384
Регистрация: 02.09.2012
Сообщений: 3,021
11.11.2016, 05:23
Цитата Сообщение от Lukskywalker Посмотреть сообщение
Но я не исключаю что не получится восстановить из за потерянных связей но зато смогу убедить что нужно делать полный бек)
Я бы сказал, что не только не получится восстановить, но и сделать нормально бакап тоже не получится.
Вы ведь схему переносите один-в-один, значит все связи и ограничения в бакап-схеме присутствуют.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.11.2016, 05:23
Помогаю со студенческими работами здесь

Бэкап базы Oracle
Господа, возникла такая проблема, имеется Win server 2008 x64 бит, Oracle 11g, ну и база на этой системе. Необходимо сделать полный бэкап...

Бэкап базы MS SQL
Подскажите пожалуйста как через FireDac сделать бэкап с отображением %

Клиентская чать и бэкап базы
Может не в ту ветку пишу... Есть такой вопрос: На сегодняшний момент есть база данных на sql server2005 и клиентское приложение на c#....

Автоматический бэкап большой динамичной базы
Есть база данных MySQL от сайта: 70 таблиц (InnoDB и MyISAM), 30 миллионов записей, 3 Гб, постоянные запросы (часто UPDATE и INSERT). Как...

ISPmanager не делается бэкап базы MySQL
Здравствуйте! Не бэкапятся базы MySql через стандартное средство IPSmanager. Все настроено, базы отмечены на бекап, но все бэкап-файл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru