搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
IT小白
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
富文本编辑器&文件上传_移动端富文本 上传及编辑回复
2
再见Navicat,dbeaver才是真爱_dbeaver navicat
3
基于RAG的文生SQL应用(脱敏)
4
MQL5-架构和类以及界面_mql5 struct
5
Kornia:GPU加速Dataload_kornia使用gpu
6
LeetCode刷题笔记之动态规划(一)_leetcode动态规划
7
Platform编译ESP32项目提示firmware.map这个文件丢失_firmware.map: no such file or directory
8
解决鸿蒙打包BundleName不匹配问题: hvigor ERROR: BundleName in the project configuration does not match that i_hvigor error: the task to be executed in the proje
9
B4:Unity制作Moba类游戏——小兵AI系统_unity moba
10
android10的适配_targetsdkversion设置>=29后在android10+系统设备不支持当前路径。请更改为
当前位置:
article
> 正文
PG数据库之间的导入导出(pg_dumpall,pg_dump,psql,pg_restore)_mac上dump文件怎么导入到pgadmin
作者:IT小白 | 2024-07-28 16:21:47
赞
踩
mac上dump文件怎么导入到pgadmin
参考文献:
https://bbs.aliyun.com/read/247030.html?displayMode=1
本文将介绍如何对PG数据库进行导入、导出,主要利用的是PG自带的
pg_dump
、pg_dumpall、pg_restore、psql等命令,版本是9.4
(不同版本的pg_dump \ pg_restore选项可能会有些不同,请注意)
。
导出、导入的整体思路是:
- 导出全局对象,如用户、编码、权限等,产生文件global-objs.dmp
- 导出每个数据库中的对象、结构,如建库语句、用户、权限、编码、表结构、自定义类型等,产生 [库名]-objs.dmp文件,如dxm-objs.dmp
- 导出每个数据库中的数据,这里分两种来考虑,一个是某库中所有的数据(所有的表),生成单个文件dxm.dmp;一个是针对某库中每个表分别进行导出备份,每个表一个文件,以[库名]-[表名].dmp命名,如dxm-all_types.dmp
- 在目标实例上建立全局对象,即导入global-objs.dmp
- 导入对象,即dxm-objs.dmp文件中的內容
- 导入数据,根据导出的不同,分为一次导入dxm.dmp,和分别导入每个表的文件,如dxm-all_types.dmp
导出过程
可以采用以下步驟完成:
导出公共对象,比如用户、权限、编码等
导出某个库上的对象,比如表、type等
导出某个库上的数据,即各个表的数据等
之后恢复按同样的步驟恢复就可以了。
第一步,导出所有公共对象,包括编码用户、权限等
pg_dumpall命令知识点:
pg_dumpall 可以导出所有数据库,类似 pg_dump,但用得非常少,原因可能是多方面的,
1 pg_dumpall 导出所有数据库到一个脚本文件,维护不方便;
2 pg_dumpall 依次导出所有库,总耗时比并行 pg_dump 各个库要多;
3 pg_dumpall 仅支持导出文件格式,还原时不能使用 pg_restore 有效使用并行等参数。
pg_dumpall相关参数
-g 导出role和tablespace
-r 仅导出role
-t 仅导出tablespace
-f或> 导出对应的文件路径和文件名
eg.
$ pg_dumpall -g > pg92_globle.sql
$ pg_dumpall -g -f /home/data/ pg92_globle.sql
将所有的结构、对象、编码等必要信息导出
[postgres@cqs]$ pg_dumpall -h 127.0.0.1 -p 5432 -g -f /home/pg/gloable1117.dmp
第二步,导出库上的结构和对象
建议是将结构、对象与数据的导入、导出分开进行,会逻辑更清晰,也更好定位问题。
pg_dump
-h 主机地址
-p 端口号
-U 用户名
-s 选项,可以将库中所有的对象导出,而不导出数据
-a 选项,只导出数据部分,不包括结构部分
-C 选项,可以将建库的语句也输出到文件中;如果手动建库,则需要去除该选项
-O 选项,如果目标库的用户与源库不同,那么导出的时候最好带上这个选项,去除“ALTER ... OWNER TO”语句,以解决用户不存在或用户权限问题
-x 选项,会去除GRANT/INVOKE语句
-Fc选项,会采用自定义的格式,会占用较小的空间
-Fd选项,目录格式。导出的时候,"-j NUM"会多线程的导出数据,提高性能,只在"-Fd"选项下有效
...
导出某个库上的结构:
[postgres@cqs ~]$ pg_dump -h 127.0.0.1 -p 5432 -U postgres -s mydb>/home/postgres/mydb1.dump
第三步,导出数据
只导出数据部分,不包括结构部分,是"-a"选项。使用的指令是 pg_dump
导出的数据支持四种格式:SQL文件、自定义、目录、压缩格式。
SQL文件:只能通过psql来进行恢复,将SQL文件中的SQL语句进行重做,速度较慢,但较为简单,出了问题修改SQL文件即可。但数据量大了之后,单个SQL文件就可以达到很大的规模,将很难处理。
自定义的格式:会对数据进行一定的压缩,且可以利pg_restore进行并发导入。但输出的同样是单个文件,对于数据量过大,同样不太好处理。对于中等大小的实例比较合适,与SQL文件的大小简单对比如下(all_types.dmp是SQL文件):
- -rw-rw-r-- 1 dxm dxm 111736 Jun 2 18:43 all_types.cs
- -rw-rw-r-- 1 dxm dxm 1218139 Jun 2 18:04 all_types.dmp
目录的方式
目录的方式目前比较适合较大的实例,原因如下:
- 可以使用pg_dump的并发导出
- 可以使用pg_restore的并发导入
- 每个表一个文件,不至于单个文件过大(如SQL文件的方式)
- 有数据压缩
恢复数据
恢复数据的时候,根据导出的过程,先恢复对象部分,再对数据进行恢复。
首先恢复全局的信息,包括用户、编码等:
[postgres@cqs backup]$ psql -f /home/postgres/backup/gloable1117.dmp
自定义格式和目录方式,在恢复的时候都是支持多线程的,这对于大数据量有较好的效果。本次不对性能做太多分析,只看下功能。
自定义格式:
[postgres@cqs backup]$
pg_restore -j4 -Fc -h 127.0.0.1 -d xxx -U postgres -p 5432 data.dump
目录方式:
[postgres@cqs backup]$
pg_restore -Fd -h
127.0.0.1
-d dxm -U
postgres
-p 5432
data
.folder
可以看得出来, pg_restore的使用方式要简单很多。这里主要是因为将数据和对象分开来考虑了,所以这一步就只是数据。如果导出的文件包含数据和对象,通过pg_restore也是可以只恢复对象,或者数据。 另外,自定义格式和目录的方式,数据文件并不是可读的,对于数据的安全也是多了一点点保障。
另外,也可以先登录连接对应的数据库后,使用\i filename进行数据恢复
data
=# \i /home/postgres/backup/
data
.sql
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/IT小白/article/detail/894942
推荐阅读
article
安装librd
kafka
和使用C语言
操作
kafka
的
范例...
一、安装librd
kafka
。二、开启
kafka
相关服务:启动zookeeper、启动Kafka、创建topic。三、c...
赞
踩
article
珠海
空
号
检测
的运行原理_
空
号
检测
原理...
一、珠海企业为什么要使用
空
号
检测
珠海
空
号
检测
是采用现代语音通信技术批量拨打电话
号
码,得到拨打指令反馈,根据反馈结果来...
赞
踩
article
2021年
危险
化学品
生产单位
安全
生产
管理人员
考试及
危险
化学品
生产单位
安全
生产
管理人员
试题及解析_矿山...
题库来源:
安全
生产模拟考试一点通公众号小程序
安全
生产模拟考试一点通:2021年
危险
化学品
生产单位
安全
生产
管理人员
考试为正...
赞
踩
article
浅谈
人工智能
:现状、
任务
构与
统一
_
一只
乌鸦
的
启示
人工智能
...
目录引言第一节 现状:正视现实第二节 未来:
一只
乌鸦
给我们
的
启示第三节 历史:从“春秋五霸”到“战国六雄”第四节
统一
:...
赞
踩
article
How
Google
Tackles
Security
(
google
安全怎么做的强烈推荐)_如何找g...
http://www.cso.com.au/whitepaper/370196/how-
google
-tackles-s...
赞
踩
article
单片机
软件架构
连载(4)-
结构
体
_
mcu
软件
结构
体
...
语法如下:这里的
结构
体
名是你自定义的名称,用于之后引用这个
结构
体
类型。示例代码:每个类型后面跟着的是
结构
体
中的成员变量,...
赞
踩
article
【
RabbitMQ
】
RabbitMQ
消息
的
堆积
问题
,大数据开发开发社招面试经验_
rabbitmq
...
消息
的
堆积
问题
是指在
消息
队列系统中,当生产者以较快的速度发送
消息
,而消费者处理
消息
的速度较慢,导致
消息
在队列中积累并达到...
赞
踩
article
UI
设计
理念
_
ui
设计
理念
怎么写...
(作者:张江勇 撰写时间:2019.4.25)一、
设计
价值观作为自然界的一份子,自然界的方方面面都会对用户行为产生深远影...
赞
踩
article
Mysql
8.0
安装详细教程、问题处理、卸载(亲测可用)_
cannot
find
or
open
...
下载
Mysql
有压缩版zip和安装版msizip:https://dev.
mysq
l.com/get/Downloads...
赞
踩
article
flink
应用数据源不稳定导致程序宕机_
org
.
apache
.
flink
.
runtime
.jobex...
错误异常日志
org
.
apache
.
flink
.
runtime
.JobException: Recovery is sup...
赞
踩
article
鸿蒙
开发仓颉语言【
Hyperion
: 一个支持自定义
编解码器
的
TCP
通信
框架
】
架构
...
TCP
框架
客户端或者服务端的事件处理器,循环处理入栈消息,并按需要将消息出栈。
TCP
框架
客户端实现,服务端支持非Hype...
赞
踩
article
手机
空
号
检测
API
接口
怎么对接_运营商
手机
号
空
号
检测
api
接口
快速对接...
接下来就需要程序员同学来用自己擅长的编程语言把
空
号
检测
API
接口
对接到系统中,数脉
API
这边有java、python、p...
赞
踩
article
java
模块
_
JAVA9
模块
化
详解(
一
)——
模块
化
的
定义...
JAVA9
模块
化
详解前言
java
9已经出来有
一
段时间了,今天向大家介绍
一
下
java
9
的
一
个重要特性——
模块
化
。
模块
化
系统...
赞
踩
article
【
Flink
实战系列】Incremental snapshot for
t
ab
le
s requir...
getChunkKeyColumn 方法其实就是获取表的主键信息,如果没有获取到的话,会直接抛出 ValidationE...
赞
踩
article
SolarWinds
再爆
安全
事件
,
11大关键
漏洞
引发关注;
Py
t
hon
核心库被
黑客
盯上;AT&T遭入...
SolarWinds
再爆
安全
事件
,
11大关键
漏洞
或致敏感信息
泄露
。Gi
t
Hub令牌
泄露
,
Py
t
hon
核心存储库面临被
黑客
...
赞
踩
article
(
3.2
)
broker
源码——
kafka
如何
rebalance
重平衡_
kafka
rebalance
...
rebalance
是重新进行负载均衡的过程。包括集群的
rebalance
,消费和生产者的
rebalance
。broke...
赞
踩
article
mysql
白名单
_
mysql
配置
白名单
...
1. 测试是否允许远程连接$ telnet 192.168.1.8 3306host 192.168.1.4 is no...
赞
踩
article
在
sql
中使用函数,遇到
net
.
sf
.j
sql
parser
.
parser
.ParseExceptio...
异常详情如下Caused by:
net
.
sf
.j
sql
parser
.
parser
.
ParseException
: En...
赞
踩
article
Keras
深度
学习
实战(39)——
音乐
音频
分类
_
音乐
风格
分类
与
深度
学习
...
音乐
音频
分类
技术能够基于
音乐
内容为
音乐
添加类别标签,在
音乐
资源的高效组织、检索和推荐等相关方面的研究和应用具有重要意义。...
赞
踩
article
linux
es
数据库
head
,
centos7
安装
Elasticsearch
及Es-
head
插件详...
懒惰了很久,今天来写一下
Elasticsearch
在
centos7
上
安装
教程以及
安装
过程中可能出现的报错解决方式,有不对...
赞
踩
相关标签
kafka
c语言
分布式
中间件
后端
运维
服务器
企业
号码检测
空号检测
数据清洗
安全
人工智能
AI
机器学习
深度学习
神经网络
数据结构
算法
stm32
单片机
嵌入式开发
嵌入式
java-rabbitmq