方法一 在psql中运行
在终端进入用户test下的数据库testdb:
$ psql -p 5432 -U test -d testdb
假设要执行的.sql文件叫做d1.sql,存放路径为:/mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/d1.sql,导出的文件叫做d1.out,存放的路径为:/mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/out/d1.out
testdb=# o /mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/out/d1.out
testdb=# i /mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/d1.sql
testdb=# o
o file1表示接下来的内容输出到文件file1
i file2表示导入文件file2
o表示结束输出到文件file1
方法二 在终端运行
$ psql -p 5432 -U test -d testdb -f /mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/d1.sql > /mnt/hgfs/share/database/2.18.0_rc2/dbgen/queries/out/d1.out
补充:postgresql windows自动导出sql
@ECHO OFF
@setlocal enableextensions
@cd /d "%~dp0"