专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

将本地PostgreSQL集群迁移到GoogleCloud

  作者:MeshCloud脉时云公有云架构师周宽
  本文介绍了如何将本地PostgreSQL集群迁移到GoogleCloud。此方法使用PgBouncer作为连接池程序,这可以最大限度地减少应用停机时间,并有助于设置用于监控结果的工具。本文的目标受众是在Linux环境中工作的PostgreSQL管理员和系统管理员。
  在下图中,PgBouncer实例位于本地主实例的前面。
  有了连接池,客户端便会在故障切换到GoogleCloud时路由到替代节点,而无需重新部署应用配置或进行应用级更改。
  下图演示了迁移过程。
  如需执行迁移,请关停当前主实例,然后将从属GoogleCloud副本提升为主实例。PgBouncer会将流量重新路由到GoogleCloud上的新主节点。一、目标在GoogleCloud中设置PostgreSQL。在ComputeEngine上设置复制功能。将数据播种(seed)至新实例。在GoogleCloud上设置PostgreSQL集群。切换到新服务器。实现监控功能。二、准备工作登录您的GoogleCloud帐号。选择或创建一个GoogleCloud项目。确保项目已启用结算功能。启用ComputeEngineAPI。GoogleCloud控制台启动CloudShell。
  本教程使用gcloud和gsutil命令,您可以在通过GoogleCloud控制台启动的CloudShell实例中运行这些命令。如果要在本地工作站上使用gcloud和gsutil,请安装GoogleCloudCLI。三、设置环境
  首先执行以下任务:在GoogleCloud中设置PostgreSQL。在ComputeEngine上设置复制功能。
  然后,在开始复制主实例之前,将数据播种到新实例。3。1在GoogleCloud中设置PostgreSQL
  请按照如何设置PostgreSQL以通过热备用模式实现高可用性和复制功能中所述的步骤操作,只需几分钟即可在GoogleCloud上设置好PostgreSQL。您可在ComputeEngine上的Ubuntu虚拟机实例中配置PostgreSQL。3。2在ComputeEngine上设置复制功能
  请按照如何在GoogleComputeEngine上设置PostgreSQL中所述的步骤配置PostgreSQL,使其在ComputeEngine上以热备用模式运行。您需要使用两个ComputeEngine实例。一个实例用于运行主PostgreSQL服务器,另一个实例用于运行备用服务器。
  尽管用于配置PostgreSQL的属性在主实例和从属实例之间有所不同,但属性文件应当相同,以便实现无缝故障切换。
  PostgreSQL集群中的从属实例通过recovery。conf文件的存在来表示。
  在大多数情况下,都有必要分离数据库的数据目录与启动磁盘。在本例中,数据库文件存储在database处装载的目录中。
  如需修改主实例上的postgresql。conf文件以设置复制功能,请使用以下命令:wallevelhotstandbyarchivemodeonarchivecommandtest!fpostgresqlarchivedirfcpppostgresqlarchivedirfmaxwalsenders3listenaddresseswalkeepsegments8
  如需修改副本上的postgresql。conf文件,请使用以下命令:hotstandbyonstandbymodeonprimaryconninfohost{PRIMARYIP}port5432userrepuser
  向副本发送Read请求可以减轻主实例的负载。3。3播种数据
  由于主数据库有事务日志限额,因此大多数PostgreSQL迁移都需要将数据种子设定为新实例,然后才能开始复制主实例。可通过以下某种方式播种数据:使用Pgdump将单个数据库转储为一个脚本或归档文件。使用Pgbasebackup获取正在运行的数据库集群的二进制副本。使用rsync将数据文件夹复制到副本。将旧备份恢复到副本。
  在上述方式中,推荐的方式是将旧备份恢复到副本。采用这种解决方案时,系统性能不会因传输数据量大而受到影响,并且当前集群仍能够继续正常运行。
  在数据库的初始种子设定完成之后,您可以使用rsync命令将更改馈送到执行备份后生成的副本;该命令会同步两个实例之间的数据目录。如果备份比主实例滞后太多,无法通过正常复制与之同步,那么这步操作非常重要。四、在GoogleCloud上设置PostgreSQL集群
  您可以使用级联复制功能创建PostgreSQL集群。首先迁移数据库,如下图所示。
  4。1迁移数据库从正在运行的主服务器获取完整备份(label可以是任何标签):echoselectpgstartbackup(label,true);sudosupostgrescpsqlsudotarcvfzpostgresqlAAAAMMDD。tar。gzPGDATA
  PGDATA是PostgreSQL的主数据目录。在GoogleCloud项目中创建一个名为gs:pgrepo的存储分区。将备份转移到刚刚创建的存储分区:mastergsutilcppostgresqlAAAAMMDD。tar。gzgs:pgrepo将备份文件转移到GoogleCloud主实例:newmastergsutilcpgs:pgrepopostgresqlAAAAMMDD。tar。gz将备份文件恢复到GoogleCloud主实例:newmaster(cd;tarxvfpostgresqlAAAAMMDD。tar。gz)在PGDATA目录中创建一个包含以下内容的recovery。conf文件:standbymodeonprimaryconninfoport5432host{runningmasterip}user{replicationuser}applicationnamecloudmastertriggerfiletmpfailover。postgresql。5432
  注意:triggerfile值可以采用任何名称,并且可以放在您指定的任何目录中。为便于记忆,此示例使用名称failover。postgresql。5432,该文件旨在对端口5432上运行的PostgreSQL强制进行故障切换。启动PostgreSQL服务:sudoservicepostgresqlstart等待GoogleCloud主服务器与正在运行的主实例同步。在日志中,您可以看到如下所示的内容:tailfvarlogpostgresqlpostgresqllog。。。2018092217:59:54UTCLOG:consistentrecoverystatereachedat0230000F02018092217:59:54UTCLOG:databasesystemisreadytoacceptreadonlyconnections。。。
  注意:0230000F0是pgxlogID。您的ID会有所不同。
  此外,您可以搜索masterpgstatreplication来确定新的从属实例(称为cloudmaster)是否已连接:postgresxExpandeddisplayison。postgresselectfrompgstatreplicationwhereapplicationnamecloudmaster;〔RECORD1〕pid16940usesysid16402usenamerepmgrapplicationnamecloudmaster。。。4。2创建从属数据库关停数据库和服务器:sudoservicepostgresqlstopsudoshutdownhnow如需验证服务已经停止,请运行以下命令:gcloudcomputeinstancesdescribemasterinstancenamegrepstatus
  在输出中,实例的状态将显示为TERMINATED:status:TERMINATED
  接下来,创建数据磁盘的快照以帮助创建新的从属实例。在GoogleCloudConsole中,转到快照页面。基于PostgreSQL磁盘新建一个快照。启动GoogleCloud主服务器。转到虚拟机实例页面,点击masterinstancename,然后点击启动。
  PostgreSQL服务即会自动启动。如需检查这一点,请运行以下命令:psaxgreppostgres
  结果应该类似如下所示:1398?S0:00usrlibpostgresql9。3binpostgresDvarlibpostgresql9。3maincconfigfileetcpostgresql9。3mainpostgresql。conf1454?Ss0:00postgres:checkpointerprocess1455?Ss0:00postgres:writerprocess1456?Ss0:00postgres:walwriterprocess1457?Ss0:00postgres:statscollectorprocess在GoogleCloud控制台中,转到虚拟机实例页面,然后点击创建实例。对于启动磁盘,选择Ubuntu14。04。点击管理、磁盘、网络、SSH密钥,然后根据您之前创建的快照添加新的磁盘。启动新服务器并装载该磁盘:sudomkdirdatabasesudomountdevsdb1database安装PostgreSQL:sudoaptgetinstallpostgresqlsudoservicepostgresqlstop配置数据目录和复制值。从GoogleCloud主实例中复制postgresql。conf文件和pghba。conf文件,然后修改recovery。conf文件以包含以下内容:standbymodeonprimaryconninfoport5432host{cloudmasterip}user{replicationuser}applicationnamecloudslave{identifier}recoverytargettimelinelatest使用新的配置文件启动PostgreSQL服务,使其指向GoogleCloud主实例:sudoservicepostgresqlrestart验证服务正在运行:psaxgreppostgres使用以下查询检查GoogleCloud主服务器:postgresxExpandeddisplayison。postgresselectfrompgstatreplicationwhereapplicationnamelikecloudslave;〔RECORD1〕pid2466usesysid16402usenamerepmgrapplicationnamecloudslave1。。。重复上述步骤来创建更多从属实例。五、切换到新服务器将PgBouncer中的配置文件更改为指向新的GoogleCloud主服务器。在PgBouncer实例中,关停PgBouncer,使用failover。postgresql。5432触发器文件提升新的主实例,然后重启PgBouncer:servicepgbouncerstop;ssh{cloudmasterip}touchtmpfailover。postgresql。5432;servicepgbouncerstart六、查询示例
  检查服务器上的所有并发连接数:selectfrompgstatactivity;
  (主实例)检查复制状态:selectfrompgstatreplication;
  (主实例)检查副本应用数据的延迟情况:selectpgxloglocationdiff(writelocation,replaylocation)frompgstatreplication;
  (主实例)检查复制的字节延迟情况:selectclienthostname,clientaddr,pgxloglocationdiff(pgstatreplication。sentlocation,pgstatreplication。replaylocation)ASbytelagfrompgstatreplication;
  (从属实例)检查数据库是否为副本:selectpgisinrecovery();
  (从属实例)检查上次从主实例接收的数据:selectpglastxlogreceivelocation();
  (从属实例)检查上次从主实例应用的数据:selectpglastxlogreplaylocation();
  (从属实例)检查复制延迟时间(以秒为单位):selectnow()pglastxactreplaytimestamp();

当你读懂蔡崇达的命运,就悟透了人生的三重境界2014年,作家蔡崇达推出了自己的第一部作品皮囊。这部书一经出版,就获得了刘德华韩寒白岩松等各界知名人士的力荐,至今销量已突破400万册。如今,时隔8年,他带着自己的第二部作品命运大蒜薄荷护肤霜竟然都跟修文物有关?大蒜薄荷齐上,黑科技修文物纪录片重生技呈现各种文物修复的黑科技,图为剧照。中央广播电视总台影视剧纪录片中心供图你知道吗,修文物,也有黑科技!拍X光照CT敷面膜沐浴都可能是修文物的方黑熊,出没工艺秘境陈建平熊大与熊二沈国雄五官端秀,肤色黝黑,性格既憨且拗,像动画片熊出没中熊大熊二的综合体,加以雄熊谐音,于是人称黑熊。谁能想到,这只黑熊老巢并非山林树洞,而是福建莆田沿海埭头镇后郑世界互联网大会黑科技惠及民生美好未来触手可及今天(11月11日)上午,2022年世界互联网大会乌镇峰会完成各项议程,胜利闭幕。大会期间共举办了20场分论坛,吸引了来自120个国家和地区约2100多位嘉宾线上线下参会,创历届峰外媒文章白金汉宫不那么光鲜的往事参考消息网11月11日报道西班牙辩论报网站10月16日发表题为白金汉宫不那么光鲜的另一面的文章,作者是费尔南多普拉多。全文摘编如下在我们今天看来,白金汉宫是英国君主制的具象物和核心伪复姓成了取名新风向,坑娃不说还容易有自卑感,父母需重视孩子的降生对每一个家庭来说都是一个十分重要的事情,每个家庭都是十分重视自己的孩子的,在他们还没有出生的时候,家长们就会为他们的名字而发动脑筋,为他们想给种各样名字。寓意着家长对他们幼儿消防安全知识有哪些?每年的11月9日是,11月是消防宣传月,今年的主题是抓消防安全,保高质量发展。安全大于天,特别是对于毫无自我保护能力的孩子来说,学习安全知识和技能是很重要的一件事!小孩子有着惊人的要二胎吗?完结另外在这给大家科普一下。关于牛奶蛋白过敏的孩子,有分轻度,中度和重度的。如果有,就分别要喝适度水解奶粉,深度水解奶粉,氨基酸奶粉。另外如果长期拉肚子,还有可能是乳糖不耐受,那在喝水2018年,女子怀孕7个月肚皮却薄得让人害怕,连医生都被吓了一跳读此文前,麻烦您点击一下关注,既方便您进行讨论与分享,又给您带来不一样的参与感,感谢您的支持。瘦小母亲冒险生下五胞胎,孩子们却接连发生意外,医生连夜实施抢救,但最小的孩子还是不幸夭1岁多宝宝查出恶性肿瘤,已脑转移!这些症状,家长一定要重视每一个孩子都是上天赐予的礼物,在家长的眼中孩子就像捧在手中的水晶球,每个家长都特别小心,不管是一场疾病还是一个意外,对一个家庭都是毁灭性的打击。最近,宁波1岁多宝宝查出恶性肿瘤,已最肮脏的6场体育赛事,韩日世界杯成足球之耻,中国队集体退赛文体育风云录编辑体育风云录要说哪个国家的体育精神最差?那估计所有人都会不约而同地回答韩国队!拔网线打假赛贿赂裁判,还有在比赛中下黑手提起韩国队在体育界犯下的罪行,那真是罄竹难书!就
心电监测堪比专业级didoE10SPRO智能手表轻体验云瑞将军图文版权声明图文均属原创,版权所有,未经许可或授权,禁止转载或引用。人生,就是在不断感受,不断体验,不断修行!感谢在这一路上给予我帮助的老师和朋友们。随着科技的发展,越来越双十二数码好物推荐一加手机华为耳机小米平板,哪款是你的菜?一年一度的双十一购物活动即将拉开帷幕,大家有没有物色到心仪的好物呢?对于数码产品来说,如果不是急着用的话,建议还是等到电商平台有活动的时候再入手会比较值当。而双十二就是今年最后的大西湖大学王涛今日JACS合成氨,实现Sabatier最佳值Sabatier原则定义了多相催化过程中成为理想催化剂的基本标准,接近Sabatier最佳值是催化剂设计的主要追求目标。HaberBosch(HB)工艺可以将氮气(N2)和氢气(H折扣店,能否成为未来零售主流?最近一段时间,折扣店成为了零售行业新热点。在社区,无数连锁折扣如雨后春笋般出现众多品牌资本家等商超品牌加入折扣混战。在经济下行的大环境下,折扣店正在以逆市的姿态出现在人们的眼前,虽新的欧盟规则可能意味着伦敦全球金融影响力的终结伦敦大本钟和威斯敏斯特桥上的交通作为其执行官周三提出的新金融市场规则的一部分,欧盟将要求银行监控其对票据交换所的敞口,并在该集团维持活跃的票据结算账户。欧盟委员会的提议旨在鼓励更多济南城市建设投资集团项目存在安全隐患济南城市建设投资集团有限公司成立于2011年9月30日,法定代表人为聂军,注册资本为745140万元人民币,企业地址位于济南市历下区经十东路10567号,所属行业为商务服务业,经营复牌首日年末妖王ST大集上演天地板,资金排队要出走?记者陈慧东编辑12月8日,所属供销社板块走低,当日复牌的ST大集(000564。SZ)一字涨停开盘,午间收盘时有102。2万手封单封死涨停,按早盘收盘价价估算,约合2。5亿元资金参定增资产重组A股上市房企频频出手视频加载中12月6日,绿地控股发布定增公告,公司拟向不超过35名特定投资者非公开发行股票。12月5日晚,金科股份冠城大通外高桥也发布公告称,拟向不超过35名特定投资者非公开发行股票重庆楼市按照现在的行情重庆房价是横盘还是上升,首套该怎么选我是雕叔,房地产从业15年,已为上千人提供买房解决方案,通晓业内门道,我不做所谓的专家,只用十五年的实战经验帮大家答疑解惑。以下为雕叔谈楼市公众号粉丝问答精选提问,请关注公众号提问国企改革三年行动港航集团主动出击多管齐下全面完成低效无效资产清退处置工作南方网讯(记者吴诗航见习记者蔡燕娣通讯员粤国资宣港航集团)港航集团作为广东省港航龙头企业,依托珠江黄金水道,优化整合港航资源,发挥水上运输特色,形成港口物流投资运营与管理及水上运输浅论团餐企业如何适应时代,实现多元发展?编者按目前团餐行业正处于高速发展与变换时期,如何认清趋势,把握方向,在竞争中立于不败之地,成为众多业内人士思考的问题。今天团餐君为大家分享这篇文章,作者从餐饮面临的整体大环境出发,
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网