Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
Когда ты на сервере базы данных то psql позволяет выполнять shell команды postgres=# \! ls -l total 153888 -rw-r--r-- 1 postgres postgres 0 Aug 26 16:23 1 -rw-r--r-- 1 postgres postgres 0 Aug 26 16:25 2 -rw-r--r-- 1 postgres postgres 38185299 Jul 21 19:51 953_upgrade_21072016.dmp -rw-r--r-- 1 postgres postgres 37898664 Jul 21 19:52 9610_upgrade_21072016.dmp -rw-r--r-- 1 postgres postgres 39642090 Jul 21 19:53 upgrade_21072016.dmp -rw-r--r-- 1 postgres postgres 41845488 Jul 21 19:54 98_upgrade.dmp -rw-r--r-- 1 postgres postgres 0 Aug 26 16:23 out.log postgres=# Можно ли что-то подобное сделать удаленно и получить output в cursor. Пример python Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 20:16 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
выдает ошибку cur.execute(query) psycopg2.ProgrammingError: syntax error at or near "\" LINE 1: \! ls -l ^ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 20:17 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
pgalaktionov, Курсор conn.cursor() выполняет команды sql, а не psql. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 20:22 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
pgalaktionov, нельзя. во-первых psql выполняет команды на локальной машине (где он запущен), а не на удаленной, во-вторых когда вы так подключаетесь из python это не psql уже. если сильно хочется из запросов иметь возможность выполнять команды shell, то есть языки вроде pl/perlu, pl/sh которые можно в хранимых процедурах использовать. но нужно понимать риски безопасности. а что вообще хотите сделать? пример с pg_dump очень уж странный. его то можно и локально запустить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 20:25 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
Alexius, автора что вообще хотите сделать? пример с pg_dump очень уж странный. его то можно и локально запустить. Есть самописное на python веб приложение, для упрощения жизни ДБА в продуктовой компании. Позволяет создавать,дропать, экспортить, импортить (схемы/базы) для различных баз данных Oracle,MSSQL,SYBASE,MYSQL,POSTGRESQL Для нужд огромного кол-ва девелоперов и тестеров. Для Oracle,MSSQL,SYBASE все реализовано Необходимо теперь для PostgreSQL, реализовать возможность бэкапа/экспорта импорта баз через это приложение. Есть ли в postgresql вызовы через sql чтобы забэкапить-экспортнуть базу. ? например sybase работает Код: python 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 20:41 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
pgalaktionov, sql запроса, позволяющего снять дамп всей базы нет. скорее всего для этого придется тащить с собой и использовать pg_dump и pg_restore для восстановления из дампа. портировать их логику в код на питоне скорей всего можно, но врядли это стоит делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 21:10 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
pgalaktionovвеб приложениеТак и в чем проблема установить это приложение или его агента на сервер с БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 21:25 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
pgalaktionov, Есть несколько вариантов решения задачи Например 1) сделать скрипт (например для bash) который вызывает pg_dump с соответствующими параметрами 2) У PostgreSQL есть information_schema из которой можно вытащить всю метаинформацию по БД (таблицы, сиквенсы, индексы и пр.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2016, 07:56 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, авторЕсть несколько вариантов решения задачи Например 1) сделать скрипт (например для bash) который вызывает pg_dump с соответствующими параметрами 2) У PostgreSQL есть information_schema из которой можно вытащить всю метаинформацию по БД (таблицы, сиквенсы, индексы и пр.) Спасибо видимо, это как раз единственный правильный подход. Буду так делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 13:42 |
|
||
|
Подскажите можно ли и как. Выполнить shell command в psql соединившись удаленно?
|
|||
|---|---|---|---|
|
#18+
НАШЕЛ ВЫХОД из ситуации. ЮХУУУ Ставиться расширение yum install postgresql-plperl.x86_64 Далее через SQL CREATE LANGUAGE plperlu; Создаем функцию Код: sql 1. 2. 3. 4. 5. 6. 7. Далее Код: sql 1. Далее Код: powershell 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 15:01 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=39364942&tid=1996819]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
159ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 274ms |
| total: | 542ms |

| 0 / 0 |
