温馨提示×

PostgreSQL在CentOS中的数据迁移步骤是什么

小樊
87
2025-02-14 17:02:58
栏目: 云计算
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS中进行PostgreSQL数据迁移的步骤如下:

准备工作

  1. 备份数据
  • 在开始迁移之前,确保对现有数据库进行完整备份。可以使用 pg_dump 工具导出数据库:。
  1. 安装必要的工具
  • 确保系统上安装了 pg_dumppgloader(如果需要从其他数据库迁移过来)。

迁移步骤

方法一:在新环境中重新初始化数据库并导入数据

  1. 创建新的数据存储目录
mkdir -p /data/pgsql/data
chown -R postgres:postgres /data/pgsql/data
  1. 初始化新数据库并指定存储目录
postgresql-setup --initdb -D /data/pgsql/data

或者

/usr/bin/initdb -D /data/pgsql/data
  1. 修改系统服务文件配置
  • 编辑 /usr/lib/systemd/system/postgresql.service 文件,修改 EnvironmentPGDATA 为新的数据目录路径。
EnvironmentPGDATA=/data/pgsql/data
  1. 重新加载配置文件并重启数据库服务
systemctl daemon-reload
systemctl restart postgresql.service
  1. 导入数据
  • 将旧环境的数据导出到文件,然后传输到新环境并导入。
pg_dump -U postgres -f /app/dump_etl_230131.sql test
psql -U postgres -f /app/dump_etl_230131.sql test

方法二:物理迁移存储目录

  1. 停止旧环境的PostgreSQL服务
systemctl stop postgresql.service
  1. 在新环境创建数据存储目录并更改属主
mkdir -p /data/pgsql/data
chown -R postgres:postgres /data/pgsql/data
  1. 将旧环境数据存储目录复制到新环境
cp -rp /var/lib/pgsql/data/* /data/pgsql/data/
  1. 修改系统服务文件配置
  • 同方法一,修改 /usr/lib/systemd/system/postgresql.service 文件中的 EnvironmentPGDATA
  1. 重新加载配置文件并重启数据库服务
systemctl daemon-reload
systemctl restart postgresql.service

注意事项

  • 数据一致性:确保在迁移过程中数据的一致性,避免数据丢失或不一致。
  • 权限设置:确保新目录的属主和权限与旧环境保持一致。
  • 防火墙和网络配置:确保新环境的网络配置允许数据库连接。
  • 测试:在生产环境迁移前,先在测试环境中验证迁移步骤。

以上步骤涵盖了在CentOS中进行PostgreSQL数据迁移的基本流程和注意事项,具体操作时请根据实际情况进行调整。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:pigsty与PostgreSQL的数据迁移步骤是什么

0