PostgreSQL到HighgoDB数据迁移

文章目录

环境

系统平台:N/A

版本:4.1.1

症状

从PostgreSQL迁移数据到HighGoDB。

解决方案

1.禁止业务连接数据库

客户停止所有连接至x.x.10.11的应用程序。(或修改Postgresql数据库的pg_hba文件,禁止所有IP地址连接数据库)

应用程序停止之后,使用 ps -ef |grep postgres命令观察是否还有IP访问数据库。

2.使用如下命令从源端数据库导出数据和全局对象

备份角色和表空间。

pg_dumpall -h localhost -U postgres --port=5866 -f backup.sql --globals-only --clean --verbose

导出某个数据库的数据,例如导出test数据库:

pg_dump --host localhost --port 5866 --username "postgres" --format custom --file "/xxxx/yyy/backup.dmp" "test"

如需导出多个数据库的数据,修改数据库名,多次导出多个库。也可以使用pg_dumpall的方式,将所有数据全部导出。

注:不建议使用pg_dumpall,因为该方式只能导出SQL文本,恢复极其耗时。

3.打开目标端数据库,恢复全局对象并开始导入数据。

将bakcup.sql文件中的SQL语句拷贝并在目标数据库中运行,例如:

CREATE ROLE postgres LOGIN ENCRYPTED PASSWORD 'md52cc18edfxxxxxxxxx4610288ab1f1ca9' SUPERUSER INHERIT CREATEDB CREATEROLE REPLICATION;

恢复数据:

pg_restore -h localhost -p 5866 -U highgo -d highgo --create --verbose --format custom "/xxxx/yyy/backup.dmp "

4.导入完成后,psql进入数据库查看是否导入成功。

相关推荐
先吃饱再说9 小时前
存储的进化:从 MySQL 到浏览器缓存,数据到底住在哪?
数据库
Nturmoils9 小时前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
Databend11 小时前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
这个DBA有点耶12 小时前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung13 小时前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql
parade岁月13 小时前
MySQL JOIN解析:朴实无华但食之有味
数据库·后端
用户31693538118313 小时前
MySQL服务无法启动问题解决全记录
数据库
vivo互联网技术17 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
倔强的石头_1 天前
《Kingbase护城河》——猎捕慢查询:执行计划的微观解析与索引调优实战
数据库
SelectDB1 天前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python