|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Всем добрый день. Проблема: необходимо выполнить скрипт из операционной системы Windows с использованием cmd.exe и psql.exe. В Oracle это решаемо через sqlplus @file. Вариант в PostgreSQL - зайти в psql (psql.exe -dBase -UUser -WPass) и там выполнить \i path/file не подходит из-за интерактивности. Можно ли как-то автоматизировать этот процесс? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 13:08 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Почитай про параметры коммандной строки psql.exe ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 13:33 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Спасибо, читал. Мне кажется, что строка этого совета больше времени потребовала для написания, нежели было бы написать нужную команду. Такие советы и я могу давать. ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 14:00 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Выполнение одной комманды 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 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 14:14 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Спасибо. Строку типа psql -d database -h 127.0.0.1 -U login -f filename я выпонял, но у меня не получается без интерактивного ввода пароля. Иными словами мне приходится ввводить пароль, а хотелось бы с помощью опции -W с паролем в командном файле, но вариант -W password не прокатывает почему-то. Может быть я что-то не так делаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 14:33 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486Спасибо, читал. Мне кажется, что строка этого совета больше времени потребовала для написания, нежели было бы написать нужную команду. Такие советы и я могу давать. ;) Нет не можешь. Ибо непригоден ты к чтению хелпа физически (ынвалыд юзер). И как таких кретинов на работу берут... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 14:36 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Другого и не ожидал :) Есть хорошая детская сказка про Крошку-енота... Вам бы ее почитать ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 14:42 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486... но у меня не получается без интерактивного ввода пароля. Иными словами мне приходится ввводить пароль, а хотелось бы с помощью опции -W с паролем в командном файле, но вариант -W password не прокатывает почему-то. Может быть я что-то не так делаю. PGPASSWORD ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:08 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
LeXa NalBat, спасибо за вариант. А существует иной вариант (не через .pgpass file) с указанием пароля в командном файле или скрипте? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 15:23 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486LeXa NalBat, спасибо за вариант. А существует иной вариант (не через .pgpass file) с указанием пароля в командном файле или скрипте? Наверное лучший вариант самому написать консольное приложение со всеми нужными функциями! ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 16:31 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
:) Это как крайний вариант. Я работаю в Oracle и, похоже, обленился :), так как привык, что все, что ни придумешь уже придумано - используй copy-paste, ан нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 16:44 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486:) Это как крайний вариант. Я работаю в Oracle и, похоже, обленился :), так как привык, что все, что ни придумешь уже придумано - используй copy-paste, ан нет...а как в Oracle пароль в sqlplus передаётся ? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 16:48 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Вот вариант для пользователя 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 ================ ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 17:10 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
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 ================ ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 17:27 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Да, очень удобно. Вот вариант попроще для обычного пользователя (пароль в командном файле): ============== 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 ================ ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 17:42 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ёш============== 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 Пароль по-прежнему требуется. :( Что-то не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 17:51 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ёш============== file example.cmd ================ PGPASSWORD=мойпароль psql -f test_script.sql ============== file example.cmd ================ Спасибо, это другое дело :) Только, слегка подправил: set PGPASSWORD=мойпароль ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 17:57 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486, если под виндой SET PGPASSWORD=mypassword -W - не использовать ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 18:03 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ingvar486, Опоздал. Молодец, сам догадался. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 18:04 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Всем, не черствым душой, большое спасибо. Вопрос закрыт. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2010, 18:27 |
|
Как выполнить скрипт через psql из операционной системы Windows
|
|||
---|---|---|---|
#18+
Ещё можно в pg_hba.conf вместо md5 поставить trust в колонке «method» для подключений ipv4,ipv6 - это для того, чтобы не запрашивался пароль, но это так же небезопасно как и при явном указании пароля в файле с командами. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2021, 09:46 |
|
|
start [/forum/topic.php?fid=53&msg=36478224&tid=1994011]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 258ms |
total: | 391ms |
0 / 0 |