c помощью pg_dump выходит ошибка:
pg_dump: Ошибка выгрузки таблицы "config": сбой в PQgetResult().
pg_dump: Сообщение об ошибке с сервера: ОШИБКА: invalid memory alloc request size 1413706665
pg_dump: Выполнялась команда: COPY public.config (filename, creation, modified, attributes, datasize, binarydata) TO stdout;
Эта тема неоднократно обсуждалась, что если размер строки больше 1гб, то выходит ошибка. Вариант решения бэкапить 3 командами вместо одной.
1. Создаем сам дамп, без проблемной таблицы.
2. Выгружаем схему проблемной таблицы.
3. Копируем таблицу в бинарном веде в файл.
$ pg_dump -Z 9 -T <таблица> -f <имя_дампа>.dump.gz <имя_базы>
где
<таблица> - config
<имя_дампа> - произвольное имя??? или откуда его взять
<имя_базы> - test
$ pg_dump -t <таблица> -s -f <имя_схемы>.shema <имя_базы>
где
<имя_схемы> - где его взять?
$ psql -d <имя_базы> -c "COPY public.<таблица> TO '/var/lib/postgresql/<имя_таблицы>.tabl' WITH BINARY;"
где
<таблица> - config
<имя_таблицы>.tabl - тоже config получается?
Где взять инфу имя_схемы, имя_дампа?
Все имена, о которых вопросы — произвольные. Это имена файлов, куда будут данные выгружаться.
Обсуждают сегодня