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上查询外部表数据了,这个时候我们用存过将外部数据表的数据批处理转换为我们内部表所需数据,校正格式。任何数据在处理前,一定考虑好备份方案。

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

相关推荐
罗超驿16 分钟前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-27 分钟前
Redis 命令
数据库·redis·缓存
小江的记录本1 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`1 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存
二宝哥2 小时前
离线安装maven
java·数据库·maven
SZLSDH2 小时前
场景适配论 | 数字孪生IOC建设中渲染技术与智能体能力的协同逻辑
前端·数据库·ai·数字孪生·数据可视化·智能体
这个DBA有点耶2 小时前
SQL改写实战:子查询、CTE、窗口函数性能对比
数据库·mysql·性能优化
@我漫长的孤独流浪2 小时前
数据库完整性约束全解析:从理论到实践
数据库
l1t2 小时前
DeepSeek总结的 DuckDB 1.5.3:并非普通的补丁版本
数据库·duckdb
云商直通车2 小时前
华为云ECS购买与配置超详细教程
服务器·数据库·华为云