Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用复制将200 GB数据库从ec2实例导入RDS Postgresql的最佳方法是什么。。。。?_Postgresql_Amazon Web Services_Amazon Ec2 - Fatal编程技术网

使用复制将200 GB数据库从ec2实例导入RDS Postgresql的最佳方法是什么。。。。?

使用复制将200 GB数据库从ec2实例导入RDS Postgresql的最佳方法是什么。。。。?,postgresql,amazon-web-services,amazon-ec2,Postgresql,Amazon Web Services,Amazon Ec2,我们目前在一个EC2实例上运行Postgres上的生产数据库。我们现在想迁移RDS,但我无法及时将数据导入RDS实例。使用pg_dump获取数据,创建转储文件需要20分钟,但psql将其恢复到我的RDS实例中需要将近18小时。在这18个小时里,我的生产数据库添加了更多需要迁移的数据。 虽然我可以处理长达一小时的停机时间,但我不能让生产中断18小时!有更好的方法吗?比方说,离线恢复,然后将恢复的RDS实例与我当前的数据库服务器进行主从组合?或者,对我当前的数据库卷进行快照[我当前的数据库版本是9.

我们目前在一个EC2实例上运行Postgres上的生产数据库。我们现在想迁移RDS,但我无法及时将数据导入RDS实例。使用pg_dump获取数据,创建转储文件需要20分钟,但psql将其恢复到我的RDS实例中需要将近18小时。在这18个小时里,我的生产数据库添加了更多需要迁移的数据。 虽然我可以处理长达一小时的停机时间,但我不能让生产中断18小时!有更好的方法吗?比方说,离线恢复,然后将恢复的RDS实例与我当前的数据库服务器进行主从组合?或者,对我当前的数据库卷进行快照[我当前的数据库版本是9.0.4],然后将其装载到RDS实例上? 注意:-Amazon RDS PostgreSQL Server不允许主机通过Telnet或Secure Shell SSH直接访问DB实例

安装日志从旧服务器传送到新服务器。 在旧服务器上的Postgres运行时,使用“pg_basebackup”在新服务器上创建数据库的克隆。 启动新服务器。 请等待一段时间,直到新服务器处理备份期间发送的日志。 禁用与旧服务器的连接。 `在旧服务器上选择pg_switch_xlog`以强制在将日志文件发送到新服务器时切换日志文件。 等待一段时间,直到新服务器处理最后一个日志文件。 停止旧服务器并升级新服务器。
嗨,托梅茨基,谢谢你的回复,但我只需要知道它适用于rds postgresql server,因为亚马逊rds postgresql server不允许主机通过Telnet或Secure Shell SSH直接访问DB实例,亚马逊rds postgres引擎不提供管理员用户角色,rdsadmin是超级用户Amazon自己的用户,Amazon使用它执行更新、运行备份和其他维护任务&而且我们没有权限编辑配置文件,例如:-postgresql.conf.I see。然后,基于触发器的复制引擎(如Slony或Bucardo)应该可以工作。