<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Qlik Replicate and SQL Server AG HA Handling in Official Support Articles</title>
    <link>https://community.qlik.com/t5/Official-Support-Articles/Qlik-Replicate-and-SQL-Server-AG-HA-Handling/ta-p/2156786</link>
    <description>&lt;P&gt;When dealing with &lt;STRONG&gt;&lt;FONT color="#339966"&gt;SQL Server Availability Groups&lt;/FONT&gt;&lt;/STRONG&gt; and how &lt;STRONG&gt;&lt;FONT color="#339966"&gt;Qlik Replicate&lt;/FONT&gt;&lt;/STRONG&gt; can interact with it there can be significant challenges.&lt;/P&gt;
&lt;P&gt;By default, you specify the AG Listener and Qlik Replicate will read the backup information from the MSDB on the primary replica and then each secondary replica until the backup is found that contains the LSN that it is looking for.&lt;/P&gt;
&lt;P&gt;There are situations where a secondary may not be setup for read access such as when it is kept in a down state to save on license costs. In this situation you can use a SQL Server Client alias to redirect the down replica back to the listener.&lt;/P&gt;
&lt;P&gt;Qlik Replicate can be configured to connect to only the primary replica via the listener by using the internal parameter ‘AlwaysOnSharedSynchedBackupIsEnabled’ (&lt;A href="https://community.qlik.com/t5/Official-Support-Articles/Qlik-Replicate-How-to-set-Internal-Parameters-and-what-are-they/ta-p/2036183" target="_blank" rel="noopener"&gt;Qlik Replicate: How to set Internal Parameters and what are they for?&lt;/A&gt;). This forces Qlik Replicate to treat the primary replica as a regular standalone SQL Server instance and will not try to connect to the secondary replicas.&lt;/P&gt;
&lt;P&gt;Using the above internal parameter comes with its own issues. Namely if the transaction log backup is performed on a secondary replica the primary replica will not have the information in the MSDB for the backups being done. This is a deficiency in the SQL Server Availability Group environment where the information about backups are not synchronized.&lt;/P&gt;
&lt;P&gt;As the internal name implies (AlwaysOnSharedSynchedBackupIsEnabled) it expects the backup information to be synchronized between the replicas. To accomplish this you must register the backup on the other replicas after it is performed. A simple way to do this is to run a script on the replica where the backup is being done that registers the backup information on the other replicas. See appendix A below for an example of the script.&lt;/P&gt;
&lt;P&gt;In situations where a replica is not up and available to register a backup then you can register all backups located in a directory when the replica becomes available. See appendix B below for an example of that script.&lt;/P&gt;
&lt;H2&gt;Appendix A&lt;/H2&gt;
&lt;P&gt;As per attached file&amp;nbsp;Appendix A.txt&lt;/P&gt;
&lt;H2&gt;Appendix B&lt;/H2&gt;
&lt;P&gt;As per attached file&amp;nbsp;Appendix B.txt&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H4&gt;&lt;FONT color="#339966"&gt;&lt;STRONG&gt;Environment&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H4&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;LI-PRODUCT title="Qlik Replicate" id="qlikReplicate"&gt;&lt;/LI-PRODUCT&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 29 Dec 2023 15:57:29 GMT</pubDate>
    <dc:creator>shashi_holla</dc:creator>
    <dc:date>2023-12-29T15:57:29Z</dc:date>
    <item>
      <title>Qlik Replicate and SQL Server AG HA Handling</title>
      <link>https://community.qlik.com/t5/Official-Support-Articles/Qlik-Replicate-and-SQL-Server-AG-HA-Handling/ta-p/2156786</link>
      <description>&lt;P&gt;When dealing with &lt;STRONG&gt;&lt;FONT color="#339966"&gt;SQL Server Availability Groups&lt;/FONT&gt;&lt;/STRONG&gt; and how &lt;STRONG&gt;&lt;FONT color="#339966"&gt;Qlik Replicate&lt;/FONT&gt;&lt;/STRONG&gt; can interact with it there can be significant challenges.&lt;/P&gt;
&lt;P&gt;By default, you specify the AG Listener and Qlik Replicate will read the backup information from the MSDB on the primary replica and then each secondary replica until the backup is found that contains the LSN that it is looking for.&lt;/P&gt;
&lt;P&gt;There are situations where a secondary may not be setup for read access such as when it is kept in a down state to save on license costs. In this situation you can use a SQL Server Client alias to redirect the down replica back to the listener.&lt;/P&gt;
&lt;P&gt;Qlik Replicate can be configured to connect to only the primary replica via the listener by using the internal parameter ‘AlwaysOnSharedSynchedBackupIsEnabled’ (&lt;A href="https://community.qlik.com/t5/Official-Support-Articles/Qlik-Replicate-How-to-set-Internal-Parameters-and-what-are-they/ta-p/2036183" target="_blank" rel="noopener"&gt;Qlik Replicate: How to set Internal Parameters and what are they for?&lt;/A&gt;). This forces Qlik Replicate to treat the primary replica as a regular standalone SQL Server instance and will not try to connect to the secondary replicas.&lt;/P&gt;
&lt;P&gt;Using the above internal parameter comes with its own issues. Namely if the transaction log backup is performed on a secondary replica the primary replica will not have the information in the MSDB for the backups being done. This is a deficiency in the SQL Server Availability Group environment where the information about backups are not synchronized.&lt;/P&gt;
&lt;P&gt;As the internal name implies (AlwaysOnSharedSynchedBackupIsEnabled) it expects the backup information to be synchronized between the replicas. To accomplish this you must register the backup on the other replicas after it is performed. A simple way to do this is to run a script on the replica where the backup is being done that registers the backup information on the other replicas. See appendix A below for an example of the script.&lt;/P&gt;
&lt;P&gt;In situations where a replica is not up and available to register a backup then you can register all backups located in a directory when the replica becomes available. See appendix B below for an example of that script.&lt;/P&gt;
&lt;H2&gt;Appendix A&lt;/H2&gt;
&lt;P&gt;As per attached file&amp;nbsp;Appendix A.txt&lt;/P&gt;
&lt;H2&gt;Appendix B&lt;/H2&gt;
&lt;P&gt;As per attached file&amp;nbsp;Appendix B.txt&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H4&gt;&lt;FONT color="#339966"&gt;&lt;STRONG&gt;Environment&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/H4&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;LI-PRODUCT title="Qlik Replicate" id="qlikReplicate"&gt;&lt;/LI-PRODUCT&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 29 Dec 2023 15:57:29 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Official-Support-Articles/Qlik-Replicate-and-SQL-Server-AG-HA-Handling/ta-p/2156786</guid>
      <dc:creator>shashi_holla</dc:creator>
      <dc:date>2023-12-29T15:57:29Z</dc:date>
    </item>
  </channel>
</rss>

