
{"id":8310,"date":"2020-04-15T16:02:52","date_gmt":"2020-04-15T16:02:52","guid":{"rendered":"https:\/\/rax-stg-wp-aws.com\/blogs\/oracle-data-guard-far-sync-zero-data-loss\/"},"modified":"2026-11-03T19:29:33","modified_gmt":"2026-11-03T19:29:33","slug":"oracle-data-guard-far-sync-zero-data-loss","status":"publish","type":"blogs","link":"https:\/\/www.rackspace.com\/en-gb\/blogs\/oracle-data-guard-far-sync-zero-data-loss\/","title":{"rendered":"Oracle Data Guard Far Sync:- zero data loss"},"content":{"rendered":"<p><strong>Introduction<\/strong><\/p>\n<p>In this blog, I discuss an Oracle\u00ae for Data Guard feature, Far Sync.&nbsp;Oracle designed this new configuration to support synchronous redo transport&nbsp;between the primary and standby database, which are physically far apart. This&nbsp;technique in Oracle 12c ensures zero data loss and protection for primary&nbsp;databases located at any distance.<\/p>\n<p>The feature accepts a redo from a primary database and ships the redo to the standby.&nbsp;Because the Far Sync instance doesn\u2019t contain datafiles, you cannot open it as a&nbsp;primary or a standby in the future.&nbsp;The Far Sync instance minimizes impact on commit response time, reducing that&nbsp;time to an acceptable threshold value with higher data protection.<br \/>\n&nbsp;<\/p>\n<p><strong>&nbsp;Architecture<\/strong><\/p>\n<p>The following image shows a sample of Far Sync architecture:<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/blog_article_images\/26710-body-Picture1_1.png\" alt=\"oracle far sync pic 1\" \/><\/p>\n<p><a href=\"https:\/\/www.oracle.com\/technetwork\/database\/availability\/farsync-2267608.pdf\"><em>Image Source<\/em><\/a>&nbsp;<\/p>\n<p><strong>&nbsp;Configuration<\/strong><\/p>\n<p>To configure Far Sync, perform the following steps.<\/p>\n<p><strong>1. Create a Far Sync control file from a primary and copy it to the Far Sync server<\/strong><\/p>\n<p>Run the following code:<\/p>\n<p><em>&nbsp; &nbsp; ALTER DATABASE CREATE FAR SYNC INSTANCE CONTROLFILE AS \u2018\/home\/oracle\/farsync.ctl&#8217;;<\/em><\/p>\n<p><strong>&nbsp;2. Mount the Far Sync instance with the Far Sync control file you created<\/strong><\/p>\n<p>Select the Far Sync role by running the following code:<\/p>\n<p><em>&nbsp; &nbsp; SQL&gt; select database_role from v$database;<br \/>\n&nbsp; &nbsp; DATABASE_ROLE<br \/>\n&nbsp; &nbsp; \u2014\u2014\u2014\u2014\u2014-<br \/>\n&nbsp; &nbsp; FAR SYNC<\/em><\/p>\n<p><strong>&nbsp;3. Set parameters for the primary database<\/strong><\/p>\n<p>On the primary database, add the following parameters to the init file:<\/p>\n<p><em>&nbsp; &nbsp; LOG_ARCHIVE_CONFIG=&#8217;DG_CONFIG=(oraprimary,orafarsync,orastandby)&#8217; scope=both;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_2=&#8217;SERVICE=farsync SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orafarsync&#8217;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_1=&#8217;LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=oraprimary<\/em><\/p>\n<p><strong>&nbsp;4. Set parameters for Far Sync<\/strong><\/p>\n<p>In the Far Sync instance, add the following parameters to the init file:<\/p>\n<p><em>&nbsp; &nbsp; LOG_ARCHIVE_CONFIG=&#8217;DG_CONFIG=(primary,farsync,standby)&#8217;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_2=&#8217;SERVICE=standby ASYNC VALID_FOR=( STANDBY_LOGFILES,STANDBY_ROLE) DB_UNIQUE_NAME=orastandby&#8217;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_1=&#8217;LOCATION= USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orafarsync&#8217;<\/em><\/p>\n<p><strong>&nbsp;5. Set parameters for the standby database<\/strong><\/p>\n<p>On the standby database, add the following parameters to init file:<\/p>\n<p><em>&nbsp; &nbsp; LOG_ARCHIVE_CONFIG=&#8217;DG_CONFIG=(primary,farsync,standby)&#8217;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_2=&#8217;SERVICE=primary ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=oraprimary&#8217;<br \/>\n&nbsp; &nbsp; LOG_ARCHIVE_DEST_1=&#8217;LOCATION= USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orastandby&#8217;<\/em><\/p>\n<p><strong>Conclusion<\/strong><\/p>\n<p>The Far Sync feature helps to configure a zero-data-loss long-distance standby&nbsp;database for organizations. It also helps to overcome inhibitions and win the&nbsp;confidence of enterprises that think zero data loss can&#8217;t be real and worry&nbsp;about database performance.<\/p>\n<p>A Far Sync instance also offloads from the primary database the overhead of&nbsp;resolving gaps in the archived logs received by the remote standby database.&nbsp;The instance can conserve WAN bandwidth by performing redo transport compression&nbsp;without impacting primary database performance (off-host compression).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oracle Data Guard Far Sync:- zero data loss<\/p>\n","protected":false},"author":2,"featured_media":8312,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","format":"standard","meta":{"content-type":"","nid":"26710","content_type":"blog","created_by":"10130","authored_on":"2024-03-14T16:02:52+00:00","field_article_industries":"","tag_category":"Technical","field_blog_author_text":"by Vivek Dhiman. Oracle Database Administrator, Rackspace Technology ","seo_description":"Discover the benefits of Oracle Data Guard Far Sync feature for zero data loss and protection. Support synchronous redo transport.\r\n","field_featured_image":"","insights_image":"\/wp-content\/uploads\/2026\/blog_technical_images\/26710-insights_image-oracle-technical-blog-1-insights_0.jpg","field_partners":"Oracle","rxt_platforms":"Oracle","product":"","publisheddate":"2020-04-15T16:02:52","rxt_solutions":"Data, Databases","opengraph_tag":"","x_tag":"","teaser_flag":"Technical Blog","seo_titile":"Zero Data Loss with Oracle Data Guard Far Sync | Rackspace Technology","field_topics":"Data","field_slug":"oracle-data-guard-far-sync-zero-data-loss","footnotes":""},"categories":[178],"tags":[189,206,204],"class_list":["post-8310","blogs","type-blogs","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-data","tag-oracle","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/8310","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs"}],"about":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/types\/blogs"}],"author":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/comments?post=8310"}],"version-history":[{"count":3,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/8310\/revisions"}],"predecessor-version":[{"id":10030,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/blogs\/8310\/revisions\/10030"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/media\/8312"}],"wp:attachment":[{"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/media?parent=8310"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/categories?post=8310"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rackspace.com\/en-gb\/wp-json\/wp\/v2\/tags?post=8310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}