jacinli / jacinli.github.io

jacinli blog.
https://jacinli.github.io/
0 stars 0 forks source link

docker的postgresql数据库迁移 #7

Open jacinli opened 1 week ago

jacinli commented 1 week ago

备份 $ docker exec <postgres_container_name> pg_dump -U <username> -d <database_name> > backup.sql

: PostgreSQL容器的名称 : 数据库的用户名 : 要备份的数据库名称 backup.sql: 备份的文件名。 使用scp 、lftp、rsync等文件传输命令将备份文件传输到目标机器: `$ scp backup.sql @: or $ rsync -avz backup.sql @:` : 目标机器的登录用户名 : 目标机器的IP地址或主机名 : 备份文件在目标机器上的路径。 新机: ` $ docker run --name -e POSTGRES_PASSWORD= -d postgres ` : 要创建的容器的名称 : 要设置的PostgreSQL管理员密码。 将备份文件恢复到新的PostgreSQL容器中: ` $ cat backup.sql | docker exec -i psql -U postgres ` : 新PostgreSQL容器的名称。 完成以上步骤后,新的PostgreSQL容器应该就恢复了原来的数据库。 注意 **在将备份文件恢复到新的容器中时,需要使用与原来的容器相同的数据库名称和用户信息。**可以在恢复备份文件之前修改backup.sql文件中的相应信息。