Postgresql-从docker备份迁移到独立服务器

本文档详细介绍了如何将运行在Docker容器内的PostgreSQL数据库备份,并迁移到独立的服务器环境中。首先,通过`pg_dump`生成未压缩的SQL文件,然后从Docker容器中复制备份文件到本地,再通过SFTP传输到目标服务器。接着,安装必要的PostgreSQL软件包,修改配置文件如`listen_addresses`和`pg_hba.conf`,并设置合适的权限。最后,通过`psql`命令恢复数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:原数据库在dokcer中,从中迁移到独立服务器的postgresql中.

  1. 原数据库备份: pg_dump
    1. 原始数据库若在docker中,需要先进入docker 镜像中
      1. docker exec -it clinicalbigdataplatformbackendproduct_database_q bash
    2. 生成0压缩格式的sql文件
      1. pg_dump -U postgres -d postgres > postgres20200513.sql
  2. 将备份文件从docker容器中拷贝出来,docker cp
    1. docker ps 命令查看 database容器对应的 id:d8ed8a06dfe0
    2. docker cp 命令复制
      1. docker cp d8ed8a06dfe0:/postgres20200513.sql ./postgresql20200513.sql
  3. 将备份文件通过sftp传输到数据库服务器中
  4. 数据库服务器环境整理:
    1. 数据库服务器安装:
      1. postgresql-9.4
      2. postgresql-client-9.4
      3. postgresql-client-common
      4. postgresql-common
      5. postgresql-contrib-9.4
    2. postgresql 密码修改:
      1. 使用postgres登陆,否则会提示: FATAL; role "root" does not exist  ( 因为postgresql默认是不允许使用root用户启动服务的)
        1. su postgres
      2. 更改系统用户 postgres 密码
        1. sudo passwd post
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值