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

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

相关推荐
2401_882273721 分钟前
如何通过MongoDB GridFS实现文件的分块下载
jvm·数据库·python
weixin_580614001 分钟前
CSS如何实现动态背景色线性渐变_利用CSS变量控制渐变方向
jvm·数据库·python
施棠海2 分钟前
SQLite姓氏数据库首字母检索开发
数据库·oracle
weixin_408717773 分钟前
mysql如何查询所有列_mysql select星号性能分析
jvm·数据库·python
a9511416423 分钟前
mysql权限表查询性能如何优化_MySQL系统权限缓存原理
jvm·数据库·python
zxrhhm6 分钟前
Oracle RAC 日常监控脚本
数据库·oracle
m0_748920367 分钟前
Redis怎样防止主从节点淘汰行为不一致
jvm·数据库·python
misL NITL7 分钟前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite
2401_835956818 分钟前
SQL中如何查找特定的空值行:WHERE IS NULL深度解析
jvm·数据库·python
若兰幽竹8 分钟前
【从零开始编写数据库系统:架构设计与实现】第3章 SQL解析:词法与语法分析
数据库·sql·教学数据库·数据库内核开发