powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сделать backup через запрос
8 сообщений из 8, страница 1 из 1
Сделать backup через запрос
    #35386477
Shagrat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Идея такая что юзер перед критической операцией над всей базой делал бекап, но посредством запроса на сервер (через процедуру).

Также как pg_dump в файл.
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35388073
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напишите функцию на untrusted языке вызывающую pg_dump


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35389366
Shagrat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно ли используя pg_start_backup?

Если да то как? И под WIndows
Пытался запустить - ничего не получилось
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35389572
iz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iz
Гость
ShagratА можно ли используя pg_start_backup?

Если да то как? И под WIndows
Пытался запустить - ничего не получилось

pg_start_backup() не делает бекап, она лишь переводит PostgreSQL в режим, пригодный для бекапа директории PGDATA на файловом уровне. Через процедуру бекап (в обычном понимании записи данных в файл) можно сделать только так, как сказал Ёш. Другое дело, что вы можете, к примеру, писать данные в клиентское соединение и затем бекапить с помощью собственного клиентского приложения.
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35396477
Shagrat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Придется наверно dll писать. Или есть уже готовые решения?
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35396530
Shagrat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мнебы чтонибуть типа PL/sh только для Windows
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35397047
Serik Akhmetov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно написать ХП, которая просто вызовет для всех таблиц COPY.
...
Рейтинг: 0 / 0
Сделать backup через запрос
    #35399707
Shagrat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отвечаю на свой вопрос

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE OR REPLACE FUNCTION makebackup()
  RETURNS integer AS
'return system("d:/backup/postgres/postfres.cmd");'
  LANGUAGE 'plperlu' VOLATILE STRICT SECURITY DEFINER;
ALTER FUNCTION makebackup() OWNER TO postgres;

--------------- postfres.cmd --------------------------
SET BACKUPName=d:\backup\PostGres\%RANDOM%.backup
call d:\backup\PostGres\bin\pg_dump.exe -i -h DataServer -p  5432  -U postgres -F c -b -v -f "%BACKUPName%" "Smaple"

Перед запуском нужно еще прописать в pg_hba.conf: "host all dumper 127.0.0.1/32 trust"
И создать пользователя dumper (С паролем). Если этого не сделать то бекап запустится но система у pg_dump спросит пароль, только ввести его некому будет. Тем самым процес повиснет.

Запускать SELECT * FROM makebackup();

Спасибо за помощь, собрать pl/sh так и неудалось под винду.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Сделать backup через запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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