方法一 在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" set PGPASSWORD="D:/sql_bak/pws.vbs" SET PGPATH="D:/Program Files/PostgreSQL/10/bin/pg_dump" SET SVPATH=D:/sql_bak/ SET PRJDB=fame SET DBUSR=postgres FOR /F "TOKENS=1,2,3 DELIMS=/ " %%i IN ('DATE /T') DO SET d=%%i-%%j-%%k FOR /F "TOKENS=1,2,3 DELIMS=: " %%i IN ('TIME /T') DO SET t=%%i%%j%%k SET DBDUMP=%PRJDB%_%d%_%t%.sql %PGPATH% -h 127.0.0.1 -p 5432 -U %DBUSR% %PRJDB% > %SVPATH%%DBDUMP% echo Backup Taken Complete %SVPATH%%DBDUMP%
将以上文件保存为 bat格式。
PGPATH
:postgresqsl 安装目录
SVPATH
:备份路径
PRJDB
:数据库名字
DBUSR
:用户名
数据库修改配置文件:pg_hba.conf
设了对本地要密码md5认证。
# TYPE DATABASE USER CIDR-ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 md5
改成这样,本地备份就不用输入密码了(改后要重启服务)
# TYPE DATABASE USER CIDR-ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 trust
cmd 然后进入postgresql的bin目录
执行
psql -h localhost -U username -d database < d:/data.bak
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com
暂无“在postgresql中运行sql文件并导出结果的操作”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。