Postgresql 从小白到高手 十一 :数据迁移ETL方案


文章目录

  • [Postgresql 数据迁移ETL方案](#Postgresql 数据迁移ETL方案)
    • [1、Pg 同类型数据库](#1、Pg 同类型数据库)
    • [2 、Pg 和 不同数据库](#2 、Pg 和 不同数据库)

Postgresql 数据迁移ETL方案

1、Pg 同类型数据库

备份 :

复制代码
 pg_dump -U username -d dbname -f backup.sql

插入数据:

复制代码
psql -U username -d dbname -f backup.sql

pg_restore -U username -d dbname -t table_name backup.sql

创建指向他处数据源的外部表:

复制代码
CREATE FOREIGN TABLE external_table (
    id INT,
    name VARCHAR(50)
) SERVER external_server OPTIONS (table_name 'external_data');

pgAdmin 表同步

使用Sschme Diff 工具

2 、Pg 和 不同数据库

FDW (外部数据包装器)

复制代码
CREATE SERVER foreign_server
   FOREIGN DATA WRAPPER postgres_fdw
   OPTIONS (host 'foreign_server_ip', port '5432', dbname 'foreign_dbname');

CREATE USER MAPPING FOR local_user
    SERVER foreign_server
    OPTIONS (user 'foreign_user', password 'foreign_password');

外部表

复制代码
CREATE FOREIGN TABLE local_table (
    id INT,
    name VARCHAR(50)
) SERVER foreign_server OPTIONS (table_name 'remote_table');

当建立好外部数据包装器和外部表时,我们就可以在pg上查询外部表数据了,这个时候我们用存过将外部数据表的数据批处理转换为我们内部表所需数据,校正格式。任何数据在处理前,一定考虑好备份方案。

存过参考我们前面的第七、八、九章内容。

相关推荐
吴名氏.7 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
爱码少年7 小时前
Springboot下如何将CSV文件数据导入H2、Mysql数据库表
数据库·mysql·csv
可乐ea8 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
阿义有问题9 小时前
MySQL 迁移达梦全流程实战:DTS 七步图解 + 对象名全大写适配(附踩坑清单)
数据库
猫猫不是喵喵.12 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
lsc_blog13 小时前
听到优化风声,先准备能由自己掌控的事
数据库·分布式·中间件·职场和发展·重构
墨痕诉清风13 小时前
SSRF漏洞实战记录+OSS桶命令执行+MCP漏洞
linux·服务器·数据库
Ashe81316 小时前
MySQL 慢日志先别急着加索引:三个指标能拦掉大半误判
数据库
ClouGence16 小时前
最基础的异构数据库 DDL 同步,我们踩过哪些坑?
数据库·mysql·postgresql
羑悻的小杀马特17 小时前
Redis持久化三剑客:RDB二进制快照、AOF文本日志、混合模式如何守护你的数据安全?
数据库·redis·缓存·aof·持久化存储·rdb