powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как автоматически выполнять SQL-запросы
7 сообщений из 7, страница 1 из 1
Как автоматически выполнять SQL-запросы
    #35154606
vasyun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди добрые подскажите, хотя бы ключевые слова в документации. Вот по такой задаче.

Есть таблица (статистика).
Необходимо (раз например в месяц) удалять строки за определенный интервал времени, чтобы таблица не росла до бесконечности. В таблице время пишется в виде 2008-02-20 19:51:17+03

Можно ли такие вещи делать средствами самого PostgreSQL или надо скриптами через cron?

Буду очень признателен за любую помощь.
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35154662
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasyunЛюди добрые подскажите, хотя бы ключевые слова в документации. Вот по такой задаче.

Есть таблица (статистика).
Необходимо (раз например в месяц) удалять строки за определенный интервал времени, чтобы таблица не росла до бесконечности. В таблице время пишется в виде 2008-02-20 19:51:17+03

Можно ли такие вещи делать средствами самого PostgreSQL или надо скриптами через cron?

Буду очень признателен за любую помощь.
надо скриптами через cron
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35154696
vasyun
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Andrey Daeronнадо скриптами через cron

У меня аутентификация стоит md5 и менять ее на trust я бы очень не хотел.
pg_hba.conf
local all all md5

В этом случае, как через cron пускать?
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35154709
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasyun Andrey Daeronнадо скриптами через cron

У меня аутентификация стоит md5 и менять ее на trust я бы очень не хотел.
pg_hba.conf
local all all md5

В этом случае, как через cron пускать?
Дока
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35155495
Thamerlan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasyun Andrey Daeronнадо скриптами через cron

У меня аутентификация стоит md5 и менять ее на trust я бы очень не хотел.
pg_hba.conf
local all all md5

В этом случае, как через cron пускать?

Создаете файл ".pgpass" в home директории. И там прописываете необходимые credentials:
host:port:dbname:username:password

Далее локально можете соединяться без ввода пароля.
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35155592
Фотография Степан H.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pgsql с локали вроде как под trust конектится. Зачем ломиться снаружи?


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
#!/bin/sh

PGBASE=dbkernel
PSQL=/usr/local/bin/psql
USER=pgsql
QMODE='-q'
$PSQL -U $USER -d $PGBASE $QMODE -c "delete from link_tbl where date_rec<date(now())- 5"

или у Вас неистребимое желание запусать извне?

ок

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
#!/bin/sh

PSQL=/usr/local/bin/psql
DBASE=dbkernel
USER=router
IPADDR= 10 . 10 . 10 . 10 
QMODE='-q'
$PSQL -U $USER -h $IPADDR -d $DBASE $QMODE -c "delete from link_tbl where date_rec<date(now())- 5"

однако придется в pg_hba.conf прописать ІР с которой стучитесь в trust. ну и желательно выделить для работы пользователя с определенными правами.
...
Рейтинг: 0 / 0
Как автоматически выполнять SQL-запросы
    #35159407
DeWiL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы вам посоветовал посмотреть в сторону партиционных таблиц.
отпадет необходимость удалять записи по крону.
а так же уйдет понятие "разбухающая таблица"
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как автоматически выполнять SQL-запросы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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