• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    在postgresql中运行sql文件并导出结果的操作

    方法一 在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

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • postgresql insert into select无法使用并行查询的解决
    • 在postgreSQL中运行sql脚本和pg_restore命令方式
    • 在postgresql中通过命令行执行sql文件
    • Postgresql的pl/pgql使用操作--将多条执行语句作为一个事务
    • Postgresql psql文件执行与批处理多个sql文件操作
    • Postgresql通过查询进行更新的操作
    • 在postgresql中结束掉正在执行的SQL语句操作
    • 基于postgresql行级锁for update测试
    • PostgreSQL 实现列转行问题
    上一篇:在postgresql中通过命令行执行sql文件
    下一篇:PostgreSql 导入导出sql文件格式的表数据实例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    在postgresql中运行sql文件并导出结果的操作 在,postgresql,中,运行,sql,