{"id":9025,"date":"2016-10-09T14:57:32","date_gmt":"2016-10-09T12:57:32","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/"},"modified":"2016-10-09T14:57:32","modified_gmt":"2016-10-09T12:57:32","slug":"how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/","title":{"rendered":"How to patch Postgres Plus Advanced Server in a Standby configuration"},"content":{"rendered":"<p>In the <a href=\"http:\/\/dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server\/\" target=\"_blank\" rel=\"noopener\">last post<\/a> we looked at how you can patch a Postgres Plus Advanced server. Wouldn&#8217;t it be nice, in a standby configuration, to patch the standby first without touching the master, then do a controlled switchover and finally patch the old master? In case this is a configuration with EDB Failover Manager the only downtime which would happen is the relocation of the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Virtual_IP_address\" target=\"_blank\" rel=\"noopener\">VIP<\/a> from one node to another (if you use a VIP). Without using a VIP but using <a href=\"http:\/\/www.pgpool.net\" target=\"_blank\" rel=\"noopener\">pgpool-II<\/a> the downtime is even less. Lets see if it works by starting from my usual <a href=\"http:\/\/dbi-services.com\/blog\/edb-failover-manager-2-1-two-new-features\/\" target=\"_blank\" rel=\"noopener\">EDB Failover Manager configuration<\/a>.<\/p>\n<p><!--more--><\/p>\n<p>This is the current status of my failover cluster:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\n[root@edbbart efm-2.1]# \/usr\/efm-2.1\/bin\/efm cluster-status efm\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.243       UP     UP        \n\tStandby     192.168.22.245       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.245\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.243       0\/4A000140       \n\tStandby     192.168.22.245       0\/4A000140       \n\n\tStandby database(s) in sync with master. It is safe to promote.\n<\/pre>\n<p>All is fine, I have one master, one standby and one witness. Going straight forward lets shutdown the standby (please notice that I have disabled auto failover):<\/p>\n<p>Shutdown the standby database:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [pg950] pg_ctl -D \/u02\/pgdata\/PGSITE2 stop -m fast\nwaiting for server to shut down.... done\nserver stopped\n<\/pre>\n<p>What happened to my cluster?<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\n[root@edbbart efm-2.1]# \/usr\/efm-2.1\/bin\/efm cluster-status efm\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.243       UP     UP        \n\tStandby     192.168.22.245       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.245\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.243       0\/4A000140       \n\tUnknown     192.168.22.245       UNKNOWN          Connection to 192.168.22.245:4445 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP\/IP connections.\n\n\tOne or more standby databases are not in sync with the master database.\n[root@edbbart efm-2.1]# \n<\/pre>\n<p>Not really surprising EFM complains that the standby is not reachable anymore. Thats fine. Lets patch the standby:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/u01\/app\/postgres\/software\/ [pg950] chmod +x postgresplusas-9.5.4.9-1-linux-x64.run\npostgres@edbppasstandby:\/u01\/app\/postgres\/software\/ [pg950] .\/postgresplusas-9.5.4.9-1-linux-x64.run --extract-only true --prefix \/u01\/app\/postgres\/product\/95\/db_1\/9.5AS\/\nLanguage Selection\n\nPlease select the installation language\n[1] English - English\n[2] Japanese - \u65e5\u672c\u8a9e\n[3] Simplified Chinese - \u7b80\u4f53\u4e2d\u6587\n[4] Traditional Chinese - \u7e41\u4f53\u4e2d\u6587\n[5] Korean - \ud55c\uad6d\uc5b4\nPlease choose an option [1] : 1\n----------------------------------------------------------------------------\nWelcome to the Postgres Plus Advanced Server Setup Wizard.\n\n----------------------------------------------------------------------------\nPlease specify the directory where Postgres Plus Advanced Server will be \ninstalled.\n\nInstallation Directory [\/u01\/app\/postgres\/product\/95\/db_1\/9.5AS]: \n\n----------------------------------------------------------------------------\nSetup is now ready to begin installing Postgres Plus Advanced Server on your \ncomputer.\n\nDo you want to continue? [Y\/n]: Y\n\n----------------------------------------------------------------------------\nPlease wait while Setup installs Postgres Plus Advanced Server on your computer.\n\n Installing Database Server\n 0% ______________ 50% ______________ 100%\n #########################################\n\n----------------------------------------------------------------------------\nSetup has finished installing Postgres Plus Advanced Server on your computer.\n\npostgres@edbppasstandby:\/u01\/app\/postgres\/software\/ [pg950] \n\n<\/pre>\n<p>&#8230; bring it up again:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [pg950] pg_ctl -D \/u02\/pgdata\/PGSITE2 start\nserver starting\n<\/pre>\n<p>&#8230; checking the PostgreSQL log file all is fine, streaming restarted:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\n2016-10-05 11:35:25.745 GMT - 2 - 4984 -  - @ LOG:  entering standby mode\n2016-10-05 11:35:25.751 GMT - 3 - 4984 -  - @ LOG:  consistent recovery state reached at 0\/4A000108\n2016-10-05 11:35:25.751 GMT - 4 - 4984 -  - @ LOG:  redo starts at 0\/4A000108\n2016-10-05 11:35:25.751 GMT - 5 - 4984 -  - @ LOG:  invalid record length at 0\/4A000140\n2016-10-05 11:35:25.751 GMT - 4 - 4982 -  - @ LOG:  database system is ready to accept read only connections\n2016-10-05 11:35:25.755 GMT - 1 - 4988 -  - @ LOG:  started streaming WAL from primary at 0\/4A000000 on timeline 8\n<\/pre>\n<p>What is the status of EFM?<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [pg950] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.243       UP     UP        \n\tIdle        192.168.22.245       UP     UNKNOWN   \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t(List is empty.)\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.243       0\/4A000140       \n\n\tNo standby databases were found.\n\nIdle Node Status (idle nodes ignored in XLog location comparisons):\n\n\tAddress              XLog Loc         Info\n\t--------------------------------------------------------------\n\t192.168.22.245       0\/4A000140       DB is in recovery.\n<\/pre>\n<p>Status &#8220;Idle&#8221; for the standby which is fine, just resume:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [pg950] sudo \/usr\/efm-2.1\/bin\/efm resume efm\nResume command successful on local agent.\npostgres@edbppasstandby:\/home\/postgres\/ [pg950] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tWitness     192.168.22.244       UP     N\/A       \n\tStandby     192.168.22.245       UP     UP        \n\tMaster      192.168.22.243       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.245\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.243       0\/4A000140       \n\tStandby     192.168.22.245       0\/4A000140       \n\n\tStandby database(s) in sync with master. It is safe to promote.\n<\/pre>\n<p>&#8230; and everything is back as it should be. Time to switchover:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] sudo \/usr\/efm-2.1\/bin\/efm promote efm -switchover\nPromote\/switchover command accepted by local agent. Proceeding with promotion and will reconfigure original master. Run the 'cluster-status' command for information about the new cluster state.\n<\/pre>\n<p>The master and the standby should have switched its roles:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.245       UP     UP        \n\tWitness     192.168.22.244       UP     N\/A       \n\tStandby     192.168.22.243       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.243\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.245       0\/4B0001A8       \n\tStandby     192.168.22.243       0\/4B0001A8       \n\n\tStandby database(s) in sync with master. It is safe to promote.\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] \n<\/pre>\n<p>Same procedure again, stop the standby:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppas:\/home\/postgres\/ [PGSITE1] pg_ctl -D \/u02\/pgdata\/PGSITE1 stop -m fast\nwaiting for server to shut down.... done\nserver stopped\n<\/pre>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tStandby     192.168.22.243       UP     UP        \n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.245       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.243\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.245       0\/4B0001A8       \n\tUnknown     192.168.22.243       UNKNOWN          Connection to 192.168.22.243:4445 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP\/IP connections.\n\n\tOne or more standby databases are not in sync with the master database.\n<\/pre>\n<p>Apply the patch:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppas:\/u01\/app\/postgres\/software\/ [PGSITE1] .\/postgresplusas-9.5.4.9-1-linux-x64.run --extract-only true --prefix \/u01\/app\/postgres\/product\/95\/db_1\/9.5AS\/\nLanguage Selection\n\nPlease select the installation language\n[1] English - English\n[2] Japanese - \u65e5\u672c\u8a9e\n[3] Simplified Chinese - \u7b80\u4f53\u4e2d\u6587\n[4] Traditional Chinese - \u7e41\u4f53\u4e2d\u6587\n[5] Korean - \ud55c\uad6d\uc5b4\nPlease choose an option [1] : 1\n----------------------------------------------------------------------------\nWelcome to the Postgres Plus Advanced Server Setup Wizard.\n\n----------------------------------------------------------------------------\nPlease specify the directory where Postgres Plus Advanced Server will be \ninstalled.\n\nInstallation Directory [\/u01\/app\/postgres\/product\/95\/db_1\/9.5AS]: \n\n----------------------------------------------------------------------------\nSetup is now ready to begin installing Postgres Plus Advanced Server on your \ncomputer.\n\nDo you want to continue? [Y\/n]: y\n\n----------------------------------------------------------------------------\nPlease wait while Setup installs Postgres Plus Advanced Server on your computer.\n\n Installing Database Server\n 0% ______________ 50% ______________ 100%\n #########################################\n\n----------------------------------------------------------------------------\nSetup has finished installing Postgres Plus Advanced Server on your computer.\n<\/pre>\n<p>Startup again:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppas:\/u01\/app\/postgres\/software\/ [PGSITE1] pg_ctl -D \/u02\/pgdata\/PGSITE1 start\nserver starting\n<\/pre>\n<p>Streaming restarted:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\n2016-10-05 11:45:36.807 GMT - 2 - 4883 -  - @ LOG:  entering standby mode\n2016-10-05 11:45:36.810 GMT - 3 - 4883 -  - @ LOG:  consistent recovery state reached at 0\/4B0000C8\n2016-10-05 11:45:36.810 GMT - 4 - 4883 -  - @ LOG:  redo starts at 0\/4B0000C8\n2016-10-05 11:45:36.810 GMT - 5 - 4883 -  - @ LOG:  invalid record length at 0\/4B0001A8\n2016-10-05 11:45:36.810 GMT - 4 - 4881 -  - @ LOG:  database system is ready to accept read only connections\n2016-10-05 11:45:36.815 GMT - 1 - 4887 -  - @ LOG:  started streaming WAL from primary at 0\/4B000000 on timeline 9\n<\/pre>\n<p>Same status &#8220;Idle&#8221; as before:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tIdle        192.168.22.243       UP     UNKNOWN   \n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.245       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t(List is empty.)\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.245       0\/4B0001A8       \n\n\tNo standby databases were found.\n\nIdle Node Status (idle nodes ignored in XLog location comparisons):\n\n\tAddress              XLog Loc         Info\n\t--------------------------------------------------------------\n\t192.168.22.243       0\/4B0001A8       DB is in recovery.\n<\/pre>\n<p>Resume:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppas:\/home\/postgres\/ [PGSITE1] sudo \/usr\/efm-2.1\/bin\/efm resume efm\nResume command successful on local agent.\n<\/pre>\n<p>Fully back:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres@edbppasstandby:\/home\/postgres\/ [PGSITE2] efmstat\nCluster Status: efm\nVIP: 192.168.22.250\nAutomatic failover is disabled.\n\n\tAgent Type  Address              Agent  DB       Info\n\t--------------------------------------------------------------\n\tStandby     192.168.22.243       UP     UP        \n\tWitness     192.168.22.244       UP     N\/A       \n\tMaster      192.168.22.245       UP     UP        \n\nAllowed node host list:\n\t192.168.22.244 192.168.22.245 192.168.22.243\n\nMembership coordinator: 192.168.22.245\n\nStandby priority host list:\n\t192.168.22.243\n\nPromote Status:\n\n\tDB Type     Address              XLog Loc         Info\n\t--------------------------------------------------------------\n\tMaster      192.168.22.245       0\/4B0001A8       \n\tStandby     192.168.22.243       0\/4B0001A8       \n\n\tStandby database(s) in sync with master. It is safe to promote.\n<\/pre>\n<p>Works like a charm. The organizational overhead is much more than what you actually need to do. Technically this is a task of a few minutes.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the last post we looked at how you can patch a Postgres Plus Advanced server. Wouldn&#8217;t it be nice, in a standby configuration, to patch the standby first without touching the master, then do a controlled switchover and finally patch the old master? In case this is a configuration with EDB Failover Manager the [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[713,155,77,238],"type_dbi":[],"class_list":["post-9025","post","type-post","status-publish","format-standard","hentry","category-database-administration-monitoring","tag-enterprisedb","tag-patching","tag-postgresql","tag-standby"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to patch Postgres Plus Advanced Server in a Standby configuration - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to patch Postgres Plus Advanced Server in a Standby configuration\" \/>\n<meta property=\"og:description\" content=\"In the last post we looked at how you can patch a Postgres Plus Advanced server. Wouldn&#8217;t it be nice, in a standby configuration, to patch the standby first without touching the master, then do a controlled switchover and finally patch the old master? In case this is a configuration with EDB Failover Manager the [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-09T12:57:32+00:00\" \/>\n<meta name=\"author\" content=\"Daniel Westermann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@westermanndanie\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Westermann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\"},\"author\":{\"name\":\"Daniel Westermann\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"headline\":\"How to patch Postgres Plus Advanced Server in a Standby configuration\",\"datePublished\":\"2016-10-09T12:57:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\"},\"wordCount\":275,\"commentCount\":0,\"keywords\":[\"enterprisedb\",\"Patching\",\"PostgreSQL\",\"Standby\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\",\"name\":\"How to patch Postgres Plus Advanced Server in a Standby configuration - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2016-10-09T12:57:32+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to patch Postgres Plus Advanced Server in a Standby configuration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\",\"name\":\"Daniel Westermann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"caption\":\"Daniel Westermann\"},\"description\":\"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.\",\"sameAs\":[\"https:\/\/x.com\/westermanndanie\"],\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/daniel-westermann\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to patch Postgres Plus Advanced Server in a Standby configuration - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/","og_locale":"en_US","og_type":"article","og_title":"How to patch Postgres Plus Advanced Server in a Standby configuration","og_description":"In the last post we looked at how you can patch a Postgres Plus Advanced server. Wouldn&#8217;t it be nice, in a standby configuration, to patch the standby first without touching the master, then do a controlled switchover and finally patch the old master? In case this is a configuration with EDB Failover Manager the [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/","og_site_name":"dbi Blog","article_published_time":"2016-10-09T12:57:32+00:00","author":"Daniel Westermann","twitter_card":"summary_large_image","twitter_creator":"@westermanndanie","twitter_misc":{"Written by":"Daniel Westermann","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/"},"author":{"name":"Daniel Westermann","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"headline":"How to patch Postgres Plus Advanced Server in a Standby configuration","datePublished":"2016-10-09T12:57:32+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/"},"wordCount":275,"commentCount":0,"keywords":["enterprisedb","Patching","PostgreSQL","Standby"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/","url":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/","name":"How to patch Postgres Plus Advanced Server in a Standby configuration - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2016-10-09T12:57:32+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/how-to-patch-postgres-plus-advanced-server-in-a-standby-configuration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to patch Postgres Plus Advanced Server in a Standby configuration"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66","name":"Daniel Westermann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","caption":"Daniel Westermann"},"description":"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.","sameAs":["https:\/\/x.com\/westermanndanie"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/daniel-westermann\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/9025","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=9025"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/9025\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=9025"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=9025"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=9025"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=9025"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}