Jak wykonać / uruchomić plik .sql w PostgreSQL 9.2.6 + CentOs

19

Chciałbym wiedzieć, jak wykonać plik .sql w PostgreSQL. Używam CentOs 6.4.

Utworzyłem bazę danych i po prostu muszę uruchomić podany mi skrypt, aby utworzyć tabele.

Z góry dziękuję.

Linux Nowość B.
źródło

Odpowiedzi:

33

Użyj psql:

psql -f thefile.sql targetdatabase

Może być konieczne określenie dodatkowych parametrów, takich jak nazwa użytkownika, aby nawiązać połączenie jako, host, z którym należy się połączyć itp.

Craig Ringer
źródło
1
Cześć Craig, udało mi się uruchomić skrypt za pomocą następującego polecenia: psql -U nazwa użytkownika -d baza danych -a -f katalog / nazwa pliku Dzięki,
Linux NewB
19

Jeśli już zalogowałeś się do bazy danych, możesz użyć takich poleceń meta jak

db=# \i or \include filename

Aby uzyskać więcej informacji, patrz dok

siedmiodniowa żałoba
źródło
Ta odpowiedź była zaskakująco trudna do znalezienia w Internecie!
Joel Cross
4

Dodam to, że może się przydać, kto próbuje wykonać * .sql miejsce, w którym serwer PostgreSQL znajduje się w innym miejscu.

   psql -h localhost -d userstoreis -U admin -p 5432 -a -q -f /home/jobs/Desktop/resources/postgresql.sql

Takie jest użycie każdego parametru

-h PostgreSQL server IP address
-d database name
-U user name
-p port which PostgreSQL server is listening on
-f path to SQL script

następnie zostaniesz poproszony o podanie hasła użytkownika.

GPrathap
źródło
0

Moje rozwiązanie na Macu: muszę używać ""z psql. Uruchomiłem to z terminalem vscode

Nauczyłem się tego od postgreSQL-a runpsql.sh

"/Library/PostgreSQL/11/bin/psql" -h "localhost" -p "9000" -U "username" "database" -f data.sql
Jixuan Cheng
źródło