powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как выполнить скрипт через psql из операционной системы Windows
21 сообщений из 21, страница 1 из 1
Как выполнить скрипт через psql из операционной системы Windows
    #36477410
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день.

Проблема: необходимо выполнить скрипт из операционной системы Windows с использованием cmd.exe и psql.exe.

В Oracle это решаемо через sqlplus @file.
Вариант в PostgreSQL - зайти в psql (psql.exe -dBase -UUser -WPass) и там выполнить \i path/file не подходит из-за интерактивности. Можно ли как-то автоматизировать этот процесс?
Спасибо.
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477501
Почитай про параметры коммандной строки psql.exe
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477599
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, читал.
Мне кажется, что строка этого совета больше времени потребовала для написания, нежели было бы написать нужную команду.
Такие советы и я могу давать. ;)
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477647
N&V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
N&V
Гость
Выполнение одной комманды
psql -h 127.0.0.1 -p 5432 -U postgres -d test -c "DELETE FROM my_table;"

Выполнение скрипта
psql -h 127.0.0.1 -p 5432 -U postgres -d test -f "run_my_script.sql"

Все это есть в psql --help
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477713
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо.

Строку типа psql -d database -h 127.0.0.1 -U login -f filename
я выпонял, но у меня не получается без интерактивного ввода пароля.
Иными словами мне приходится ввводить пароль, а хотелось бы с помощью опции -W с паролем в командном файле, но вариант -W password не прокатывает почему-то. Может быть я что-то не так делаю.
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477723
Ingvar486Спасибо, читал.
Мне кажется, что строка этого совета больше времени потребовала для написания, нежели было бы написать нужную команду.
Такие советы и я могу давать. ;)
Нет не можешь. Ибо непригоден ты к чтению хелпа физически (ынвалыд юзер). И как таких кретинов на работу берут...
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477749
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Другого и не ожидал :)
Есть хорошая детская сказка про Крошку-енота...
Вам бы ее почитать ;)
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477857
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ingvar486... но у меня не получается без интерактивного ввода пароля.
Иными словами мне приходится ввводить пароль, а хотелось бы с помощью опции -W с паролем в командном файле, но вариант -W password не прокатывает почему-то. Может быть я что-то не так делаю. PGPASSWORD
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36477899
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LeXa NalBat,

спасибо за вариант.
А существует иной вариант (не через .pgpass file) с указанием пароля в командном файле или скрипте?
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478106
Garik888
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ingvar486LeXa NalBat,

спасибо за вариант.
А существует иной вариант (не через .pgpass file) с указанием пароля в командном файле или скрипте?

Наверное лучший вариант самому написать консольное приложение со всеми нужными функциями!
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478146
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
:)
Это как крайний вариант.
Я работаю в Oracle и, похоже, обленился :), так как привык, что все, что ни придумешь уже придумано - используй copy-paste, ан нет...
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478157
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ingvar486:)
Это как крайний вариант.
Я работаю в Oracle и, похоже, обленился :), так как привык, что все, что ни придумешь уже придумано - используй copy-paste, ан нет...а как в Oracle пароль в sqlplus передаётся ?
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478224
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот вариант для пользователя SYS (роль SYSDBA):

============== file example.cmd ================
sqlplus /nolog @test_script.sql
============== file example.cmd ================


============== file test_script.sql ================
Connect sys/mypass@mydbname as sysdba
select 2*2 from dual;
quit
============== file test_script.sql ================
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478286
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ingvar486============== file test_script.sql ================
Connect sys/mypass@mydbname as sysdba
. . .а, прямо в файле пишется, понятно, спасибо :)

============== file example.cmd ================
PGPASSWORD=мойпароль
psql -f test_script.sql
============== file example.cmd ================

============== file test_script.sql ================
\c mydbname sys
select 2*2;
\q
============== file test_script.sql ================
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478331
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, очень удобно.

Вот вариант попроще для обычного пользователя (пароль в командном файле):

============== file example.cmd ================
sqlplus mylogin/mypass@mydbname @test_script.sql
============== file example.cmd ================


============== file test_script.sql ================
select 2*2 from dual;
quit
============== file test_script.sql ================
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478369
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёш============== file example.cmd ================
PGPASSWORD=мойпароль
psql -f test_script.sql
============== file example.cmd ================

============== file test_script.sql ================
\c mydbname sys
select 2*2;
\q
============== file test_script.sql ================
У меня не работает переменная PGPASSWORD
Пароль по-прежнему требуется. :(
Что-то не так?
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478390
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёш============== file example.cmd ================
PGPASSWORD=мойпароль
psql -f test_script.sql
============== file example.cmd ================

Спасибо, это другое дело :)
Только, слегка подправил: set PGPASSWORD=мойпароль
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478402
N&V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
N&V
Гость
Ingvar486,

если под виндой
SET PGPASSWORD=mypassword
-W - не использовать
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478408
N&V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
N&V
Гость
Ingvar486,

Опоздал.
Молодец, сам догадался.
...
Рейтинг: 0 / 0
Как выполнить скрипт через psql из операционной системы Windows
    #36478467
Ingvar486
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем, не черствым душой, большое спасибо.
Вопрос закрыт.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как выполнить скрипт через psql из операционной системы Windows
    #40074603
Olesya_86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ещё можно в pg_hba.conf вместо md5 поставить trust в колонке «method» для подключений ipv4,ipv6 - это для того, чтобы не запрашивался пароль, но это так же небезопасно как и при явном указании пароля в файле с командами.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как выполнить скрипт через psql из операционной системы Windows
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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