我有一个postgresql创建的.sql文件。我现在想将此文件导入到运行postgresql的Windows机器上。
我该怎么做该文件大约1.5gb。
答案 0 :(得分:36)
您应该使用psql命令行工具:
psql -h hostname -p port_number -U username -f your_file.sql databasename
答案 1 :(得分:14)
单击SQL Shell并登录数据库并使用import
Server [localhost]:
Database [postgres]:
Port [5432]:
Username [postgres]:
Password for user postgres:
psql (9.2.4)
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
Type "help" for help.
postgres=# \i c:/data/data01.sql
答案 2 :(得分:10)
这对我也有用:
psql dbname username < file.sql
答案 3 :(得分:4)
启动你的psql命令工具,它会给你如下对话框
Server [localhost]:
Database [postgres]:
Port [5432]:yourport
Username [postgres]:
Password for user postgres:**********
然后连接到您的数据库
postgres=# \c yourdatabase;
然后导入文件
yourdatabase=# \i c:/path/path/data/data01.sql
注意/ for目录分隔符&amp;文件路径中没有空格
答案 4 :(得分:0)
打开cmd window并输入以下内容(确保postgres的路径正确无误)
。“C:\ Program Files \ PostgreSQL \ 9.4 \ bin \ psql.exe”-h 127.0.0.1 -p 5432 -U postgres -d dbname&lt; ./ query.sql
答案 5 :(得分:0)
psql -U <dbusername>
if the prompt makes you enter password, do that.
\c <yourdatabasename>
\i 'thepathusing/delimiter.sql'
您需要注意两点
/
代替\
作为文件的写入路径。'
代替"
。答案 6 :(得分:0)
如果要使用URI连接字符串进行操作,请确保参数在URI之前,Powershell示例:
在Windows上工作:
.\psql -f TestFile.sql $connString
.\psql -c 'SELECT Version();' $connString
在Windows上不起作用(参数之前的URI连接):
.\psql $connString -c 'SELECT Version();'