{"id":711,"date":"2024-08-20T08:00:00","date_gmt":"2024-08-20T13:00:00","guid":{"rendered":"https:\/\/www.sqltabletalk.com\/?p=711"},"modified":"2024-08-18T19:37:07","modified_gmt":"2024-08-19T00:37:07","slug":"ntegrating-ssisdb-sql-server-always-on-ag","status":"publish","type":"post","link":"https:\/\/www.sqltabletalk.com\/?p=711","title":{"rendered":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>Incorporating SQL Server Integration Services (SSIS) with Always On Availability Groups (AGs) is not just a routine task but a necessary one to ensure the robustness of your data integration workflows. While SSISDB plays a central role in managing SSIS projects, it doesn&#8217;t inherently align with the high availability features provided by AGs. This guide aims to bridge that gap, offering a detailed and practical approach to integrating SSISDB with Always On Availability Groups, tailored to the unique demands of this database.<\/p>\n<h3>Step 1: Understand SSISDB and Always On Availability Groups<\/h3>\n<p>SSISDB is the database that stores deployment and execution information for SSIS projects. By default, SSISDB is tightly coupled with the SQL Server instance where it\u2019s created. Unlike typical user databases, SSISDB does not natively support being part of an Always On Availability Group, requiring additional configuration steps to achieve high availability.<\/p>\n<h3>Step 2: Ensure Prerequisites are Met<\/h3>\n<p>Before proceeding, ensure that your environment meets all prerequisites for Always On Availability Groups. This includes verifying that your SQL Server instances are properly configured and that the necessary Always On features are enabled.<\/p>\n<h3>Step 3: Create the SSISDB Catalog on All Nodes<\/h3>\n<p>Create the SSISDB catalog on every node that will participate in the Availability Group. This step is essential as it generates the required server-level objects, such as cleanup jobs, keys, and accounts, necessary for SSIS functionality on each node. Connect to each node individually and create the SSISDB catalog.<\/p>\n<h3>Step 4: Remove SSISDB from Secondary Nodes<\/h3>\n<p>After the SSISDB catalog is created on all nodes, delete the SSISDB databases on the secondary nodes. This ensures there are no conflicts when adding SSISDB to the Availability Group.<\/p>\n<h3>Step 5: Create the Availability Group<\/h3>\n<p>Create an Availability Group and include SSISDB as a user database in the group. This step links SSISDB to the Availability Group, enabling it to benefit from the high availability features of the AG.<\/p>\n<h3>Step 6: Configure Secondary Replicas<\/h3>\n<p>When creating the Availability Group, configure the secondary replicas that will host the SSISDB database. Ensure that configurations such as failover mode and synchronization type are appropriately set according to your environment\u2019s requirements.<\/p>\n<h3>Step 7: Enable Always On Support for SSISDB<\/h3>\n<p>On the primary node, right-click the Integration Services Catalog and enable Always On support. This step ensures that SSISDB is fully integrated with the Availability Group, allowing it to function within a high availability environment.<\/p>\n<h3>Monitoring SSISDB After Integration<\/h3>\n<h4>SSIS Failover Monitor Job<\/h4>\n<p>After enabling Always On support for SSISDB, a new job called <em>SSIS Failover Monitor<\/em> is created. This job monitors the failover status of SSISDB within the Availability Group, ensuring that SSIS operations continue without interruption during failover events.<\/p>\n<h4>AlwaysOn_Support_State Table<\/h4>\n<p>The <code>alwayson_support_state<\/code> table in the SSISDB is automatically updated when a failover occurs, reflecting the new state of the server nodes. This table includes:<\/p>\n<table>\n<thead>\n<tr>\n<th>server_name<\/th>\n<th>state<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>VM2<\/td>\n<td>1<\/td>\n<\/tr>\n<tr>\n<td>VM3<\/td>\n<td>2<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>In this example, VM2 is the primary node (state = 1), and VM3 is the secondary node (state = 2). After a failover, the table might look like this:<\/p>\n<table>\n<thead>\n<tr>\n<th>server_name<\/th>\n<th>state<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>VM2<\/td>\n<td>2<\/td>\n<\/tr>\n<tr>\n<td>VM3<\/td>\n<td>1<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Handling Failovers and Error (15581)<\/h3>\n<p>During a failover, you may encounter error 15581 when attempting to run a package on the new primary node:<\/p>\n<p>\u201cPlease create a master key in the database or open the master key in the session before performing this operation.\u201d<\/p>\n<p>This error occurs due to SSISDB\u2019s encryption of sensitive information. To resolve it, the database master key needs to be re-encrypted by the service master key after the failover. Run the following T-SQL script to re-encrypt the master key:<\/p>\n<pre><code>USE SSISDB;\nOPEN MASTER KEY DECRYPTION BY PASSWORD = 'your_password'; -- Replace 'your_password' with the password used when creating SSISDB\nALTER MASTER KEY ADD ENCRYPTION BY SERVICE MASTER KEY;<\/code><\/pre>\n<p>Once re-encrypted, the new primary node will be able to run SSIS packages.<\/p>\n<h3>Recommendations: Avoid Auto-Seeding<\/h3>\n<p>When adding SSISDB to an Availability Group during the \u201cSelect Initial Data Synchronization\u201d step, choose \u201cFull database and log backup\u201d as the data synchronization preference instead of Automatic Seeding to avoid potential issues.<\/p>\n<h3>Key Considerations: Handling Updates and Patches<\/h3>\n<p>Using SSISDB with Always On introduces complexities, particularly when applying cumulative updates or service packs that modify the SSISDB schema. Consider the following:<\/p>\n<ul>\n<li><strong>SSISDB Patching Process<\/strong>: SSISDB patches are installed when the SQL Server instance starts up. However, if SSISDB is part of an Availability Group, it may be in an OFFLINE state at startup, causing the patching process to fail.<\/li>\n<li><strong>Mitigation Strategy<\/strong>: To successfully apply patches, first remove SSISDB from the Availability Group. After patching each node, recreate the Availability Group.<\/li>\n<\/ul>\n<h3>Conclusion<\/h3>\n<p>Successfully integrating SSISDB with SQL Server Always On Availability Groups involves more than just following standard procedures; it requires careful attention to the specific requirements and nuances of SSISDB. From setting up catalogs across nodes to handling the intricacies of failover scenarios, each step is crucial in maintaining the continuity and reliability of your SSIS operations. By implementing these strategies, you&#8217;ll not only achieve high availability but also ensure that your integration processes remain resilient in the face of system changes and updates.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Incorporating SQL Server Integration Services (SSIS) with Always On Availability Groups (AGs) is not just a routine task but a necessary one to ensure the robustness of your data integration workflows. While SSISDB plays a central role in managing SSIS projects, it doesn&#8217;t inherently align with the high availability features provided by AGs. This guide aims to bridge that gap, offering a detailed and practical approach to integrating SSISDB with Always On Availability Groups, tailored to the unique demands of this database.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[36,87,145,21],"tags":[191,239,42,131,146,237],"class_list":["post-711","post","type-post","status-publish","format-standard","hentry","category-availability-groups","category-etl","category-sql-server-integration-services","category-tutorial","tag-always-on-availability-groups","tag-failover","tag-high-availability","tag-sql-server","tag-sql-server-integration-services","tag-ssisdb"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk<\/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.sqltabletalk.com\/?p=711\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk\" \/>\n<meta property=\"og:description\" content=\"Incorporating SQL Server Integration Services (SSIS) with Always On Availability Groups (AGs) is not just a routine task but a necessary one to ensure the robustness of your data integration workflows. While SSISDB plays a central role in managing SSIS projects, it doesn&#039;t inherently align with the high availability features provided by AGs. This guide aims to bridge that gap, offering a detailed and practical approach to integrating SSISDB with Always On Availability Groups, tailored to the unique demands of this database.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqltabletalk.com\/?p=711\" \/>\n<meta property=\"og:site_name\" content=\"SQL Table Talk\" \/>\n<meta property=\"article:published_time\" content=\"2024-08-20T13:00:00+00:00\" \/>\n<meta name=\"author\" content=\"Yvonne Vanslageren\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yvonne Vanslageren\" \/>\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.sqltabletalk.com\/?p=711#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=711\"},\"author\":{\"name\":\"Yvonne Vanslageren\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/68bb31b454bafe9e139183ed4f3e9082\"},\"headline\":\"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide\",\"datePublished\":\"2024-08-20T13:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=711\"},\"wordCount\":818,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\"},\"keywords\":[\"Always On Availability Groups\",\"Failover\",\"High Availability\",\"SQL Server\",\"SQL Server Integration Services\",\"SSISDB\"],\"articleSection\":[\"Availability Groups\",\"ETL\",\"SQL Server Integration Services\",\"Tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.sqltabletalk.com\/?p=711#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=711\",\"url\":\"https:\/\/www.sqltabletalk.com\/?p=711\",\"name\":\"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#website\"},\"datePublished\":\"2024-08-20T13:00:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=711#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqltabletalk.com\/?p=711\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=711#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqltabletalk.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#website\",\"url\":\"https:\/\/www.sqltabletalk.com\/\",\"name\":\"SQL Table Talk\",\"description\":\"Breaking Down SQL Server, One Post at a Time.\",\"publisher\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqltabletalk.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\",\"name\":\"Stephen Planck\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g\",\"caption\":\"Stephen Planck\"},\"logo\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/\"},\"sameAs\":[\"https:\/\/dexterwiki.com\",\"https:\/\/www.linkedin.com\/in\/stephen-planck-4611b692?trk=people-guest_people_search-card&challengeId=AQErf8gbBmcVMwAAAYsyIsxO-0UvU8z7cHrBpZoo_n3xt9qEKpRN5B_jd_LmAMu-OfeArkQ7GDjobJ2uRoQQV35EQdh_rR6kxA&submissionId=09de7067-c335-8e17-40b8-8dc32b60ed6c&challengeSource=AgEcUCw35zpPmAAAAYsyI4vAWhJTV7Nt4vZYKc3V1qiDBpCkKgUvtlOBgYXcE84&challegeType=AgE_wZiTT09IAQAAAYsyI4vDmNvbZIYe6XHju5V2bXVvM3IVxnJslgY&memberId=AgESFTkUShzs_gAAAYsyI4vGYk0Gic1uc5kB6cKOABA26Gw&recognizeDevice=AgHdSZyUSI5CEwAAAYsyI4vKd_koF9JgpsCJShT8QfbK1QMiv8SI\",\"https:\/\/www.youtube.com\/linuxmate\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/68bb31b454bafe9e139183ed4f3e9082\",\"name\":\"Yvonne Vanslageren\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/22c274a7a354b81a0a8dc5b23e8e0be9bdd81a6bc0541474cfb6b954d6bb2089?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/22c274a7a354b81a0a8dc5b23e8e0be9bdd81a6bc0541474cfb6b954d6bb2089?s=96&d=mm&r=g\",\"caption\":\"Yvonne Vanslageren\"},\"url\":\"https:\/\/www.sqltabletalk.com\/?author=2\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk","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.sqltabletalk.com\/?p=711","og_locale":"en_US","og_type":"article","og_title":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk","og_description":"Incorporating SQL Server Integration Services (SSIS) with Always On Availability Groups (AGs) is not just a routine task but a necessary one to ensure the robustness of your data integration workflows. While SSISDB plays a central role in managing SSIS projects, it doesn't inherently align with the high availability features provided by AGs. This guide aims to bridge that gap, offering a detailed and practical approach to integrating SSISDB with Always On Availability Groups, tailored to the unique demands of this database.","og_url":"https:\/\/www.sqltabletalk.com\/?p=711","og_site_name":"SQL Table Talk","article_published_time":"2024-08-20T13:00:00+00:00","author":"Yvonne Vanslageren","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Yvonne Vanslageren","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.sqltabletalk.com\/?p=711#article","isPartOf":{"@id":"https:\/\/www.sqltabletalk.com\/?p=711"},"author":{"name":"Yvonne Vanslageren","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/68bb31b454bafe9e139183ed4f3e9082"},"headline":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide","datePublished":"2024-08-20T13:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.sqltabletalk.com\/?p=711"},"wordCount":818,"commentCount":0,"publisher":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0"},"keywords":["Always On Availability Groups","Failover","High Availability","SQL Server","SQL Server Integration Services","SSISDB"],"articleSection":["Availability Groups","ETL","SQL Server Integration Services","Tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.sqltabletalk.com\/?p=711#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.sqltabletalk.com\/?p=711","url":"https:\/\/www.sqltabletalk.com\/?p=711","name":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide - SQL Table Talk","isPartOf":{"@id":"https:\/\/www.sqltabletalk.com\/#website"},"datePublished":"2024-08-20T13:00:00+00:00","breadcrumb":{"@id":"https:\/\/www.sqltabletalk.com\/?p=711#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqltabletalk.com\/?p=711"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqltabletalk.com\/?p=711#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqltabletalk.com\/"},{"@type":"ListItem","position":2,"name":"Integrating SSISDB with SQL Server Always On Availability Groups: A Step-by-Step Guide"}]},{"@type":"WebSite","@id":"https:\/\/www.sqltabletalk.com\/#website","url":"https:\/\/www.sqltabletalk.com\/","name":"SQL Table Talk","description":"Breaking Down SQL Server, One Post at a Time.","publisher":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqltabletalk.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0","name":"Stephen Planck","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g","caption":"Stephen Planck"},"logo":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/"},"sameAs":["https:\/\/dexterwiki.com","https:\/\/www.linkedin.com\/in\/stephen-planck-4611b692?trk=people-guest_people_search-card&challengeId=AQErf8gbBmcVMwAAAYsyIsxO-0UvU8z7cHrBpZoo_n3xt9qEKpRN5B_jd_LmAMu-OfeArkQ7GDjobJ2uRoQQV35EQdh_rR6kxA&submissionId=09de7067-c335-8e17-40b8-8dc32b60ed6c&challengeSource=AgEcUCw35zpPmAAAAYsyI4vAWhJTV7Nt4vZYKc3V1qiDBpCkKgUvtlOBgYXcE84&challegeType=AgE_wZiTT09IAQAAAYsyI4vDmNvbZIYe6XHju5V2bXVvM3IVxnJslgY&memberId=AgESFTkUShzs_gAAAYsyI4vGYk0Gic1uc5kB6cKOABA26Gw&recognizeDevice=AgHdSZyUSI5CEwAAAYsyI4vKd_koF9JgpsCJShT8QfbK1QMiv8SI","https:\/\/www.youtube.com\/linuxmate"]},{"@type":"Person","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/68bb31b454bafe9e139183ed4f3e9082","name":"Yvonne Vanslageren","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/22c274a7a354b81a0a8dc5b23e8e0be9bdd81a6bc0541474cfb6b954d6bb2089?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/22c274a7a354b81a0a8dc5b23e8e0be9bdd81a6bc0541474cfb6b954d6bb2089?s=96&d=mm&r=g","caption":"Yvonne Vanslageren"},"url":"https:\/\/www.sqltabletalk.com\/?author=2"}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=711"}],"version-history":[{"count":6,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/711\/revisions"}],"predecessor-version":[{"id":720,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/711\/revisions\/720"}],"wp:attachment":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}