数据迁移丨如何从 PostgreSQL 到 GreatSQL

【PostgreSQL】Windows下PostgreSQL导入(psql)导出(pg_dump)单表数据-支持大批量 【代码】Windows下PostgreSQL导入(psql)导出(pg_dump)单表数据-支持大批量。 阅读详情

数据迁移丨借助 AI 从 PostgreSQL 到 GreatSQL

在这里插入图片描述

本文将介绍如何从 PostgreSQL 到 GreatSQL 的数据迁移,并运用 AI 协助迁移更加方便。迁移的方式有很多,例如:

  • pg_dump:导出SQL文件,修改后导入 GreatSQL 数据库。
  • COPY:导出txt文本文件,导入 GreatSQL 数据库。
  • pg2mysql:从 PostgreSQL 迁移到 MySQL/GreatSQL 工具。
  • GreatDTS:商业的异构数据库迁移工具。

本文将介绍 pg_dump 和 COPY 两种方法迁移。

PostgreSQL 和 GreatSQL 区别

PostgreSQL

PostgreSQL是一个开源的对象关系型数据库管理系统(ORDBMS)。它的特色是强调扩展性、数据完整性和高级特性。PostgreSQL由社区维护和开发,具有出色的可定制性,可以适应各种不同的应用场景。它支持复杂的数据类型、JSON 数据存储、空间数据处理和全文搜索等特性。

GreatSQL

GreatSQL 数据库是一款 开源免费 数据库,可在普通硬件上满足金融级应用场景,具有 高可用、高性能、高兼容、高安全 等特性,可作为 MySQL 或 Percona Server for MySQL 的理想可选替换。

详细区别

对比项目GreatSQLPostgreSQL
许可证采用 GPLv2 协议基于 PostgreSQL 许可下,是一种类似于 BSD 或 MIT 的自由开源许可
对象层次结构4级(实例、数据库、表、列)5级(实例、数据库、模式、表、列)
ACID事物支持支持
安全性支持 RBAC、逻辑备份加密、CLONE 备份加密、审计、表空间国密加密、敏感数据脱敏支持 RBAC、行级安全 (RLS)
JSON支持(但和PG语法不同)支持(但和GreatSQL语法不同)
复制Binlog 进行逻辑复制WAL 进行物理复制
大小写敏感默认不敏感(默认不区分大小写)默认大小写敏感(默认区分大小写)
参数值引号使用双引号”“使用单引号‘’
数据类型支持(但和PG语法不同)支持(但和GreatSQL语法不同)
SQL语法支持(但和PG语法不同)支持(但和GreatSQL语法不同)
函数支持(但和PG语法不同)支持(但和GreatSQL语法不同)
表和索引支持(但和PG语法不同)支持(但和GreatSQL语法不同)
自增AUTO_INCREMENTSMALLSERIAL、SERIAL、SERIAL
注释#–
………

在迁移过程中,要注意两款数据库产品的差异。

迁移优势

迁移到 GreatSQL 有以下优势:

  • 高可用

针对 MGR 进行了大量改进和提升工作,支持 地理标签、仲裁节点、读写动态 VIP、快速单主模式、智能选主 等特性,并针对 流控算法、事务认证队列清理算法、节点加入&退出机制、recovery机制 等多个 MGR 底层工作机制算法进行深度优化,进一步提升优化了 MGR 的高可用保障及性能稳定性。

  • 高性能

相对 MySQL 及 Percona Server For MySQL 的性能表现更稳定优异,支持 Rapid 引擎、事务无锁化、并行LOAD DATA、异步删除大表、线程池、非阻塞式DDL、NUMA 亲和调度优化 等特性,在 TPC-C 测试中相对 MySQL 性能提升超过 30%,在 TPC-H 测试中的性能表现是 MySQL 的十几倍甚至上百倍。

  • 高兼容

GreatSQL 实现 100% 完全兼容 MySQL 及 Percona Server For MySQL 用法,支持大多数常见 Oracle 用法,包括 数据类型兼容、函数兼容、SQL 语法兼容、存储程序兼容 等众多兼容扩展用法。

  • 高安全

GreatSQL 支持逻辑备份加密、CLONE 备份加密、审计、表空间国密加密、敏感数据脱敏等多个安全提升特性,进一步保障业务数据安全,更适用于金融级应用场景。

迁移准备

业务需求分析

评估哪些业务需要迁移,以及迁移的影响。先明确迁移的范围,需要知道哪些业务系统和服务会受到影响,可以根据优先级进行迁移。了解数据库直接交互的应用程序、服务、脚本等,分析这些依赖关系,有助于制定迁移计划,和减少对业务的影响。同时也要评估迁移带来的风险,比如数据丢失、数据同步延迟、业务中断等。

兼容评估

评估 PostgreSQL 和 GreatSQL 之间的兼容性,包括语法、功能、数据类型、索引等。PostgreSQL 和 GreatSQL 在 SQL 语法和功能上存在一些差异,应特别注意。

在迁移之前,一定要先了解 PostgreSQL 和 GreatSQL 之间的区别:

  • PostgreSQL:https://postgresql.p2hp.com/index.html
  • GreatSQL:https://greatsql.cn/

备份和恢复

在迁移前确保 PostgreSQL 数据库的备份和恢复机制完善。例如做一次全量备份,在迁移之前,首先进行完整的数据库备份(例如使用 pg_dump),以确保在迁移过程中遇到问题时可以快速恢复。可以选择基于文件系统的快照备份或基于逻辑备份的 pg_dump,并将备份数据存储在安全位置。

测试环境搭建

安装 PostgreSQL 并生成测试数据

PostgreSQL 版本为 15.8

$ psql --version
psql (PostgreSQL) 15.8 (Debian 15.8-0+deb12u1)

迁移库 pg_to_greatsql 库下的 users 表

pg_to_greatsql-# \d Users
                                          数据表 "public.users"
      栏位       |            类型             | 校对规则 |  可空的  |               预设                
-----------------+-----------------------------+----------+----------+-----------------------------------
 id              | integer                     |          | not null | nextval('users_id_seq'::regclass)
 username        | character varying(255)      |          | not null | 
 password        | character varying(255)      |          | not null | 
 id_card         | character varying(255)      |          | not null | 
 email           | character varying(255)      |          | not null | 
 phone           | character varying(20)       |          |          | 
 address         | character varying(255)      |          |          | 
 job_title       | character varying(255)      |          |          | 
 education_level | character varying(255)      |          |          | 
 salary          | numeric(10,2)               |          |          | 
 hire_date       | date                        |          |          | 
 leave_date      | date                        |          |          | 
 remarks         | text                        |          |          | 
 status          | character varying(255)      |          |          | 
 created_at      | timestamp without time zone |          |          | 
 created_by      | character varying(255)      |          |          | 'system'::character varying
索引:
    "users_pkey" PRIMARY KEY, btree (id)
    "users_email_key" UNIQUE CONSTRAINT, btree (email)
    "users_username_key" UNIQUE CONSTRAINT, btree (username)

该 user 表的数据量为 1010000 行

pg_to_greatsql=# SELECT COUNT(*) FROM users;
  count  
---------
 1010000
(1 行记录)

安装 GreatSQL 数据库

推荐安装 GreatSQL 最新版本

  • https://greatsql.cn/docs/8.0.32-26/4-install-guide/1-install-prepare.html

迁移到 GreatSQL 数据库

表结构迁移

此时可以使用 AI 来帮助迁移,例如使用 ChatGPT 将 PostgreSQL 数据库表结构转换为 GreatSQL 数据库的表结构。

在这里插入图片描述

AI 生成完成后,需要自行检查下是否正确!

  • 自增字段:id 字段使用 AUTO_INCREMENT 代替 nextval

  • 数据类型:PostgreSQL 的 character varying 对应 GreatSQL 的 VARCHAR,numeric 对应 DECIMAL,text 对应 TEXT,timestamp without time zone 对应 TIMESTAMP。

  • 默认值:对于 created_at 字段,使用 DEFAULT CURRENT_TIMESTAMP 设置默认值,created_by 字段的默认值保持不变。

  • 字符集:推荐使用 utf8mb4 字符集,以支持更广泛的字符

在 GreatSQL 中创建对应库,并执行由 AI 生成的 SQL 建表语句:

-- 创建 pg_to_greatsql 库
greatsql> CREATE DATABASE pg_to_greatsql;
-- 创建 users 表
greatsql> CREATE TABLE users (
    id INT NOT NULL AUTO_INCREMENT,
    username VARCHAR(255) NOT NULL UNIQUE,
    password VARCHAR(255) NOT NULL,
    id_card VARCHAR(255) NOT NULL,
    email VARCHAR(255) NOT NULL UNIQUE,
    phone VARCHAR(20),
    address VARCHAR(255),
    job_title VARCHAR(255),
    education_level VARCHAR(255),
    salary DECIMAL(10, 2),
    hire_date DATE,
    leave_date DATE,
    remarks TEXT,
    status VARCHAR(255),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    created_by VARCHAR(255) DEFAULT 'system',
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

数据迁移

方法一:pg_dump 备份

在 PostgreSQL 执行pg_dump备份

$ pg_dump --data-only --inserts --column-inserts -U postgres -d pg_to_greatsql > ./pg_to_greatsql.sql
  • --data-only:只导出数据,不包括数据库对象的定义(如表结构、索引等)。

  • --inserts:以 SQL INSERT语句的形式导出数据,而不是默认的自定义格式。这样生成的备份文件更易于阅读和编辑。

  • --column-inserts:使用带有列名的 INSERT语句形式,即INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,...);这种方式在处理包含特殊字符的数据时可能更稳定,并且可以更精确地控制插入的列。

此时会生成 pg_to_greatsql.sql 文件:

$ ls -lh
总计 474M
drwxr-xr-x 3 postgres postgres 4.0K  7月23日 10:49 15
-rw-r--r-- 1 postgres postgres 474M 10月21日 15:36 pg_to_greatsql.sql

去除无用信息

此时还不能将这份 SQL 文件直接导入到 GreatSQL 中。因为上面有介绍,两款数据库的对象层次结构不同。打开 pg_to_greatsql.sql 文件:

-- 语句中有 public. 需要去除
INSERT INTO public.users (id, username, password, id_card, email, phone, address, job_title, education_level, salary, hire_date, leave_date, remarks, status, created_at, created_by) VALUES (1010000, '527d66e0a6cdb128d44fc45', '10cccade4c7c35d553cd23e48b5facd1', '435078200404227108', 'b8a5b05af990ff4bdc9ccdc@qq.com', '18059437765', '讗慹簪瞠珒鸚鼜瘔狹覰', 'C++', '博士', 23592.00, '2020-07-04', '2020-12-29', '0e3801d3e64be7c38d93cb5', '离职', '2023-06-20 22:42:39', 'system');

可以看到 INSERT 语句表前面有 public. 关键词,需要将这个关键词去掉:

$ sed 's/INSERT INTO public\./INSERT INTO /g' pg_to_greatsql.sql > modified_pg_to_greatsql.sql

同时还有一些关于 PostgreSQL 参数的设置,需要去掉:

# 这些要去掉,否则导入不了 GreatSQL
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;

my.cnf 参数可以选择 GreatSQL 推荐的参数模板设置:

  • https://greatsql.cn/docs/8.0.32-26/3-quick-start/3-4-quick-start-with-cnf.html

当然有些参数,例如例子中的 lock_timeout在 PostgreSQL 中是代表锁超时,在 GreatSQL 中锁超时参数是 lock_wait_timeout,若有需要可自行查找对应在 GreatSQL 的参数。

pg_dump 导入 GreatSQL

接下来就可以直接将这份 SQL 文件导入到 GreatSQL 数据库中:

$ mysql -u root -p pg_to_greatsql < modified_pg_to_greatsql.sql

greatsql> SELECT COUNT(*) FROM pg_to_greatsql.users;
+----------+
| count(*) |
+----------+
|  1010000 |
+----------+
1 row in set (1.06 sec)

数据量如果很大,该方法导入会特别慢

方法二:COPY 导出数据

使用 INSERT 的方法导入,会比较慢,此时可以用 COPY 的方法导出表数据,在配合 GreatSQL 的并行 Load Data 特性,可以使迁移更加迅速。

使用 COPY 导出数据:

pg_to_greatsql=# COPY users TO '/var/lib/postgresql/output_file.txt' WITH (FORMAT TEXT);
COPY 1010000
COPY 导入 GreatSQL

使用 GreatSQL 中的并行 Load Data 特性:

  • https://greatsql.cn/docs/8.0.32-26/5-enhance/5-1-highperf-parallel-load.html
greatsql> LOAD /*+ SET_VAR(gdb_parallel_load = ON) SET_VAR(gdb_parallel_load_chunk_size = 65536) SET_VAR(gdb_parallel_load_workers = 16) */ DATA INFILE '/var/lib/mysql/output_file.txt' INTO TABLE pg_to_greatsql.users;
Query OK, 1010000 rows affected (4 min 25.87 sec)
Records: 1010000  Deleted: 0  Skipped: 0  Warnings: 0

greatsql> SELECT COUNT(*) FROM pg_to_greatsql.users;
+----------+
| count(*) |
+----------+
|  1010000 |
+----------+
1 row in set (1.04 sec)

到此迁移完成,下篇将介绍使用 pg2mysql 工具迁移:)
ry OK, 1010000 rows affected (4 min 25.87 sec)
Records: 1010000 Deleted: 0 Skipped: 0 Warnings: 0

greatsql> SELECT COUNT() FROM pg_to_greatsql.users;
±---------+
| count(
) |
±---------+
| 1010000 |
±---------+
1 row in set (1.04 sec)


到此迁移完成,下篇将介绍使用 pg2mysql 工具迁移:)
高效的数据迁移工具:PostgreSQL 安装完成后,根据官方文档中的指引进行必要的配置,包括设置数据库的用户名、密码和访问权限等。可以使用SQL查询语句来检查目标数据库中的数据是否与源数据库中的数据一致。可以使用SQL查询语句来检查目标数据库中的数据是否与源数据库中的数据一致。接下来,我们需要连接到源数据库和目标数据库,以便执行数据迁移操作。接下来,我们需要连接到源数据库和目标数据库,以便执行数据迁移操作。对象来执行SQL查询和操作。连接到源数据库和目标数据库后,我们可以执行数据迁移操作。连接到源数据库和目标数据库后,我们可以执行数据迁移操作。 阅读详情

相关推荐

最新首发——boss直聘爬虫

本文介绍了使用Python开发Boss直聘爬虫的核心思路和技术要点。通过模拟浏览器访问搜索页面获取Cookie,然后构建API请求获取职位数据。关键步骤包括:1)使用DrissionPage库初始化浏览器;2)模拟用户浏览行为获取必要参数;3)设置完整的请求头信息;4)通过POST请求获取JSON格式的职位数据。文章提供了详细的代码实现,包括浏览器模拟、API请求构建、数据处理等核心功能模块,并强调了最新版接口改为POST访问的特点。该爬虫可自动翻页采集数据并保存为Excel文件,适用于安全实习等职位信息的

2301_79735033的博客 3317

postgres之pg_dump导出和导入

pg_dump --host=127.0.0.1 --port=5432 --username=[用户名] -t[表名1] -t [表名1] --schema-only postgres > F:\db.sql。2.指定表数据的导出。

luoshuweiis的博客 2441

从零开始:如何用Python建立你的第一个人工智能模型

在这篇文章中,我们将介绍如何从零开始使用Python建立你的第一个人工智能模型。无论你是刚接触编程的新手,还是有经验的开发者想进一步探索人工智能领域,这篇文章都将为你提供清晰、详细的指南。我们将一步步探索数据预处理、模型建立、训练和测试的过程,以及如何解读模型的结果。

Allen1862105的博客 4万+

PostgreSQL数据库导入、导出dmp、bak格式的数据

PostgreSQL数据库导入、导出dmp格式的数据

nandao158的博客 9118

PSCAD学习笔记(1)Project Settings(重点snapshot设置)

若不勾选,则横坐标为实际时间2-7s,故障显示在第3s发生。图片中时间坐标轴显示为0-5s,故障时刻显示为第1s,即0-1s展示系统稳态,1-5s展示系统发生故障后的暂态响应,如何通过快照文件实现?勾选该项后,使用快照文件启动仿真会将仿真起始时间强制设置为0s,反之不勾选则依据快照文件保存的时间轴继续(即坐标为实际时间)。如果已有的快照文件保存的是0s至5s的仿真内容,则仿真运行时间从5s开始,到10s结束。如果已有的快照文件保存的是0s至2s的仿真内容,则仿真运行时间从2s开始,到7s结束;

gwenh的博客 7343

APS项目大都失败告终?

通过上述分析,APS从二十多年前的流行到如今的实施困境,背后涉及企业自身、供应商、项目管理等原因,既有理论发展的复杂性增加的原因,也有企业对APS期望值过高和误解的因素。APS(Advanced Planning and Scheduling)高级排程系统是一种高度智能化的计划和排程系统,它通过整合各种生产和供应链数据,运用先进的算法和数据模型,根据各种约束条件,如资源限制、交货期、生产能力等,以最优的方式规划和调度生产活动,从而为生产计划提供最优解决方案。高级管理层的支持对于APS项目的成功至关重要。

数字化藏经阁 1344

pg_dump导入导出工具部分使用

【代码】pg_dump导入导出工具部分使用。

weixin_46200835的博客 932

电源新手别怕!手把手教你搞定Buck电路的环路补偿(附Type II/III补偿器参数计算)

本文为电源设计新手详细解析Buck电路环路补偿技术,重点介绍Type II和Type III补偿器的参数计算与设计方法。通过实例演示和实用技巧,帮助工程师快速掌握环路补偿原理,解决电源振荡、响应慢等问题,提升电路稳定性与性能。

weixin_30607029的博客 618

数据迁移丨借助 AI 从 PostgreSQL 到 GreatSQL

相对 MySQL 及 Percona Server For MySQL 的性能表现更稳定优异,支持 Rapid 引擎、事务无锁化、并行LOAD DATA、异步删除大表、线程池、非阻塞式DDL、NUMA 亲和调度优化 等特性,在 TPC-C 测试中相对 MySQL 性能提升超过 30%,在 TPC-H 测试中的性能表现是 MySQL 的十几倍甚至上百倍。了解数据库直接交互的应用程序、服务、脚本等,分析这些依赖关系,有助于制定迁移计划,和减少对业务的影响。语句的形式导出数据,而不是默认的自定义格式。

GreatSQL2021的博客 1088

Obsidian从零搭建:可验证、可回溯、可演进的知识库工具链

个人知识库不是开箱即用的软件,而是基于Markdown内核构建的可演进系统。其核心原理在于分离‘稳定内核’与‘可插拔扩展’:Obsidian原生支持双链、嵌入、Frontmatter等基础能力,构成不可降级的知识骨架;而Dataview、Templater等插件则作为可验证、可回溯的增强层,需通过三问验证(解决痛点?有原生替代?失效可降级?)方可引入。这种设计赋予知识库技术价值——抗版本升级、跨平台兼容、离线可用,并支撑技术文档管理、项目复盘、读书笔记等真实场景。当面对computer use插件不可用或h

weixin_30660027的博客 680

【大模型】DeepSeek 高级提示词技巧使用详解

DeepSeek 高级提示词技巧使用详解

congge 1万+

数据迁移丨借助 pg2mysql 从 PostgreSQL 到 GreatSQL

pg2mysql 工具是一款开源工具,由 VMware 公司提供,主要用于将数据从 PostgreSQL 迁移至 MySQL 或 GreatSQL。其核心价值在于数据兼容性检查与迁移功能。在实际迁移操作之前,该工具会仔细检查 MySQL/GreatSQL 的表结构与 PostgreSQL 中相应表结构是否兼容。若检测到诸如字段长度不足之类的潜在问题,它会向用户发出提示,以便用户进行修正。pg2mysql 工具主要是用 Go 语言编写的,遵循 Apache - 2.0 许可证。

GreatSQL2021的博客 958

华为OD机试双机位C卷-虚拟文件系统(C/C++/Py/Java/Js/Go)

华为OD机试(机考)双机位C卷 【虚拟文件系统】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【虚拟文件系统】。

qq_45776114的博客 477

借助AI将PostgreSQL迁移到GreatSQL(文末可免费领红包封面)

* GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。本文将介绍如何从 PostgreSQL 到 GreatSQL 的数据迁移,并运用 AI 协助迁移更加方便。迁移的方式有很多,例如:pg_dump:导出SQL文件,修改后导入 GreatSQL 数据库。COPY:导出txt文本文件,导入 GreatSQL 数据库。pg2mysql:从 PostgreSQL 迁移到 MyS...

老叶茶馆 244

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

PostgreSQL与国产数据库技术选型实战:从内核对比到部署测试

关系型数据库作为现代应用的数据存储核心,其技术选型直接影响系统的稳定性、扩展性与长期成本。开源数据库PostgreSQL凭借其强大的SQL标准兼容性、完善的事务支持(ACID)以及独特的扩展机制(如PostGIS),在全球企业级应用中占据重要地位。随着云原生和分布式架构的普及,数据库技术价值不仅体现在单机性能,更在于弹性伸缩、高可用运维及生态整合能力。在此背景下,国产数据库通过借鉴与创新,在云原生架构、分布式事务及企业级管控等应用场景实现了快速发展。本文聚焦于PostgreSQL内核与国产数据库(如Pola

weixin_34200628的博客 412

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

PostgreSQL与国产数据库:从技术原理到选型实践

关系型数据库作为企业数据存储与管理的核心组件,其技术演进始终围绕数据一致性、事务处理与查询优化等基本原理展开。PostgreSQL凭借其成熟的MVCC(多版本并发控制)机制、WAL(预写式日志)和强大的扩展性,成为众多数据库产品的技术基石。在国产化与信创背景下,基于PostgreSQL的国产数据库产品通过架构扩展、分布式能力增强和运维工具集成,实现了从基础功能到产品化解决方案的升级。这些创新不仅满足了金融、政务等关键行业对自主可控与高性能的需求,也为开发者提供了更丰富的技术选型空间。本文通过环境搭建、功能对

weixin_30820077的博客 367

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

pgsql数据库实现导入导出

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦。...

m0_67400972的博客 4755

pgsql数据库实现导入导出(附sql示例)

pgsql数据库使用命令行导入导出(附sql示例)

qq_44760975的博客 1万+

pg_dump转移数据操作步骤及常用命令;

1、pg_dump 命令转移数据结构及数据 1.1 pg_dump 常用参数解释 1、pg_dump [选项]… [数据库名字] -f, --file=FILENAME 输出文件或目录名 -F, --format=c|d|t|p 输出文件格式 (定制, 目录, tar) 明文 (默认值)) -j, --jobs=NUM 执行多个并行任务进行备份转储工作 -v, --verbose 详细模式 -V, --version 输出版本信息,然后退出 -Z, --compress=0-9 被压缩格式的压

blakecheng的博客 9888

Postgresql在Windows中使用pg_dump实现数据库(指定表)的导出与导入

上面讲了在mysql中使用mysqldump备份的记录。当然如果两个数据中指定表的同步可以直接使用Navicat等软件进行。但是如果不能同时连接两个库进行数据同步,就需要先把一个库中某个表导出,再到另一个网络环境下执行导入。但是在postgresql中使用navicat直接导出sql文件并导入会有问题。PostgreSQL 提供了备份单个数据库的工具 pg_dump它支持三种文件格式:• plain,文本格式,输出一个纯文本形式的 SQL 脚本,默认值。还原时直接使用 psql 工具导入。

BADAO_LIUMANG_QIZHI的博客 4753

PostgreSQL数据导入导出【亲测】有图有真相

pg_dump是用于备份PostgreSQL数据库的工具。它可以在数据库正在使用的时候进行完整一致的备份,并不阻塞其它用户对数据库的访问。有图有真相。

JavaPub 1956

PG数据库之间的导入导出(pg_dumpall,pg_dump,psql,pg_restore)

参考文献:https://bbs.aliyun.com/read/247030.html?displayMode=1 本文将介绍如何对PG数据库进行导入、导出,主要利用的是PG自带的pg_dump、pg_dumpall、pg_restore、psql等命令,版本是9.4(不同版本的pg_dump \ pg_restore选项可能会有些不同,请注意)。 导出、导入的整体思

奋斗吧,CQS! 1万+

Postgresql数据库导入导出

成功执行后,会在指定路径下生成一个后缀为.backup的备份文件。-F format:指定输出文件的格式(p为纯文本、c为自定义格式、t为tar文件格式)。-h hostname:指定服务器的主机名,默认为本地机器。-f output_file_path:指定输出文件的路径。-p port:指定服务器的端口,默认为5432。-U username:指定连接数据库的用户名。dbname:指定要导出的数据库名。-v:详细模式,打印更多输出信息。-W:在执行命令时提示输入密码。-b:包括二进制数据。

a13568hki的博客 2381

无需停服!PostgreSQL数据迁移工具-NineData

NineData推出了PostgreSQL业务不停服数据迁移能力。NineData实现了完全自动化的结构迁移和全量数据迁移,并提供了变更数据的迁移能力。这种能力可以实时监听源PostgreSQL中的变更数据,在完成全量迁移后将变更数据实时复制到目标PostgreSQL,实现源/目标PostgreSQL的动态复制。在PostgreSQL数据迁移过程中,业务可以正常提供服务,无需停服。最终,业务可以根据需求选择对应的时间点切换到目标PostgreSQL。

云原生智能数据管理平台 3726
上一篇: 数据迁移丨借助 AI 从 PostgreSQL 到 GreatSQL
下一篇: 数据迁移丨借助 pg2mysql 从 PostgreSQL 到 GreatSQL
GreatSQL社区
博客等级 码龄5年 1210粉丝 390原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值