PostgreSQL数据库导入、导出dmp格式的数据

今天我们分享win环境PostgreSQL数据库导入、导出dmp格式的数据,同时也会顺带说一下linux环境操作dmp格式的数据操作,思路都是一致的。

首先确定我们win环境安装了psql数据库,并且处于启动状态,登录验证:

psql -h 127.0.0.1 -U postgres

或者,如果是linux尽量输入端口号127.0.0.1,如果是本机的话

psql -h localhost -U postgres

也可以直接选择数据库等参数

psql -h 127.0.0.1 -U postgres -d tdb

输入后居然报错

 核心错误:'psql' 不是内部或外部命令,也不是可运行的程序或批处理文件。

原因是啥呢,显然是没有配置环境变量,点击系统变量添加配置:

E:\Program Files\PostgreSQL\12\lib
E:\Program Files\PostgreSQL\12\bin

如图

 配置后重新打开cmd窗口,输入登录命令,进入默认数据库

1、创建数据库

create database cdb;

如图:

 

创建后也可以切换

 \c cdb

结果如图

 如果不清楚可以通过help命令查看

有5类命令查询

\h
或者
\help

 结果:

过滤查询

\help select

 结果

其他命令君可以尝试着查询

 子这个命令行窗口里,常用的sql都可以输入了

最后是推出命令 Ctrl + z 或者 \q

 2、导入数据

在非登录情况下导入

示例

psql -d demodb -h localhost -p 5432 -U postgres -f D:/sql/tdb.dmp

如图

 
关闭所有链接 登录此库操作

登录

 执行

select pg_terminate_backend(pid) from pg_stat_activity where datname='demodb';

如图

  3、导出数据

非登录情况下

pg_dump  -h localhost -p 5432 -U postgres -f D:/sql/testdb.dmp demodb

或者

pg_dump -d demodb -h localhost -p 5432 -U postgres -f D:/sql/testdb.dmp 

结果如图

 去目录下查看发现ok了。

当然也可以到成sql文件

pg_dump  -h localhost -p 5432 -U postgres -f D:/sql/testdb.sql demodb

如图

 仅仅导出某一种表

pg_dump  -h localhost -p 5432 -U postgres -f D:/sql/sate_data.sql -t data_info demodb

 如图:

 同理也 可以导入sql格式的文件,这个大家可以自己测试。

导入还有其他的选项可以参考如下文章

导入导出参考

 4、部分命令解释

-d:后面接的是数据库的名称
-h:接的是主机名
-p:接的是端口号
-U:接的是用户名
-f:接的是导出表的位置和重命名
-Fc:自定义格式
-t:后面接的是具体在哪个模式下的那张表

其他常用命令可以参考下面文章

常用命令大全

导出分享dmp格式的数据操作分享完毕,大家测试验证一遍就会了如指掌。

 

Guess you like

Origin blog.csdn.net/nandao158/article/details/129854121