{"id":7953,"date":"2016-05-19T14:40:33","date_gmt":"2016-05-19T12:40:33","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/"},"modified":"2016-05-19T14:40:33","modified_gmt":"2016-05-19T12:40:33","slug":"a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/","title":{"rendered":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate"},"content":{"rendered":"<p>In this post I&#8217;d like to share what we did for a customer who had the following requirements:<\/p>\n<ul>\n<li>Use <a href=\"http:\/\/www.oracle.com\/us\/products\/middleware\/data-integration\/goldengate\/overview\/index.html\" target=\"_blank\">Oracle GoldenGate<\/a><\/li>\n<li>Upgrade an Oracle 10.2.0.4 database running on Solaris 10 SPARC to Oracle 12.1.0.2 running on Exadata<\/li>\n<li>Keep the downtime as small as possible<\/li>\n<li>Minimize the impact on the production database as much as possible<\/li>\n<\/ul>\n<p>I will not describe why GoldenGate was the product of choice nor will I describe how we verified that Golgengate actually can be used for what we planned to do. That (maybe) will be the topic of another post.<\/p>\n<p><!--more--><\/p>\n<p>The staring point was (as always) that all the users are working on the production 10.2.0.4 database:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1.png\" alt=\"ogg_zero_downtime_1\" width=\"432\" height=\"326\" class=\"aligncenter size-full wp-image-8653\" \/><\/a><\/p>\n<p>The simplified solution would be to build a GoldenGate stream between the source and the target &#8230;<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_2.png\" alt=\"ogg_zero_downtime_2\" width=\"486\" height=\"647\" class=\"aligncenter size-full wp-image-8655\" \/><\/a><\/p>\n<p>&#8230; at the day of the go live switch the users &#8230; <\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_3.png\" alt=\"ogg_zero_downtime_3\" width=\"424\" height=\"317\" class=\"aligncenter size-full wp-image-8657\" \/><\/a><\/p>\n<p>&#8230; shutdown the GoldenGate stream and decommission the old database once everything is fine &#8230; ha!!!, easy, isn&#8217;t it?<\/p>\n<p>Well, is was not soooo easy as we had two very important constraints:<\/p>\n<ul>\n<li>We were not allowed to cause any additional load on the 10.2.0.4 production database<\/li>\n<li>We were not allowed to install anything on the 10.2.0.4 production database<\/li>\n<\/ul>\n<p>How can we do an <a href=\"docs.oracle.com\/goldengate\/1212\/gg-winux\/GWUAD\/wu_initsync.htm#GWUAD546\" target=\"_blank\">initial load<\/a> of the target database when we are not allowed to generate any additional load on the source? An expdp of a 4TB database for sure will cause load and we needed to do the export as fast as possible because:<\/p>\n<ul>\n<li><a href=\"http:\/\/docs.oracle.com\/goldengate\/1212\/gg-winux\/GWUAD\/wu_initsync.htm#GWUAD1009\" target=\"_blank\">expdp must be done with a flashback_scn for starting the replicat<\/a> at the target and because of this&#8230;<\/li>\n<li>we need to make sure that we have a high enough undo_retention and a big enough undo tablespace<\/li>\n<\/ul>\n<p>Short answer if we had asked to do the export directly on production:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_4.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_4.png\" alt=\"ogg_zero_downtime_4\" width=\"257\" height=\"248\" class=\"aligncenter size-full wp-image-8673\" \/><\/a><\/p>\n<p>What we did to offload the export from production is to build a DataGuard on another server so the picture now looks like this:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_5.png\" alt=\"ogg_zero_downtime_5\" width=\"946\" height=\"336\" class=\"aligncenter size-full wp-image-8684\" \/><\/a><\/p>\n<p>Wait, can you do a expdp on a 10.2.0.4 standby database? No. So what we had to do is to create a guaranteed restore point, break the DataGuard, do the export as fast as possible and then re-synchronize the standby database. The re-synchronization was essential because we wanted to do the same thing over and over again if we&#8217;d need to fix issues and do a fresh initial load. Btw: the export was done to a NFS share which was mounted to the standby system, the production system and the target system:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_6.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_6.png\" alt=\"ogg_zero_downtime_6\" width=\"941\" height=\"639\" class=\"aligncenter size-full wp-image-8687\" \/><\/a><\/p>\n<p>From the same NFS we were able to initially load the target database:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_7.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_7.png\" alt=\"ogg_zero_downtime_7\" width=\"974\" height=\"649\" class=\"aligncenter size-full wp-image-8689\" \/><\/a><\/p>\n<p>Wait, isn&#8217;t there something missing? Yes. Of course we started the GoldenGate extracts on the source before we started the export on the standby server:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_8.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_8.png\" alt=\"ogg_zero_downtime_8\" width=\"938\" height=\"628\" class=\"aligncenter size-full wp-image-8691\" \/><\/a><\/p>\n<p>Didn&#8217;t I say we were not allowed to install anything on the source? So the picture above is not right. What we did instead is to let the source send the archived logs to another destination which is on the same NFS share:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_9.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_9.png\" alt=\"ogg_zero_downtime_9\" width=\"961\" height=\"626\" class=\"aligncenter size-full wp-image-8693\" \/><\/a><\/p>\n<p>Having the archived redo logs available on the NFS we installed GoldenGate on the standby system having it read the archived logs from there and then pump the extracts to the target:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_101.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_101.png\" alt=\"ogg_zero_downtime_10\" width=\"963\" height=\"618\" class=\"aligncenter size-full wp-image-8749\" \/><\/a><\/p>\n<p>The last remaining bit was to setup GoldenGate on the target and let it replicate the OGG pumps which come from the standby system:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_111.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_111.png\" alt=\"ogg_zero_downtime_11\" width=\"951\" height=\"653\" class=\"aligncenter size-full wp-image-8750\" \/><\/a><\/p>\n<p>On the day of the go live the users\/application switched and everybody is happy:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_14.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_14.png\" alt=\"ogg_zero_downtime_14\" width=\"441\" height=\"375\" class=\"aligncenter size-full wp-image-8754\" \/><\/a><\/p>\n<p>Really? How can we recover from that if for whatever reason the users\/applications must be switched back? This is not an issue if nothing happens on the target database but usually for deciding on a go\/no modifications do occur. Restoring the database was not an option as it would have been too time consuming so we did this:<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_121.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_121.png\" alt=\"ogg_zero_downtime_121\" width=\"535\" height=\"672\" class=\"aligncenter size-full wp-image-8751\" \/><\/a><\/p>\n<p>When the application was shutdown on the old production database but before it was brought only on the new target database we switched the streams. From now on the new system was replicating to the old system and we had a safe way back.<\/p>\n<p>I know many technical details are missing here but this was not the scope of this post. The scope was to outline a way to do a almost zero downtime migration using Oracle GoldenGate with minimal impact on the source database and the possibility to switch back to the old system if required. Hope this helps &#8230;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this post I&#8217;d like to share what we did for a customer who had the following requirements: Use Oracle GoldenGate Upgrade an Oracle 10.2.0.4 database running on Solaris 10 SPARC to Oracle 12.1.0.2 running on Exadata Keep the downtime as small as possible Minimize the impact on the production database as much as possible [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":7967,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[838,301,219],"type_dbi":[],"class_list":["post-7953","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","tag-goldeng","tag-replication","tag-upgrade"],"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>A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate - 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\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate\" \/>\n<meta property=\"og:description\" content=\"In this post I&#8217;d like to share what we did for a customer who had the following requirements: Use Oracle GoldenGate Upgrade an Oracle 10.2.0.4 database running on Solaris 10 SPARC to Oracle 12.1.0.2 running on Exadata Keep the downtime as small as possible Minimize the impact on the production database as much as possible [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-05-19T12:40:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"432\" \/>\n\t<meta property=\"og:image:height\" content=\"326\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\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=\"4 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\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\"},\"author\":{\"name\":\"Daniel Westermann\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"headline\":\"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate\",\"datePublished\":\"2016-05-19T12:40:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\"},\"wordCount\":730,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png\",\"keywords\":[\"GoldenG\",\"Replication\",\"Upgrade\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\",\"name\":\"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png\",\"datePublished\":\"2016-05-19T12:40:33+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png\",\"width\":432,\"height\":326},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate\"}]},{\"@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":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate - 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\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/","og_locale":"en_US","og_type":"article","og_title":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate","og_description":"In this post I&#8217;d like to share what we did for a customer who had the following requirements: Use Oracle GoldenGate Upgrade an Oracle 10.2.0.4 database running on Solaris 10 SPARC to Oracle 12.1.0.2 running on Exadata Keep the downtime as small as possible Minimize the impact on the production database as much as possible [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/","og_site_name":"dbi Blog","article_published_time":"2016-05-19T12:40:33+00:00","og_image":[{"width":432,"height":326,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png","type":"image\/png"}],"author":"Daniel Westermann","twitter_card":"summary_large_image","twitter_creator":"@westermanndanie","twitter_misc":{"Written by":"Daniel Westermann","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/"},"author":{"name":"Daniel Westermann","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"headline":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate","datePublished":"2016-05-19T12:40:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/"},"wordCount":730,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png","keywords":["GoldenG","Replication","Upgrade"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/","url":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/","name":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png","datePublished":"2016-05-19T12:40:33+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/ogg_zero_downtime_1-1.png","width":432,"height":326},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/a-near-zero-downtime-near-zero-impact-major-release-upgrade-using-oracle-goldengate\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"A near zero downtime, near zero impact major release upgrade using Oracle GoldenGate"}]},{"@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\/7953","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=7953"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/7953\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/7967"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=7953"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=7953"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=7953"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=7953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}