PostgreSQL怎么实现不落地并行导出导入
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,本篇内容主要讲解"PostgreSQL怎么实现不落地并行导出导入",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"PostgreSQL怎么实现不落地并行导出导
千家信息网最后更新 2025年11月08日PostgreSQL怎么实现不落地并行导出导入
本篇内容主要讲解"PostgreSQL怎么实现不落地并行导出导入",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"PostgreSQL怎么实现不落地并行导出导入"吧!
9.4以下版本,使用pg_dump并行导出,pg_restore并行导入,迁移
(导出使用源版本pg_dump,导入使用目标版本pg_restore。如果是ppas请使用enterprisedb对应版本。)
1、(源库)全局元数据(用户、表空间)导出
需要superuser权限(如果你没有这个权限,跳过此步,但是务必在执行下一步时,人为在目标实例中创建所有与对象权限相关的用户)。
pg_dumpall -g -h IP地址 -p 端口 -U 用户 -W -l 数据库名
2、(目标库)全局元数据导入
导入以上元数据,在目标库执行即可(通常包括创建用户,修改用户密码,创建表空间等。)
执行第2步的目的是保证导入时,执行grant, alter set owner等操作时,目标用户已存在,否则缺失用户会导致pg_restore报错。
3、(目标库)建库
postgres=# create database newdb; CREATE DATABASE
4、(目标库)插件
安装postgresql软件时,打包源库已使用的的插件。 略
5、(源库)导出
mkdir /data01/pg/backup pg_dump -j 32 -f /data01/pg/backup -F d -h IP地址 -p 端口 -U 用户 -W newdb
6、(目标实例)关闭autovacuum,加速导入(可选)
使用超级用户执行SQL alter system set autovacuum=off; select pg_reload_conf();
7、(目标库)导入
pg_restore -d newdb -F d -j 32 -h IP地址 -p 端口 -U 用户 /data01/pg/backup
8、(目标实例)开启autovacuum(如果执行了6)
使用超级用户执行SQL alter system set autovacuum=on; select pg_reload_conf();
9、(目标实例)收集统计信息(如果执行了6)
使用超级用户执行SQL,收集统计信息 \c newdb 超级用户 analyze;
使用以上方法,60GB的数据库迁移,耗时约10分钟。
多机玩法
Where this gets interesting is with multiple hosts. You can:$ # dump a remote database to your local machine$ pg_dump -h remotedb.mydomain.com -f /home/postgres/dump.sql test $ # dump a local database and write to a remote machine$ pg_dump -h remotedb.mydomain.com test | ssh postgres@remotedb.mydomain.com 'cat > dump.sql' $ # dump a remote database and write to the same remote machine$ pg_dump -h remotedb.mydomain.com test | ssh postgres@remotedb.mydomain.com 'cat > dump.sql' $ # or a different remote machine$ pg_dump -h remotedb1.mydomain.com test | ssh postgres@remotedb2.mydomain.com 'cat > dump.sql' You also have similar restore options. I will use psql below but pg_restore works the same:$ # dump a remote database and restore to your local machine$ pg_dump -h remotedb.mydomain.com test1 | psql test2 $ # dump a local database and restore to a remote machine$ pg_dump -h remotedb.mydomain.com test | ssh postgres@remotedb.mydomain.com 'psql test' $ # dump a remote database and restore to the same remote machine$ pg_dump -h remotedb.mydomain.com test1 | ssh postgres@remotedb.mydomain.com 'psql test2' $ # or a different remote machine$ pg_dump -h remotedb1.mydomain.com test | ssh postgres@remotedb2.mydomain.com 'psql test'
到此,相信大家对"PostgreSQL怎么实现不落地并行导出导入"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
用户
目标
数据
实例
版本
落地
地址
权限
端口
信息
全局
内容
插件
数据库
方法
空间
学习
统计
实用
更深
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
密码编译学与网络安全答案
软件开发技术会在哪工作
学校时间频率服务器
网络安全的几种技术
济南专业软件开发中心
中稷华为互联网科技产业园区项目
软件开发行业存货周转率
信息网络安全包括6
数据库脚本怎么使用脚本
软件开发与应用什么专业
安徽电力应急软件开发价格
国家网络安全宣传周启幕
网站服务器装网站
上海工业软件开发生产过程
海光服务器怎么看盘
潍坊网络安全
计算机网络技术自学书本
ea数据库管理
dns服务器动态更新
计算机网络技术下载的app
邳州创新软件开发
保存excel到数据库
凡人造梦网络技术工作室
ps4糖豆人总连不上服务器
数据库库名怎么查看
电脑服务器工资
台州制造软件开发工具
石头科技是互联网公司吗
网络技术中的数据传输速率
临沂联速网络技术有限公司